freebsd-nq/sys/netgraph
Brooks Davis fc74a9f93a Stop embedding struct ifnet at the top of driver softcs. Instead the
struct ifnet or the layer 2 common structure it was embedded in have
been replaced with a struct ifnet pointer to be filled by a call to the
new function, if_alloc(). The layer 2 common structure is also allocated
via if_alloc() based on the interface type. It is hung off the new
struct ifnet member, if_l2com.

This change removes the size of these structures from the kernel ABI and
will allow us to better manage them as interfaces come and go.

Other changes of note:
 - Struct arpcom is no longer referenced in normal interface code.
   Instead the Ethernet address is accessed via the IFP2ENADDR() macro.
   To enforce this ac_enaddr has been renamed to _ac_enaddr.
 - The second argument to ether_ifattach is now always the mac address
   from driver private storage rather than sometimes being ac_enaddr.

Reviewed by:	sobomax, sam
2005-06-10 16:49:24 +00:00
..
atm Stop embedding struct ifnet at the top of driver softcs. Instead the 2005-06-10 16:49:24 +00:00
bluetooth Move AVM USB Bluetooth-Adapter BlueFritz! from "broken" devices list 2005-05-28 00:48:42 +00:00
netflow Catch up with new ng_package_data(). 2005-05-16 17:10:08 +00:00
netgraph.h Use NG_QUEUE instead of constant. 2005-05-16 19:52:42 +00:00
ng_async.c /* -> /*- for license, minor formatting changes 2005-01-07 01:45:51 +00:00
ng_async.h /* -> /*- for license, minor formatting changes 2005-01-07 01:45:51 +00:00
ng_atmllc.c /* -> /*- for license, minor formatting changes 2005-01-07 01:45:51 +00:00
ng_atmllc.h /* -> /*- for license, minor formatting changes 2005-01-07 01:45:51 +00:00
ng_base.c - Extend interface of ng_getqblk(), so that malloc wait flags are 2005-05-16 17:07:03 +00:00
ng_bpf.c /* -> /*- for license, minor formatting changes 2005-01-07 01:45:51 +00:00
ng_bpf.h Fix typo in a comment. 2005-02-12 18:10:26 +00:00
ng_bridge.c In revision 1.29 timeout() was converted to ng_callout(). 2005-02-09 15:14:44 +00:00
ng_bridge.h /* -> /*- for license, minor formatting changes 2005-01-07 01:45:51 +00:00
ng_cisco.c NG_MKRESPONSE() macro includes sizeof struct ng_mesg when doing allocation. 2005-04-13 14:03:28 +00:00
ng_cisco.h /* -> /*- for license, minor formatting changes 2005-01-07 01:45:51 +00:00
ng_device.c Change m_uiotombuf so it will accept offset at which data should be copied 2005-05-04 18:55:03 +00:00
ng_device.h /* -> /*- for license, minor formatting changes 2005-01-07 01:45:51 +00:00
ng_echo.c - Return error, if there was one. 2005-04-15 10:14:00 +00:00
ng_echo.h /* -> /*- for license, minor formatting changes 2005-01-07 01:45:51 +00:00
ng_eiface.c Stop embedding struct ifnet at the top of driver softcs. Instead the 2005-06-10 16:49:24 +00:00
ng_eiface.h Added ASCII version of the NGM_EIFACE_GET_IFNAME message, "getifname". 2005-02-03 11:52:42 +00:00
ng_etf.c Remove ng_connect_t where it is unused. Probably it remained from ng_source.c. 2005-03-14 20:49:48 +00:00
ng_etf.h /* -> /*- for license, minor formatting changes 2005-01-07 01:45:51 +00:00
ng_ether.c Stop embedding struct ifnet at the top of driver softcs. Instead the 2005-06-10 16:49:24 +00:00
ng_ether.h Add new netgraph control message NGM_ETHER_DETACH, which actually 2005-02-14 12:01:09 +00:00
ng_fec.c Stop embedding struct ifnet at the top of driver softcs. Instead the 2005-06-10 16:49:24 +00:00
ng_fec.h /* -> /*- for license, minor formatting changes 2005-01-07 01:45:51 +00:00
ng_frame_relay.c /* -> /*- for license, minor formatting changes 2005-01-07 01:45:51 +00:00
ng_frame_relay.h /* -> /*- for license, minor formatting changes 2005-01-07 01:45:51 +00:00
ng_gif_demux.c /* -> /*- for license, minor formatting changes 2005-01-07 01:45:51 +00:00
ng_gif_demux.h /* -> /*- for license, minor formatting changes 2005-01-07 01:45:51 +00:00
ng_gif.c Stop embedding struct ifnet at the top of driver softcs. Instead the 2005-06-10 16:49:24 +00:00
ng_gif.h /* -> /*- for license, minor formatting changes 2005-01-07 01:45:51 +00:00
ng_hole.c /* -> /*- for license, minor formatting changes 2005-01-07 01:45:51 +00:00
ng_hole.h /* -> /*- for license, minor formatting changes 2005-01-07 01:45:51 +00:00
ng_hub.c Having moved metadata usage to mbuf tags, remove code that supports 2004-06-26 22:24:16 +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 Stop embedding struct ifnet at the top of driver softcs. Instead the 2005-06-10 16:49:24 +00:00
ng_iface.h Bump cookie value to reflect change in NGM_IFACE_GET_IFNAME semantics. 2005-02-13 16:36:41 +00:00
ng_ip_input.c /* -> /*- for license, minor formatting changes 2005-01-07 01:45:51 +00:00
ng_ip_input.h /* -> /*- for license, minor formatting changes 2005-01-07 01:45:51 +00:00
ng_ipfw.c Fix check for leading zero, so that it does not block two zeroes 2005-05-29 12:20:41 +00:00
ng_ipfw.h Add a ng_ipfw node, implementing a quick and simple interface between 2005-02-05 12:06:33 +00:00
ng_ksocket.c Catch up with new ng_send_fn1() interface. 2005-05-16 17:07:39 +00:00
ng_ksocket.h When netgraph(4) was converted to use mbuf_tags(9) instead of meta-data 2005-02-12 14:54:19 +00:00
ng_l2tp.c - Use ng_callout() instead of callout_reset(9). 2005-01-11 11:51:17 +00:00
ng_l2tp.h /* -> /*- for license, minor formatting changes 2005-01-07 01:45:51 +00:00
ng_lmi.c Refer to the mbuf header length field via the official method. 2005-06-09 10:27:27 +00:00
ng_lmi.h /* -> /*- for license, minor formatting changes 2005-01-07 01:45:51 +00:00
ng_message.h Add macro NG_COPYMESSAGE(), which allocates memory and creates a 2005-04-20 12:18:22 +00:00
ng_mppc.c MPPC node is not thread safe. 2005-06-03 09:06:00 +00:00
ng_mppc.h /* -> /*- for license, minor formatting changes 2005-01-07 01:45:51 +00:00
ng_nat.c Move assertion below initializer. 2005-05-11 08:28:09 +00:00
ng_nat.h ng_nat - a netgraph(4) node, which does NAT 2005-05-05 23:41:21 +00:00
ng_one2many.c Fix getting stats from many links with index > 0. 2005-03-11 10:29:38 +00:00
ng_one2many.h /* -> /*- for license, minor formatting changes 2005-01-07 01:45:51 +00:00
ng_parse.c Replace NG_PARSE_APPEND() macro with ng_parse_append() function. Check 2005-03-01 11:31:06 +00:00
ng_parse.h Fix variable name in comment num=>alen. (Lost part of commit rev 1.2) 2005-01-16 19:12:27 +00:00
ng_ppp.c Refactor places where ng_package_data() failed. 2005-05-16 19:12:57 +00:00
ng_ppp.h Fix incorrect comment. 2005-02-10 02:43:26 +00:00
ng_pppoe.c Remove ng_connect_t where it is unused. Probably it remained from ng_source.c. 2005-03-14 20:49:48 +00:00
ng_pppoe.h /* -> /*- for license, minor formatting changes 2005-01-07 01:45:51 +00:00
ng_pptpgre.c Utilize callout_pending() macro 2005-01-11 12:20:28 +00:00
ng_pptpgre.h /* -> /*- for license, minor formatting changes 2005-01-07 01:45:51 +00:00
ng_rfc1490.c /* -> /*- for license, minor formatting changes 2005-01-07 01:45:51 +00:00
ng_rfc1490.h /* -> /*- for license, minor formatting changes 2005-01-07 01:45:51 +00:00
ng_sample.c Whitespace. 2005-02-06 19:24:59 +00:00
ng_sample.h /* -> /*- for license, minor formatting changes 2005-01-07 01:45:51 +00:00
ng_socket.c Fix use of uninitialized variable len in ngd_send. 2005-05-28 13:15:44 +00:00
ng_socket.h /* -> /*- for license, minor formatting changes 2005-01-07 01:45:51 +00:00
ng_socketvar.h /* -> /*- for license, minor formatting changes 2005-01-07 01:45:51 +00:00
ng_source.c Major overhaul and cleanup of ng_source node. 2005-04-05 17:22:05 +00:00
ng_source.h Major overhaul and cleanup of ng_source node. 2005-04-05 17:22:05 +00:00
ng_split.c Return EINVAL for incorrect hook names. 2005-05-23 13:39:20 +00:00
ng_split.h /* -> /*- for license, minor formatting changes 2005-01-07 01:45:51 +00:00
ng_sppp.c Stop embedding struct ifnet at the top of driver softcs. Instead the 2005-06-10 16:49:24 +00:00
ng_sppp.h Parse "getifname" using the standard parse string type. 2005-02-03 13:03:31 +00:00
ng_tcpmss.c - Remove redundant parenthesis in M_CHECK macro. 2005-06-10 12:44:21 +00:00
ng_tcpmss.h Add ng_tcpmss node, which alters MSS options of TCP packets. Useful to 2005-06-10 08:02:34 +00:00
ng_tee.c Update statistics only in case if delivery was successfull. 2005-06-07 12:22:13 +00:00
ng_tee.h /* -> /*- for license, minor formatting changes 2005-01-07 01:45:51 +00:00
ng_tty.c Locking and cleanup of tty netgraph node. Tty stack is Giant-locked, 2005-01-13 07:43:12 +00:00
ng_tty.h /* -> /*- for license, minor formatting changes 2005-01-07 01:45:51 +00:00
ng_UI.c /* -> /*- for license, minor formatting changes 2005-01-07 01:45:51 +00:00
ng_UI.h /* -> /*- for license, minor formatting changes 2005-01-07 01:45:51 +00:00
ng_vjc.c /* -> /*- for license, minor formatting changes 2005-01-07 01:45:51 +00:00
ng_vjc.h /* -> /*- for license, minor formatting changes 2005-01-07 01:45:51 +00:00
ng_vlan.c When netgraph flow control message comes from downstream, broadcast 2005-04-20 14:19:20 +00:00
ng_vlan.h Netgraph node type for IEEE 802.1Q VLAN tagging. 2004-03-01 17:22:16 +00:00
NOTES