[PATCH] : ir249_irnet_disc_ind.diff

From: Jean Tourrilhes (jt@bougret.hpl.hp.com)
Date: Tue Mar 05 2002 - 20:52:33 EST


ir249_irnet_disc_ind.diff :
-------------------------
        o [CORRECT] Fix IrNET disconnection to not reconnect but
          instead to hangup pppd

diff -u -p linux/net/irda/irnet/irnet.d4.h linux/net/irda/irnet/irnet.h
--- linux/net/irda/irnet/irnet.d4.h Tue Mar 5 16:05:20 2002
+++ linux/net/irda/irnet/irnet.h Tue Mar 5 16:43:09 2002
@@ -206,6 +206,11 @@
  * just after clearing it. *blush*.
  * o Use newly created irttp_listen() to fix potential crash when LAP
  * destroyed before irnet module removed.
+ *
+ * v10 - 4.3.2 - Jean II
+ * o When receiving a disconnect indication, don't reenable the
+ * PPP Tx queue, this will trigger a reconnect. Instead, close
+ * the channel, which will kill pppd...
  */
 
 /***************************** INCLUDES *****************************/
diff -u -p linux/net/irda/irnet/irnet_irda.d4.c linux/net/irda/irnet/irnet_irda.c
--- linux/net/irda/irnet/irnet_irda.d4.c Tue Mar 5 16:05:30 2002
+++ linux/net/irda/irnet/irnet_irda.c Tue Mar 5 16:43:09 2002
@@ -1122,9 +1122,10 @@ irnet_disconnect_indication(void * insta
       irttp_close_tsap(self->tsap);
       self->tsap = NULL;
 
- /* Flush (drain) ppp_generic Tx queue (most often we have blocked it) */
+ /* Cleanup & close the PPP channel, which will kill pppd and the rest */
       if(self->ppp_open)
- ppp_output_wakeup(&self->chan);
+ ppp_unregister_channel(&self->chan);
+ self->ppp_open = 0;
     }
   /* Cleanup the socket in case we want to reconnect */
   self->stsap_sel = 0;
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Thu Mar 07 2002 - 21:00:51 EST