freebsd-dev/sys/netgraph
Maksim Yevmenkin 48bd0712bc Make sure RFCOMM multiplexor channel does not hang in DISCONNECTING
state. Apparently it happens when both devices try to disconnect RFCOMM
multiplexor channel at the same time.

The scenario is as follows:

- local device initiates RFCOMM connection to the remote device. This
  creates both RFCOMM multiplexor channel and data channel;

- remote device terminates RFCOMM data channel (inactivity timeout);

- local device acknowledges RFCOMM data channel termination. Because
  there is no more active data channels and local device has initiated
  connection it terminates RFCOMM multiplexor channel;

- remote device does not acknowledges RFCOMM multiplexor channel
  termination. Instead it sends its own request to terminate RFCOMM
  multiplexor channel. Even though local device acknowledges RFCOMM
  multiplexor channel termination the remote device still keeps
  L2CAP connection open.

Because of hanging RFCOMM multiplexor channel subsequent RFCOMM
connections between local and remote devices will fail.

Reported by:	Johann Hugo <jhugo@icomtek.csir.co.za>
2004-04-23 20:21:17 +00:00
..
atm Get rid of the old *LEN constants in favour of the new *SIZ constants 2004-01-26 14:57:49 +00:00
bluetooth Make sure RFCOMM multiplexor channel does not hang in DISCONNECTING 2004-04-23 20:21:17 +00:00
netgraph.h Get rid of the deprecated *LEN constants and use the new *SIZ 2004-01-26 12:24:07 +00:00
ng_async.c
ng_async.h Use a single style of multiple inclusion protection for Netgraph headers. 2003-11-11 12:30:37 +00:00
ng_atmllc.c Add a netgraph node to handle ATM LLC encapsulation. This currently handles 2004-03-08 10:54:35 +00:00
ng_atmllc.h Add a netgraph node to handle ATM LLC encapsulation. This currently handles 2004-03-08 10:54:35 +00:00
ng_base.c Get rid of the deprecated *LEN constants in favour of the new 2004-01-26 14:05:31 +00:00
ng_bpf.c
ng_bpf.h Get rid of the deprecated *LEN constants in favour of the new 2004-01-26 14:05:31 +00:00
ng_bridge.c Get rid of the deprecated *LEN constants in favour of the new 2004-01-26 14:05:31 +00:00
ng_bridge.h
ng_cisco.c Simplify timing gymnastics a bit. 2004-01-21 19:20:57 +00:00
ng_cisco.h Use a single style of multiple inclusion protection for Netgraph headers. 2003-11-11 12:30:37 +00:00
ng_device.c Device megapatch 4/6: 2004-02-21 21:10:55 +00:00
ng_device.h Use a single style of multiple inclusion protection for Netgraph headers. 2003-11-11 12:30:37 +00:00
ng_echo.c
ng_echo.h Use a single style of multiple inclusion protection for Netgraph headers. 2003-11-11 12:30:37 +00:00
ng_eiface.c + rename and document an unused field in struct arpcom (field is still 2004-04-18 01:15:32 +00:00
ng_eiface.h Use the (now standard) Ethernet address parse type. 2003-12-17 13:03:32 +00:00
ng_etf.c Fixed panic on hook disconnection that previous revision has introduced. 2003-12-19 15:09:12 +00:00
ng_etf.h Get rid of the deprecated *LEN constants in favour of the new 2004-01-26 14:05:31 +00:00
ng_ether.c + rename and document an unused field in struct arpcom (field is still 2004-04-18 01:15:32 +00:00
ng_ether.h Backout previous change, it breaks build and it is not needed 2004-02-20 08:26:27 +00:00
ng_fec.c Consistently use ifaddr_byindex() to access the link-level address 2004-04-16 08:15:37 +00:00
ng_fec.h Use a single style of multiple inclusion protection for Netgraph headers. 2003-11-11 12:30:37 +00:00
ng_frame_relay.c Back out M_* changes, per decision of the TRB. 2003-02-19 05:47:46 +00:00
ng_frame_relay.h Use a single style of multiple inclusion protection for Netgraph headers. 2003-11-11 12:30:37 +00:00
ng_gif_demux.c Finish driving a stake through the heart of netns and the associated 2003-03-05 19:24:24 +00:00
ng_gif_demux.h Finish driving a stake through the heart of netns and the associated 2003-03-05 19:24:24 +00:00
ng_gif.c Unconst. Somebody didn't compile LINT. 2004-02-24 22:16:40 +00:00
ng_gif.h
ng_hole.c
ng_hole.h Use a single style of multiple inclusion protection for Netgraph headers. 2003-11-11 12:30:37 +00:00
ng_hub.c Don't give up if sending to one link fails, continue. 2004-04-17 23:52:57 +00:00
ng_hub.h A simple packet distribution node type that acts like an Ethernet hub. 2004-04-17 12:42:17 +00:00
ng_iface.c Implemented the "getifindex" control message. 2004-03-07 23:00:44 +00:00
ng_iface.h Implemented the "getifindex" control message. 2004-03-07 23:00:44 +00:00
ng_ip_input.c Update netisr handling; Each SWI now registers its queue, and all queue 2003-03-04 23:19:55 +00:00
ng_ip_input.h Use a single style of multiple inclusion protection for Netgraph headers. 2003-11-11 12:30:37 +00:00
ng_ksocket.c Get rid of the deprecated *LEN constants in favour of the new 2004-01-26 14:05:31 +00:00
ng_ksocket.h Use a single style of multiple inclusion protection for Netgraph headers. 2003-11-11 12:30:37 +00:00
ng_l2tp.c Rename internal structure to fix cut & paste error. 2004-04-04 21:33:09 +00:00
ng_l2tp.h Use a single style of multiple inclusion protection for Netgraph headers. 2003-11-11 12:30:37 +00:00
ng_lmi.c Back out M_* changes, per decision of the TRB. 2003-02-19 05:47:46 +00:00
ng_lmi.h Use a single style of multiple inclusion protection for Netgraph headers. 2003-11-11 12:30:37 +00:00
ng_message.h Get rid of the deprecated *LEN constants in favour of the new 2004-01-26 14:05:31 +00:00
ng_mppc.c Take the rc4 code out of ng_mppc module so we don't fail to load when 2003-02-05 19:11:11 +00:00
ng_mppc.h Use a single style of multiple inclusion protection for Netgraph headers. 2003-11-11 12:30:37 +00:00
ng_one2many.c Backout previous change, it breaks build and it is not needed 2004-02-20 08:26:27 +00:00
ng_one2many.h Backout previous change, it breaks build and it is not needed 2004-02-20 08:26:27 +00:00
ng_parse.c Get rid of the deprecated *LEN constants in favour of the new 2004-01-26 14:05:31 +00:00
ng_parse.h Get rid of the deprecated *LEN constants in favour of the new 2004-01-26 14:05:31 +00:00
ng_ppp.c Deprecate machine/limits.h in favor of new sys/limits.h. 2003-04-29 13:36:06 +00:00
ng_ppp.h Use a single style of multiple inclusion protection for Netgraph headers. 2003-11-11 12:30:37 +00:00
ng_pppoe.c Get rid of the deprecated *LEN constants in favour of the new 2004-01-26 14:05:31 +00:00
ng_pppoe.h Make the vaule of PTT_RELAY_SID match the RFC. This should help PPPoE 2004-03-18 12:34:14 +00:00
ng_pptpgre.c Lower the maximum ACK timeout for GRE packets from 10 to 1 second. 2003-11-18 20:43:23 +00:00
ng_pptpgre.h Use a single style of multiple inclusion protection for Netgraph headers. 2003-11-11 12:30:37 +00:00
ng_rfc1490.c Add an "ethernet" hook to the rfc1490 netgraph module. It will send 2004-01-14 00:39:28 +00:00
ng_rfc1490.h Add an "ethernet" hook to the rfc1490 netgraph module. It will send 2004-01-14 00:39:28 +00:00
ng_sample.c
ng_sample.h Use a single style of multiple inclusion protection for Netgraph headers. 2003-11-11 12:30:37 +00:00
ng_socket.c Correct the description of the net.graph.recvspace sysctl. 2004-01-27 22:02:01 +00:00
ng_socket.h Use a single style of multiple inclusion protection for Netgraph headers. 2003-11-11 12:30:37 +00:00
ng_socketvar.h Use a single style of multiple inclusion protection for Netgraph headers. 2003-11-11 12:30:37 +00:00
ng_source.c Use the official ng_timeout function to trigger sending. This means, 2004-01-30 15:34:57 +00:00
ng_source.h Define the new command NGM_SOURCE_START_NOW to allow generation of 2004-01-26 14:54:39 +00:00
ng_split.c
ng_split.h Use a single style of multiple inclusion protection for Netgraph headers. 2003-11-11 12:30:37 +00:00
ng_sppp.c sppp (4) to netgraph (4) node. As always: I'l connect it to the 2004-03-24 17:24:01 +00:00
ng_sppp.h sppp (4) to netgraph (4) node. As always: I'l connect it to the 2004-03-24 17:24:01 +00:00
ng_tee.c Don't duplicate a packet, just to throw it away when we discover the 2004-03-24 08:53:45 +00:00
ng_tee.h Use a single style of multiple inclusion protection for Netgraph headers. 2003-11-11 12:30:37 +00:00
ng_tty.c Back out M_* changes, per decision of the TRB. 2003-02-19 05:47:46 +00:00
ng_tty.h Use a single style of multiple inclusion protection for Netgraph headers. 2003-11-11 12:30:37 +00:00
ng_UI.c Back out M_* changes, per decision of the TRB. 2003-02-19 05:47:46 +00:00
ng_UI.h Use a single style of multiple inclusion protection for Netgraph headers. 2003-11-11 12:30:37 +00:00
ng_vjc.c Back out M_* changes, per decision of the TRB. 2003-02-19 05:47:46 +00:00
ng_vjc.h Use a single style of multiple inclusion protection for Netgraph headers. 2003-11-11 12:30:37 +00:00
ng_vlan.c Netgraph node type for IEEE 802.1Q VLAN tagging. 2004-03-01 17:22:16 +00:00
ng_vlan.h Netgraph node type for IEEE 802.1Q VLAN tagging. 2004-03-01 17:22:16 +00:00
NOTES