freebsd-nq/sys/netgraph
Seigo Tanimura 243917fe3b Lock down a socket, milestone 1.
o Add a mutex (sb_mtx) to struct sockbuf. This protects the data in a
  socket buffer. The mutex in the receive buffer also protects the data
  in struct socket.

o Determine the lock strategy for each members in struct socket.

o Lock down the following members:

  - so_count
  - so_options
  - so_linger
  - so_state

o Remove *_locked() socket APIs.  Make the following socket APIs
  touching the members above now require a locked socket:

 - sodisconnect()
 - soisconnected()
 - soisconnecting()
 - soisdisconnected()
 - soisdisconnecting()
 - sofree()
 - soref()
 - sorele()
 - sorwakeup()
 - sotryfree()
 - sowakeup()
 - sowwakeup()

Reviewed by:	alfred
2002-05-20 05:41:09 +00:00
..
netgraph.h Official timeout routines for netgraph nodes that know how to 2002-03-05 20:26:20 +00:00
ng_async.c Get rid of the twisted MFREE() macro entirely. 2002-02-05 02:00:56 +00:00
ng_async.h
ng_base.c Change callers of mtx_init() to pass in an appropriate lock type name. In 2002-04-04 21:03:38 +00:00
ng_bpf.c Update to C99, s/__FUNCTION__/__func__/, 2001-12-10 08:09:49 +00:00
ng_bpf.h Fix cut and paste error in a comment. 2001-01-30 07:58:30 +00:00
ng_bridge.c Typo. 2001-12-15 20:53:15 +00:00
ng_bridge.h
ng_cisco.c log routine called w/ %ld and int argument, cast argument to long 2001-10-29 02:22:49 +00:00
ng_cisco.h
ng_echo.c
ng_echo.h
ng_eiface.c Update to C99, s/__FUNCTION__/__func__/, 2001-12-10 08:09:49 +00:00
ng_eiface.h slight cleanups during testing. 2001-02-25 16:49:04 +00:00
ng_etf.c A node that allows ethernet type packets to be filtered to different 2001-10-30 07:28:17 +00:00
ng_etf.h A node that allows ethernet type packets to be filtered to different 2001-10-30 07:28:17 +00:00
ng_ether.c Don't send packets out an interface unless it is IFF_UP|IFF_RUNNING. 2002-05-09 20:19:00 +00:00
ng_ether.h
ng_frame_relay.c Update to C99, s/__FUNCTION__/__func__/, 2001-12-10 08:09:49 +00:00
ng_frame_relay.h
ng_gif_demux.c Update to C99, s/__FUNCTION__/__func__/, 2001-12-10 08:09:49 +00:00
ng_gif_demux.h The initial commit contained an error in the license, this is the 2001-09-27 00:04:29 +00:00
ng_gif.c Update to C99, s/__FUNCTION__/__func__/, 2001-12-10 08:09:49 +00:00
ng_gif.h Fixed pedantic syntax error (trailing semicolon in enum). 2001-10-04 07:51:42 +00:00
ng_hole.c
ng_hole.h
ng_iface.c Update to C99, s/__FUNCTION__/__func__/, 2001-12-10 08:09:49 +00:00
ng_iface.h
ng_ip_input.c Add ng_ip_input. A new netgraph node for queuing IP packets into the 2001-09-27 21:54:27 +00:00
ng_ip_input.h Add ng_ip_input. A new netgraph node for queuing IP packets into the 2001-09-27 21:54:27 +00:00
ng_ksocket.c Lock down a socket, milestone 1. 2002-05-20 05:41:09 +00:00
ng_ksocket.h When a socket is not connected, allow the peer "struct sockaddr" 2001-11-28 19:39:58 +00:00
ng_lmi.c
ng_lmi.h
ng_message.h Clean up reference counting with relation to queued packets and the worklist, 2001-02-01 20:51:23 +00:00
ng_mppc.c o Move NTOHL() and associated macros into <sys/param.h>. These are 2002-02-18 20:35:27 +00:00
ng_mppc.h Add support for 56 bit MPPE encryption. 2001-12-15 02:07:32 +00:00
ng_one2many.c Update to C99, s/__FUNCTION__/__func__/, 2001-12-10 08:09:49 +00:00
ng_one2many.h Add a new distribution algorythm to the 'one2many' node type. 2001-01-28 15:37:06 +00:00
ng_parse.c Fix bug in previous commit. 2002-02-12 18:33:10 +00:00
ng_parse.h
ng_ppp.c Fix bugs where the ng_ppp node could transmit PPP frames whose length 2002-03-15 02:31:14 +00:00
ng_ppp.h
ng_pppoe.c Add a NGM_PPPOE_SESSIONID message to the ng_pppoe node. 2002-05-14 12:32:41 +00:00
ng_pppoe.h Add a NGM_PPPOE_SESSIONID message to the ng_pppoe node. 2002-05-14 12:32:41 +00:00
ng_pptpgre.c Use 'struct callout' instead of 'struct callout_handle' to avoid 2002-04-14 17:37:35 +00:00
ng_pptpgre.h
ng_rfc1490.c Update to C99, s/__FUNCTION__/__func__/, 2001-12-10 08:09:49 +00:00
ng_rfc1490.h
ng_sample.c Make the sample netgraph node compileable again. 2001-02-25 05:36:25 +00:00
ng_sample.h
ng_socket.c Lock down a socket, milestone 1. 2002-05-20 05:41:09 +00:00
ng_socket.h
ng_socketvar.h
ng_split.c Update to C99, s/__FUNCTION__/__func__/, 2001-12-10 08:09:49 +00:00
ng_split.h General cleanup providing better style(9) conformance and generally 2001-07-24 23:33:06 +00:00
ng_tee.c Update to C99, s/__FUNCTION__/__func__/, 2001-12-10 08:09:49 +00:00
ng_tee.h
ng_tty.c Change the suser() API to take advantage of td_ucred as well as do a 2002-04-01 21:31:13 +00:00
ng_tty.h
ng_UI.c Update to C99, s/__FUNCTION__/__func__/, 2001-12-10 08:09:49 +00:00
ng_UI.h
ng_vjc.c Update to C99, s/__FUNCTION__/__func__/, 2001-12-10 08:09:49 +00:00
ng_vjc.h
NOTES