Up to [local] / src / sys / netinet
Request diff between arbitrary revisions
Default branch: MAIN
Revision 1.92 / (download) - annotate - [select for diffs], Wed Feb 14 22:41:48 2024 UTC (3 months, 3 weeks ago) by bluhm
Branch: MAIN
CVS Tags: OPENBSD_7_5_BASE,
OPENBSD_7_5,
HEAD
Changes since 1.91: +3 -2 lines
Diff to previous 1.91 (colored)
Check IP length in ether_extract_headers(). For LRO with ix(4) it is necessary to detect ethernet padding. Extract ip_len and ip6_plen from the mbuf and provide it to the drivers. Add extended sanitity checks, like IP packet is shorter than TCP header. This prevents offloading to network hardware with bougus packets. Also iphlen of extracted headers contains header length for IPv4 and IPv6, to make code in drivers simpler. OK mglocker@
Revision 1.91 / (download) - annotate - [select for diffs], Tue Feb 13 13:58:19 2024 UTC (3 months, 3 weeks ago) by bluhm
Branch: MAIN
Changes since 1.90: +4 -1 lines
Diff to previous 1.90 (colored)
Analyse header layout in ether_extract_headers(). Several drivers need IPv4 header length and TCP offset for checksum offload, TSO and LRO. Accessing these fields directly caused crashes on sparc64 due to misaligned access. It cannot be guaranteed that IP and TCP header is 4 byte aligned in driver level. Also gcc 4.2.1 assumes that bit fields can be accessed with 32 bit load instructions. Use memcpy() in ether_extract_headers() to get the bits from IPv4 and TCP header and store the header length in struct ether_extracted. From there network drivers can esily use it without caring about alignment and bit shift. Do some sanity checks with the length values to prevent that invalid values from evil packets get stored into hardware registers. If check fails, clear the pointer to the header to hide it from the driver. Add debug prints that help to figure out the reason for bad packets and provide information when debugging drivers. OK mglocker@
Revision 1.90 / (download) - annotate - [select for diffs], Thu Jul 27 20:21:25 2023 UTC (10 months, 2 weeks ago) by jan
Branch: MAIN
CVS Tags: OPENBSD_7_4_BASE,
OPENBSD_7_4
Changes since 1.89: +7 -6 lines
Diff to previous 1.89 (colored)
Fix inline vlan-tag handling of forwarded LRO packets from ix(4) Implement vlan-tag parsing ether_extract_header() to use this information to adjust the MSS calculation of LRO packets. pointed out by mbuhl and bluhm with tweaks from bluhm ok bluhm@
Revision 1.89 / (download) - annotate - [select for diffs], Thu Jul 6 19:46:53 2023 UTC (11 months ago) by kn
Branch: MAIN
Changes since 1.88: +5 -2 lines
Diff to previous 1.88 (colored)
use refcnt API for multicast addresses, add tracepoint:refcnt:ethmulti probe Replace hand-rolled reference counting with refcnt_init(9) and hook it up with a new dt(4) probe. OK mvs Feedback OK bluhm
Revision 1.88 / (download) - annotate - [select for diffs], Tue Feb 7 16:14:55 2023 UTC (16 months ago) by bluhm
Branch: MAIN
CVS Tags: OPENBSD_7_3_BASE,
OPENBSD_7_3
Changes since 1.87: +1 -3 lines
Diff to previous 1.87 (colored)
Remove needless #ifdef INET6 from struct ether_extracted field in public header file. Makes debugging with special kernels easier.
Revision 1.87 / (download) - annotate - [select for diffs], Mon Feb 6 20:27:45 2023 UTC (16 months ago) by jan
Branch: MAIN
Changes since 1.86: +13 -1 lines
Diff to previous 1.86 (colored)
consolidate mbuf header parsing on device driver layer with tweaks from mvs@, mpi@, dlg@, naddy@ and bluhm@ "go for it" deraadt@ ok naddy@, mvs@
Revision 1.86 / (download) - annotate - [select for diffs], Thu Jan 26 07:32:40 2023 UTC (16 months, 2 weeks ago) by deraadt
Branch: MAIN
Changes since 1.85: +0 -10 lines
Diff to previous 1.85 (colored)
backing "consolidate mbuf header parsing on device driver layer" easily repeatable ASSERT happens seconds after starting compiles over nfs.
Revision 1.85 / (download) - annotate - [select for diffs], Tue Jan 24 22:35:47 2023 UTC (16 months, 2 weeks ago) by jan
Branch: MAIN
Changes since 1.84: +11 -1 lines
Diff to previous 1.84 (colored)
consolidate mbuf header parsing on device driver layer with tweaks from mvs@, mpi@ and dlg@ ok mvs@, dlg@
Revision 1.84 / (download) - annotate - [select for diffs], Tue Dec 27 20:13:03 2022 UTC (17 months, 2 weeks ago) by patrick
Branch: MAIN
Changes since 1.83: +2 -2 lines
Diff to previous 1.83 (colored)
Fix array bounds mismatch with clang 15 New warning -Warray-parameter is a bit overzealous. ok millert@ tb@
Revision 1.83 / (download) - annotate - [select for diffs], Wed Jul 7 20:19:01 2021 UTC (2 years, 11 months ago) by sashan
Branch: MAIN
CVS Tags: OPENBSD_7_2_BASE,
OPENBSD_7_2,
OPENBSD_7_1_BASE,
OPENBSD_7_1,
OPENBSD_7_0_BASE,
OPENBSD_7_0
Changes since 1.82: +3 -1 lines
Diff to previous 1.82 (colored)
tell ether_input() to call pf_test() outside of smr_read sections, because smr_read sections don't play well with sleeping locks in pf(4). OK bluhm@
Revision 1.82 / (download) - annotate - [select for diffs], Fri Apr 23 21:55:36 2021 UTC (3 years, 1 month ago) by bluhm
Branch: MAIN
Changes since 1.81: +2 -1 lines
Diff to previous 1.81 (colored)
Setting variable arpinit_done is not MP save if we want to execute arp_rtrequest() in parallel. Move initialization to arpinit() function. OK kettenis@ mvs@
Revision 1.81 / (download) - annotate - [select for diffs], Wed Mar 10 10:21:48 2021 UTC (3 years, 3 months ago) by jsg
Branch: MAIN
CVS Tags: OPENBSD_6_9_BASE,
OPENBSD_6_9
Changes since 1.80: +2 -2 lines
Diff to previous 1.80 (colored)
spelling ok gnezdo@ semarie@ mpi@
Revision 1.80 / (download) - annotate - [select for diffs], Fri Mar 5 06:44:09 2021 UTC (3 years, 3 months ago) by dlg
Branch: MAIN
Changes since 1.79: +3 -2 lines
Diff to previous 1.79 (colored)
pass the uint64_t dst ethernet address from ether_input to bridges. tested on amd64 and sparc64.
Revision 1.79 / (download) - annotate - [select for diffs], Fri Feb 26 01:12:37 2021 UTC (3 years, 3 months ago) by dlg
Branch: MAIN
Changes since 1.78: +22 -1 lines
Diff to previous 1.78 (colored)
add some helpers for working with ethernet addresses as uint64_t the main bits are ether_addr_to_e64 and ether_e64_to addr for loading an ethernet address into a uin64_t and visa versa. there's also some macros for testing if an address in a uint64_t is multicast, broadcast, anyaddr, or if it's an 802.1q reserved multicast group address. the reason for this functionality is once you have an ethernet address as a uint64_t, operations like compares, bit tests, and so on are fast and easy. tested on amd64 and sparc64
Revision 1.78 / (download) - annotate - [select for diffs], Wed Jul 22 02:16:02 2020 UTC (3 years, 10 months ago) by dlg
Branch: MAIN
CVS Tags: OPENBSD_6_8_BASE,
OPENBSD_6_8
Changes since 1.77: +2 -2 lines
Diff to previous 1.77 (colored)
deprecate interface input handler lists, just use one input function. the interface input handler lists were originally set up to help us during the intial mpsafe network stack work. at the time not all the virtual ethernet interfaces (vlan, svlan, bridge, trunk, etc) were mpsafe, so we wanted a way to avoid them by default, and only take the kernel lock hit when they were specifically enabled on the interface. since then, they have been fixed up to be mpsafe. i could leave the list in place, but it has some semantic problems. because virtual interfaces filter packets based on the order they were attached to the parent interface, you can get packets taken away in surprising ways, especially when you reboot and netstart does something different to what you did by hand. by hardcoding the order that things like vlan and bridge get to look at packets, we can document the behaviour and get consistency. it also means we can get rid of a use of SRPs which were difficult to replace with SMRs. the interface input handler list is an SRPL, which we would like to deprecate. it turns out that you can sleep during stack processing, which you're not supposed to do with SRPs or SMRs, but SRPs are a lot more forgiving and it worked. lastly, it turns out that this code is faster than the input list handling, so lots of winning all around. special thanks to hrvoje popovski and aaron bieber for testing. this has been in snaps as part of a larger diff for over a week.
Revision 1.77 / (download) - annotate - [select for diffs], Wed Jul 22 00:29:00 2020 UTC (3 years, 10 months ago) by dlg
Branch: MAIN
Changes since 1.76: +14 -1 lines
Diff to previous 1.76 (colored)
add code to coordinate how bridges attach to ethernet interfaces. this is the first step in refactoring how ethernet frames are demuxed by virtual interfaces, and also in deprecating interface input list handling. we now have drivers for three types of virtual bridges, bridge(4), switch(4), and tpmr(4), and it doesn't make sense for any of them to be enabled on the same "port" interfaces at the same time. currently you can add a port interface to multiple types of bridge, but which one gets to steal the packets depends on the order in which they were attached. this creates an ether_brport structure that holds an input function for the bridge, and optionally some per port state that the bridge can use. arpcom has a single pointer to one of these structs that will be used during normal ether_input processing to see if a packet should be passed to a bridge, and will be used instead of an if input handler. because it is a single pointer, it will make sure only one bridge of any type is attached to a port at any one time. this has been in snaps as part of a larger diff for over a week.
Revision 1.76 / (download) - annotate - [select for diffs], Wed Jul 17 16:46:18 2019 UTC (4 years, 10 months ago) by mpi
Branch: MAIN
CVS Tags: OPENBSD_6_7_BASE,
OPENBSD_6_7,
OPENBSD_6_6_BASE,
OPENBSD_6_6
Changes since 1.75: +8 -1 lines
Diff to previous 1.75 (colored)
Introduce ETHER_IS_BROADCAST/ANYADDR/EQ() and use them where appropriate. ok dlg@, sthen@, millert@
Revision 1.75 / (download) - annotate - [select for diffs], Fri Jul 5 01:23:22 2019 UTC (4 years, 11 months ago) by dlg
Branch: MAIN
Changes since 1.74: +2 -1 lines
Diff to previous 1.74 (colored)
add ac_trunkport to arpcom so trunks can coordinate owning an interface Ethernet interfaces can be used by trunk(4), and i'm about to commit a new aggr(4) driver which should not be able to use an interface while trunk owns it and visa versa.
Revision 1.74 / (download) - annotate - [select for diffs], Tue Dec 11 01:27:08 2018 UTC (5 years, 6 months ago) by dlg
Branch: MAIN
CVS Tags: OPENBSD_6_5_BASE,
OPENBSD_6_5
Changes since 1.73: +8 -3 lines
Diff to previous 1.73 (colored)
split ether_output into resolution, encapsulation, and output functions if if_output can be overridden on ethernet interfaces, it will allow things like vlan to do it's packet encapsulation during output before putting the packet directly on the underlying interface for output. this has two benefits. first, it can avoid having ether_output on pseudo interfaces recurse, which makes profiling of the network stack a lot clearer. secondly, and more importantly, it allows pseudo ethernet interface packet encapsulation to by run concurrently by the stack, rather than having packets unnecessarily serialied by an ifq. this diff just splits ether_output up, it doesnt have any interface take advantage of it yet. tweaks and ok claudio@
Revision 1.73 / (download) - annotate - [select for diffs], Tue Nov 29 10:09:57 2016 UTC (7 years, 6 months ago) by reyk
Branch: MAIN
CVS Tags: OPENBSD_6_4_BASE,
OPENBSD_6_4,
OPENBSD_6_3_BASE,
OPENBSD_6_3,
OPENBSD_6_2_BASE,
OPENBSD_6_2,
OPENBSD_6_1_BASE,
OPENBSD_6_1
Changes since 1.72: +6 -1 lines
Diff to previous 1.72 (colored)
For virtual Ethernet drivers that don't have a technical limit of the hardmtu, pick a value of 65435 that leaves space for some encapsulation and almost a complete max-IP packet. After some discussion we picked this arbitrary value. OK dlg@
Revision 1.72 / (download) - annotate - [select for diffs], Tue Jun 28 17:18:24 2016 UTC (7 years, 11 months ago) by chris
Branch: MAIN
CVS Tags: OPENBSD_6_0_BASE,
OPENBSD_6_0
Changes since 1.71: +4 -1 lines
Diff to previous 1.71 (colored)
Add sysctl for arp timers: net.inet.ip.arptimeout (expire timer for resolved entries) and net.inet.ip.arpdown (expire timer for unresolved entries) ok mpi@
Revision 1.71 / (download) - annotate - [select for diffs], Wed May 18 20:15:14 2016 UTC (8 years ago) by mpi
Branch: MAIN
Changes since 1.70: +3 -3 lines
Diff to previous 1.70 (colored)
Remove some superflous if_get(9)/if_put(9) dances now that ARP input routines are call directly by ether_input(). ok visa@, dlg@
Revision 1.70 / (download) - annotate - [select for diffs], Wed Mar 30 10:13:14 2016 UTC (8 years, 2 months ago) by mpi
Branch: MAIN
Changes since 1.69: +1 -2 lines
Diff to previous 1.69 (colored)
Implement proxy ARP for ART based on mpath support. Since mpath is not enabled in RAMDISK, proxy ARP won't work there either. ok bluhm@
Revision 1.69 / (download) - annotate - [select for diffs], Wed Mar 16 11:48:27 2016 UTC (8 years, 2 months ago) by dlg
Branch: MAIN
Changes since 1.68: +6 -2 lines
Diff to previous 1.68 (colored)
macros for the null, min, and max vlan ids. ok mpi@ and tweaks from sthen@
Revision 1.68 / (download) - annotate - [select for diffs], Mon Mar 14 03:48:47 2016 UTC (8 years, 3 months ago) by dlg
Branch: MAIN
Changes since 1.67: +22 -1 lines
Diff to previous 1.67 (colored)
move the vlan protocol definitions to the same places as the ethernet ones ok mpi@
Revision 1.67 / (download) - annotate - [select for diffs], Tue Mar 1 01:48:14 2016 UTC (8 years, 3 months ago) by dlg
Branch: MAIN
Changes since 1.66: +1 -2 lines
Diff to previous 1.66 (colored)
enm_ac in ether_multi is set but never used. so we dont need it.
Revision 1.66 / (download) - annotate - [select for diffs], Fri Jan 8 13:53:24 2016 UTC (8 years, 5 months ago) by mpi
Branch: MAIN
CVS Tags: OPENBSD_5_9_BASE,
OPENBSD_5_9
Changes since 1.65: +13 -15 lines
Diff to previous 1.65 (colored)
Get rid of the arp and revarp input queues. Packets of types ARP and REVARP are now processed in the softnet task, directly from ether_input() and without holding the KERNEL_LOCK. Tested by many, ok dlg@
Revision 1.65 / (download) - annotate - [select for diffs], Wed Dec 9 15:05:51 2015 UTC (8 years, 6 months ago) by mpi
Branch: MAIN
Changes since 1.64: +10 -1 lines
Diff to previous 1.64 (colored)
Keep all ether prototypes in one place.
Revision 1.64 / (download) - annotate - [select for diffs], Tue Nov 24 15:27:46 2015 UTC (8 years, 6 months ago) by mpi
Branch: MAIN
Changes since 1.63: +43 -49 lines
Diff to previous 1.63 (colored)
Merge three #ifdef _KERNEL blocks into one.
Revision 1.63 / (download) - annotate - [select for diffs], Fri Nov 13 10:18:04 2015 UTC (8 years, 7 months ago) by mpi
Branch: MAIN
Changes since 1.62: +2 -2 lines
Diff to previous 1.62 (colored)
Sore the index of the interface used for revarp instead of a pointer to its descriptor. Get rid of a if_ref(). ok dlg@
Revision 1.62 / (download) - annotate - [select for diffs], Tue Oct 27 15:22:58 2015 UTC (8 years, 7 months ago) by mpi
Branch: MAIN
Changes since 1.61: +1 -2 lines
Diff to previous 1.61 (colored)
RIP arp_ifinit().
Revision 1.61 / (download) - annotate - [select for diffs], Sun Oct 25 11:58:11 2015 UTC (8 years, 7 months ago) by mpi
Branch: MAIN
Changes since 1.60: +2 -2 lines
Diff to previous 1.60 (colored)
Introduce if_rtrequest() the successor of ifa_rtrequest(). L2 resolution depends on the protocol (encoded in the route entry) and an ``ifp''. Not having to care about an ``ifa'' makes our life easier in our MP effort. Fewer dependencies between data structures implies fewer headaches. Discussed with bluhm@, ok claudio@
Revision 1.60 / (download) - annotate - [select for diffs], Sun Sep 27 16:50:40 2015 UTC (8 years, 8 months ago) by stsp
Branch: MAIN
Changes since 1.59: +2 -1 lines
Diff to previous 1.59 (colored)
Welcome etheranyaddr, cousin of etherbroadcastaddr. Can be used to check if a MAC address is all zeros. Will be used by iwm(4) soon. ok kettenis@
Revision 1.59 / (download) - annotate - [select for diffs], Sun Sep 13 10:42:32 2015 UTC (8 years, 9 months ago) by dlg
Branch: MAIN
Changes since 1.58: +2 -3 lines
Diff to previous 1.58 (colored)
queue revarps to softnet so we can defer processing to a context with the kernel lock. "do it" claudio@ mpi@
Revision 1.58 / (download) - annotate - [select for diffs], Thu Sep 10 07:43:18 2015 UTC (8 years, 9 months ago) by mpi
Branch: MAIN
Changes since 1.57: +2 -2 lines
Diff to previous 1.57 (colored)
Missing prototype change in previous.
Revision 1.57 / (download) - annotate - [select for diffs], Tue Jun 23 13:20:17 2015 UTC (8 years, 11 months ago) by mpi
Branch: MAIN
CVS Tags: OPENBSD_5_8_BASE,
OPENBSD_5_8
Changes since 1.56: +2 -2 lines
Diff to previous 1.56 (colored)
Pass a "struct ifnet *" instead of a "struct arpcom *" to arpresolve(). Most of the ARP layer already take an ifp pointer and this makes clear wich chunks of code are messing with ac_enaddr. Note that our Ethernet code assume that these pointer are interchangeable since the first element of the "struct arpcom" is a "struct ifnet".
Revision 1.56 / (download) - annotate - [select for diffs], Fri Apr 10 13:58:20 2015 UTC (9 years, 2 months ago) by dlg
Branch: MAIN
Changes since 1.55: +2 -2 lines
Diff to previous 1.55 (colored)
replace the use of ifqueues for most input queues serviced by netisr with niqueues. this change is so big because there's a lot of code that takes pointers to different input queues (eg, ether_input picks between ipv4, ipv6, pppoe, arp, and mpls input queues) and falls through to code to enqueue packets against the pointer. if i changed only one of the input queues id have to add sepearate code paths, one for ifqueues and one for niqueues in each of these places by flipping all these input queues at once i can keep the currently common code common. testing by mpi@ sthen@ and rafael zalamena ok mpi@ sthen@ claudio@ henning@
Revision 1.55 / (download) - annotate - [select for diffs], Tue Mar 24 12:58:43 2015 UTC (9 years, 2 months ago) by mpi
Branch: MAIN
Changes since 1.54: +1 -12 lines
Diff to previous 1.54 (colored)
Convert hand-rolled mbuf list used to store packets until ARP resolution is completed to ml_init(9) API. Tested by kspillner@, inputs & ok dlg@
Revision 1.54 / (download) - annotate - [select for diffs], Fri Dec 5 15:50:04 2014 UTC (9 years, 6 months ago) by mpi
Branch: MAIN
CVS Tags: OPENBSD_5_7_BASE,
OPENBSD_5_7
Changes since 1.53: +4 -1 lines
Diff to previous 1.53 (colored)
Explicitly include <net/if_var.h> instead of pulling it in <net/if.h>. ok mikeb@, krw@, bluhm@, tedu@
Revision 1.53 / (download) - annotate - [select for diffs], Thu Jan 9 06:29:05 2014 UTC (10 years, 5 months ago) by tedu
Branch: MAIN
CVS Tags: OPENBSD_5_6_BASE,
OPENBSD_5_6,
OPENBSD_5_5_BASE,
OPENBSD_5_5
Changes since 1.52: +4 -4 lines
Diff to previous 1.52 (colored)
bzero/bcmp -> memset/memcmp. ok matthew
Revision 1.52 / (download) - annotate - [select for diffs], Thu Nov 21 16:34:33 2013 UTC (10 years, 6 months ago) by mikeb
Branch: MAIN
Changes since 1.51: +3 -4 lines
Diff to previous 1.51 (colored)
hide a bunch of structures (namely arpcom, llinfo_arp, ethernet multicast macros and in_ifaddr) that reference ifnet in some way; looked over by deraadt, ok mpi
Revision 1.51 / (download) - annotate - [select for diffs], Wed Aug 28 06:58:57 2013 UTC (10 years, 9 months ago) by mpi
Branch: MAIN
Changes since 1.50: +2 -2 lines
Diff to previous 1.50 (colored)
Remove unused argument from *rtrequest() ok krw@, mikeb@
Revision 1.50 / (download) - annotate - [select for diffs], Thu Jul 4 08:22:19 2013 UTC (10 years, 11 months ago) by mpi
Branch: MAIN
CVS Tags: OPENBSD_5_4_BASE,
OPENBSD_5_4
Changes since 1.49: +2 -1 lines
Diff to previous 1.49 (colored)
Rewrite the function used to determine if we do proxy ARP for one of our addresses to reuse arplookup() and do only one list iteration. Looks ok to claudio@, ok mikeb@
Revision 1.49 / (download) - annotate - [select for diffs], Fri Mar 22 01:41:12 2013 UTC (11 years, 2 months ago) by tedu
Branch: MAIN
Changes since 1.48: +2 -2 lines
Diff to previous 1.48 (colored)
simple replacement of LIST_END with NULL. ok mpi
Revision 1.48 / (download) - annotate - [select for diffs], Thu Oct 18 00:36:22 2012 UTC (11 years, 7 months ago) by deraadt
Branch: MAIN
CVS Tags: OPENBSD_5_3_BASE,
OPENBSD_5_3
Changes since 1.47: +4 -2 lines
Diff to previous 1.47 (colored)
Move revarp code into #ifdef NFSCLIENT; saving space on some media. Resurrect the rather silly "unplug my network device while I am doing nfs diskless revarp" safety code which was disabled due to a missing "ether.h" include, found by jsg ok jsg
Revision 1.47 / (download) - annotate - [select for diffs], Mon Feb 8 13:32:50 2010 UTC (14 years, 4 months ago) by claudio
Branch: MAIN
CVS Tags: OPENBSD_5_2_BASE,
OPENBSD_5_2,
OPENBSD_5_1_BASE,
OPENBSD_5_1,
OPENBSD_5_0_BASE,
OPENBSD_5_0,
OPENBSD_4_9_BASE,
OPENBSD_4_9,
OPENBSD_4_8_BASE,
OPENBSD_4_8,
OPENBSD_4_7_BASE,
OPENBSD_4_7
Changes since 1.46: +1 -2 lines
Diff to previous 1.46 (colored)
arpioctl() is not used sore remove it. Found by Gleydson Soares.
Revision 1.46 / (download) - annotate - [select for diffs], Tue Jan 12 03:41:29 2010 UTC (14 years, 5 months ago) by deraadt
Branch: MAIN
Changes since 1.45: +3 -1 lines
Diff to previous 1.45 (colored)
Unify the various fake ethernet generators as ether_fakeaddr() which is safe for both hardware devices and virtual devices ok mpf, kettenis, moaning and groaning and slow acceptance from mcbride XXX should loop checking for uniqueness after new henning diff goes in
Revision 1.45 / (download) - annotate - [select for diffs], Sun Oct 25 21:42:02 2009 UTC (14 years, 7 months ago) by mk
Branch: MAIN
Changes since 1.44: +1 -2 lines
Diff to previous 1.44 (colored)
Get rid of unused macro `la_timer'. `if it is unused nuke it' claudio
Revision 1.44 / (download) - annotate - [select for diffs], Sat Nov 8 12:54:58 2008 UTC (15 years, 7 months ago) by dlg
Branch: MAIN
CVS Tags: OPENBSD_4_6_BASE,
OPENBSD_4_6,
OPENBSD_4_5_BASE,
OPENBSD_4_5
Changes since 1.43: +23 -23 lines
Diff to previous 1.43 (colored)
fix macros up so they use the do { } while (/* CONSTCOND */ 0) idiom ok deraadt@ otto@
Revision 1.43 / (download) - annotate - [select for diffs], Fri Oct 31 21:08:33 2008 UTC (15 years, 7 months ago) by claudio
Branch: MAIN
Changes since 1.42: +2 -2 lines
Diff to previous 1.42 (colored)
Be way more strict in the number of packets allowed to be queued in the arp layer. With a lot of input from deraadt@. OK dlg@, looks good gollo@ + deraadt@
Revision 1.42 / (download) - annotate - [select for diffs], Thu Oct 30 09:39:05 2008 UTC (15 years, 7 months ago) by gollo
Branch: MAIN
Changes since 1.41: +6 -2 lines
Diff to previous 1.41 (colored)
Arpresolve could loose few packets during resolving an ethernet address. This cvs commit introduces a queue that buffers a small burst of packets and resending the packets in correct order when the ethernet address is resolved. Code written by Armin Wolfermann <aw@osn.de>. OK: claudio@ henning@
Revision 1.41 / (download) - annotate - [select for diffs], Thu Oct 16 18:23:53 2008 UTC (15 years, 7 months ago) by claudio
Branch: MAIN
Changes since 1.40: +1 -6 lines
Diff to previous 1.40 (colored)
Kill M_HASFCS, it is not used in OpenBSD. If a ethernet chip returns the checksum in the packet it should be trimmed away by the driver and not by driver independent code. OK brad@
Revision 1.40 / (download) - annotate - [select for diffs], Fri Apr 18 09:16:14 2008 UTC (16 years, 1 month ago) by djm
Branch: MAIN
CVS Tags: OPENBSD_4_4_BASE,
OPENBSD_4_4
Changes since 1.39: +3 -1 lines
Diff to previous 1.39 (colored)
extend the if_ethersubr.c crc functions to support updating a running crc in addition to the existing "oneshot" mode and use them to replace ieee80211_crc_update() with the new ether_crc32_le_update(). Saves 1k kernel bss + some code. Mark the new ether_crc32_[lb]e_update functions as __pure for a ~25x speedup (on my i386 at least). feedback and ok damien@
Revision 1.39 / (download) - annotate - [select for diffs], Wed May 16 09:24:07 2007 UTC (17 years, 1 month ago) by dlg
Branch: MAIN
CVS Tags: OPENBSD_4_3_BASE,
OPENBSD_4_3,
OPENBSD_4_2_BASE,
OPENBSD_4_2
Changes since 1.38: +5 -3 lines
Diff to previous 1.38 (colored)
count the number of multicast ranges that are kept in the list of multicast addresses in struct arpcom. this lets a nic driver easily see if it wants allmulti behaviour, which in turn means we can clean some code up. ok jason@ claudio@ norby@
Revision 1.38 / (download) - annotate - [select for diffs], Wed Jun 28 12:13:24 2006 UTC (17 years, 11 months ago) by claudio
Branch: MAIN
CVS Tags: OPENBSD_4_1_BASE,
OPENBSD_4_1,
OPENBSD_4_0_BASE,
OPENBSD_4_0
Changes since 1.37: +1 -6 lines
Diff to previous 1.37 (colored)
No need to add function prototypes twice to a header file.
Revision 1.37 / (download) - annotate - [select for diffs], Sun May 28 00:20:21 2006 UTC (18 years ago) by brad
Branch: MAIN
Changes since 1.36: +1 -3 lines
Diff to previous 1.36 (colored)
- remove ETHER_MAX_LEN_JUMBO and ETHERMTU_JUMBO. - use if_hardmtu for MTU ioctl handlers. ok reyk@
Revision 1.36 / (download) - annotate - [select for diffs], Sun Mar 5 21:48:56 2006 UTC (18 years, 3 months ago) by miod
Branch: MAIN
Changes since 1.35: +6 -6 lines
Diff to previous 1.35 (colored)
Use more queue macros rather than doing it by hand; ok otto@ krw@
Revision 1.35 / (download) - annotate - [select for diffs], Mon Mar 28 06:19:58 2005 UTC (19 years, 2 months ago) by tedu
Branch: MAIN
CVS Tags: OPENBSD_3_9_BASE,
OPENBSD_3_9,
OPENBSD_3_8_BASE,
OPENBSD_3_8
Changes since 1.34: +4 -4 lines
Diff to previous 1.34 (colored)
add some const to ether_*. remove bonus prototypes this brought out. ok deraadt@
Revision 1.34 / (download) - annotate - [select for diffs], Thu Sep 23 18:21:41 2004 UTC (19 years, 8 months ago) by brad
Branch: MAIN
CVS Tags: OPENBSD_3_7_BASE,
OPENBSD_3_7
Changes since 1.33: +2 -1 lines
Diff to previous 1.33 (colored)
add ETHER_MAX_DIX_LEN
Revision 1.33 / (download) - annotate - [select for diffs], Sat Jul 31 16:34:57 2004 UTC (19 years, 10 months ago) by brad
Branch: MAIN
CVS Tags: OPENBSD_3_6_BASE,
OPENBSD_3_6
Changes since 1.32: +8 -5 lines
Diff to previous 1.32 (colored)
- formatting - add comment
Revision 1.32 / (download) - annotate - [select for diffs], Tue Jun 22 22:46:30 2004 UTC (19 years, 11 months ago) by millert
Branch: MAIN
Changes since 1.31: +6 -1 lines
Diff to previous 1.31 (colored)
Add M_LINK0 for net80211; OK markus@ and mcbride@
Revision 1.31 / (download) - annotate - [select for diffs], Wed Jun 16 21:35:37 2004 UTC (19 years, 11 months ago) by naddy
Branch: MAIN
Changes since 1.30: +3 -1 lines
Diff to previous 1.30 (colored)
make safe for inclusion in C++ code; ok millert@, deraadt@
Revision 1.11.2.9 / (download) - annotate - [select for diffs], Sat Jun 5 23:11:25 2004 UTC (20 years ago) by niklas
Branch: SMP
Changes since 1.11.2.8: +13 -2 lines
Diff to previous 1.11.2.8 (colored) to branchpoint 1.11 (colored) next main 1.12 (colored)
Merge with the trunk
Revision 1.30 / (download) - annotate - [select for diffs], Tue May 18 21:10:14 2004 UTC (20 years ago) by brad
Branch: MAIN
CVS Tags: SMP_SYNC_B,
SMP_SYNC_A
Changes since 1.29: +13 -2 lines
Diff to previous 1.29 (colored)
if_ether.h add ETHER_MAX_LEN_JUMBO, ETHER_VLAN_ENCAP_LEN, ETHER_ALIGN, and ETHERMTU_JUMBO constants. if.h add a few more interface capabilities flags. Some from NetBSD, some from FreeBSD. ok markus@
Revision 1.11.2.8 / (download) - annotate - [select for diffs], Sat Jun 7 11:06:08 2003 UTC (21 years ago) by ho
Branch: SMP
Changes since 1.11.2.7: +2 -6 lines
Diff to previous 1.11.2.7 (colored) to branchpoint 1.11 (colored)
Sync SMP branch to -current
Revision 1.29 / (download) - annotate - [select for diffs], Mon Jun 2 23:28:13 2003 UTC (21 years ago) by millert
Branch: MAIN
CVS Tags: OPENBSD_3_5_BASE,
OPENBSD_3_5,
OPENBSD_3_4_BASE,
OPENBSD_3_4
Changes since 1.28: +2 -6 lines
Diff to previous 1.28 (colored)
Remove the advertising clause in the UCB license which Berkeley rescinded 22 July 1999. Proofed by myself and Theo.
Revision 1.17.4.3 / (download) - annotate - [select for diffs], Mon May 19 22:40:40 2003 UTC (21 years ago) by tedu
Branch: UBC
Changes since 1.17.4.2: +2 -18 lines
Diff to previous 1.17.4.2 (colored) to branchpoint 1.17 (colored) next main 1.18 (colored)
sync
Revision 1.11.2.7 / (download) - annotate - [select for diffs], Fri May 16 00:29:44 2003 UTC (21 years, 1 month ago) by niklas
Branch: SMP
Changes since 1.11.2.6: +1 -17 lines
Diff to previous 1.11.2.6 (colored) to branchpoint 1.11 (colored)
merge the trunk so we will get the genfs and locking fixes
Revision 1.28 / (download) - annotate - [select for diffs], Wed May 14 02:02:55 2003 UTC (21 years, 1 month ago) by itojun
Branch: MAIN
CVS Tags: UBC_SYNC_A
Changes since 1.27: +2 -18 lines
Diff to previous 1.27 (colored)
move ETHERTYPE_xx declarations to <net/ethertypes.h>. meets netbsd practice. deraadt ok
Revision 1.27 / (download) - annotate - [select for diffs], Tue May 13 08:25:44 2003 UTC (21 years, 1 month ago) by deraadt
Branch: MAIN
Changes since 1.26: +17 -1 lines
Diff to previous 1.26 (colored)
back out. these changes were not tested. it might come as a surprise to some developers, but include files are not just used by the kernel. there are applications that pull them in as well. this change broke tcpdump, and who knows what else. i've been talking for 24 hours now about tree breakage and let this be official: I am prepared to lock the tree entirely if need be. YOU WILL GET OK PERMISSION FROM EVERYONE, NOT JUST FROM ONE PERSON
Revision 1.26 / (download) - annotate - [select for diffs], Tue May 13 04:51:05 2003 UTC (21 years, 1 month ago) by itojun
Branch: MAIN
Changes since 1.25: +2 -18 lines
Diff to previous 1.25 (colored)
move ethernet protocol type defs into sys/net/, as it is not just for ethernet (FDDI, ieee1394, ...). follows netbsd practice. 2 jasons, dhartmei, thierry ok
Revision 1.11.2.6 / (download) - annotate - [select for diffs], Fri Mar 28 00:06:54 2003 UTC (21 years, 2 months ago) by niklas
Branch: SMP
Changes since 1.11.2.5: +23 -14 lines
Diff to previous 1.11.2.5 (colored) to branchpoint 1.11 (colored)
Sync the SMP branch with 3.3
Revision 1.17.4.2 / (download) - annotate - [select for diffs], Tue Oct 29 00:36:46 2002 UTC (21 years, 7 months ago) by art
Branch: UBC
Changes since 1.17.4.1: +8 -7 lines
Diff to previous 1.17.4.1 (colored) to branchpoint 1.17 (colored)
sync to -current
Revision 1.25 / (download) - annotate - [select for diffs], Wed Jul 3 21:19:08 2002 UTC (21 years, 11 months ago) by miod
Branch: MAIN
CVS Tags: UBC_SYNC_B,
OPENBSD_3_3_BASE,
OPENBSD_3_3,
OPENBSD_3_2_BASE,
OPENBSD_3_2
Changes since 1.24: +5 -5 lines
Diff to previous 1.24 (colored)
Change all variables definitions (int foo) in sys/sys/*.h to variable declarations (extern int foo), and compensate in the appropriate locations.
Revision 1.24 / (download) - annotate - [select for diffs], Fri Jun 14 21:35:00 2002 UTC (22 years ago) by todd
Branch: MAIN
Changes since 1.23: +2 -2 lines
Diff to previous 1.23 (colored)
spelling; from Brian Poole <raj@cerias.purdue.edu>
Revision 1.17.4.1 / (download) - annotate - [select for diffs], Tue Jun 11 03:31:36 2002 UTC (22 years ago) by art
Branch: UBC
Changes since 1.17: +43 -38 lines
Diff to previous 1.17 (colored)
Sync UBC branch to -current
Revision 1.23 / (download) - annotate - [select for diffs], Mon Jun 10 22:48:09 2002 UTC (22 years ago) by chris
Branch: MAIN
Changes since 1.22: +2 -1 lines
Diff to previous 1.22 (colored)
Split common code which converts a multicast address to an ethernet address from ether_addmulti() and ether_delmulti() into ether_multiaddr(), a'la netbsd. Also clean up some magic numbers. itojun likes it
Revision 1.22 / (download) - annotate - [select for diffs], Sun Jun 9 16:26:10 2002 UTC (22 years ago) by itojun
Branch: MAIN
Changes since 1.21: +2 -2 lines
Diff to previous 1.21 (colored)
whitespace
Revision 1.21 / (download) - annotate - [select for diffs], Sat Jun 8 07:59:20 2002 UTC (22 years ago) by chris
Branch: MAIN
Changes since 1.20: +8 -9 lines
Diff to previous 1.20 (colored)
correctness
Revision 1.20 / (download) - annotate - [select for diffs], Tue May 7 19:28:59 2002 UTC (22 years, 1 month ago) by nate
Branch: MAIN
Changes since 1.19: +10 -1 lines
Diff to previous 1.19 (colored)
move ether_crc32_le to if_ethersubr.c. Add ether_crc32_be
Revision 1.11.2.5 / (download) - annotate - [select for diffs], Thu Mar 28 14:56:45 2002 UTC (22 years, 2 months ago) by niklas
Branch: SMP
Changes since 1.11.2.4: +26 -26 lines
Diff to previous 1.11.2.4 (colored) to branchpoint 1.11 (colored)
Merge in -current from roughly a week ago
Revision 1.19 / (download) - annotate - [select for diffs], Thu Mar 14 01:27:11 2002 UTC (22 years, 3 months ago) by millert
Branch: MAIN
CVS Tags: OPENBSD_3_1_BASE,
OPENBSD_3_1
Changes since 1.18: +27 -27 lines
Diff to previous 1.18 (colored)
First round of __P removal in sys
Revision 1.11.2.4 / (download) - annotate - [select for diffs], Wed Mar 6 02:15:07 2002 UTC (22 years, 3 months ago) by niklas
Branch: SMP
Changes since 1.11.2.3: +1 -4 lines
Diff to previous 1.11.2.3 (colored) to branchpoint 1.11 (colored)
Merge in trunk
Revision 1.18 / (download) - annotate - [select for diffs], Fri Mar 1 05:06:24 2002 UTC (22 years, 3 months ago) by kjc
Branch: MAIN
Changes since 1.17: +1 -4 lines
Diff to previous 1.17 (colored)
sync with KAME move the function prototype of altq_etherclassify() from netinet/if_ether.h to altq/if_altq.h.
Revision 1.11.2.3 / (download) - annotate - [select for diffs], Wed Jul 4 10:54:29 2001 UTC (22 years, 11 months ago) by niklas
Branch: SMP
Changes since 1.11.2.2: +18 -17 lines
Diff to previous 1.11.2.2 (colored) to branchpoint 1.11 (colored)
Merge in -current from two days ago in the SMP branch. As usual with merges, they do not indicate progress, so do not hold your breath for working SMP, and do not mail me and ask about the state of it. It has not changed. There is work ongoing, but very, very slowly. The commit is done in parts as to not lock up the tree in too big chunks at a time.
Revision 1.17 / (download) - annotate - [select for diffs], Wed Jun 27 06:07:47 2001 UTC (22 years, 11 months ago) by kjc
Branch: MAIN
CVS Tags: UBC_BASE,
OPENBSD_3_0_BASE,
OPENBSD_3_0
Branch point for: UBC
Changes since 1.16: +4 -1 lines
Diff to previous 1.16 (colored)
introduce the ALTQ queue macros into sys/net files. the new model removes direct references to the fields in ifp->if_snd, and defines the following macros to manipulate ifp->if_snd. IFQ_ENQUEUE(ifq, m, pktattr, err) IFQ_DEQUEUE(ifq, m) IFQ_POLL(ifq, m) IFQ_PURGE(ifq) IFQ_IS_EMPTY(ifq) the new model also enforces some rules regarding how to use these macros. details are descrined in http://www.csl.sony.co.jp/~kjc/software/altq-new-design.txt
Revision 1.16 / (download) - annotate - [select for diffs], Sat Jun 23 21:32:26 2001 UTC (22 years, 11 months ago) by fgsch
Branch: MAIN
Changes since 1.15: +10 -16 lines
Diff to previous 1.15 (colored)
Put some constants together and calculate max/min mtu based on those; jason@ ok. This should be moved to net, tho, it's not inet specific.
Revision 1.15 / (download) - annotate - [select for diffs], Sat Jun 9 06:14:32 2001 UTC (23 years ago) by angelos
Branch: MAIN
Changes since 1.14: +6 -2 lines
Diff to previous 1.14 (colored)
Protect from multiple inclusion.
Revision 1.11.2.2 / (download) - annotate - [select for diffs], Mon May 14 22:40:07 2001 UTC (23 years, 1 month ago) by niklas
Branch: SMP
Changes since 1.11.2.1: +4 -3 lines
Diff to previous 1.11.2.1 (colored) to branchpoint 1.11 (colored)
merge in approximately 2.9 into SMP branch
Revision 1.14 / (download) - annotate - [select for diffs], Fri Jan 19 06:37:38 2001 UTC (23 years, 4 months ago) by itojun
Branch: MAIN
CVS Tags: OPENBSD_2_9_BASE,
OPENBSD_2_9
Changes since 1.13: +3 -3 lines
Diff to previous 1.13 (colored)
pull post-4.4BSD change to sys/net/route.c from BSD/OS 4.2 (UCB copyrighted). have sys/net/route.c:rtrequest1(), which takes rt_addrinfo * as the argument. pass rt_addrinfo all the way down to rtrequest, and ifa->ifa_rtrequest. 3rd arg of ifa->ifa_rtrequest is now rt_addrinfo * instead of sockaddr * (almost noone is using it anyways). benefit: the follwoing command now works. previously we need two route(8) invocations, "add" then "change". # route add -inet6 default ::1 -ifp gif0 remove unsafe typecast in rtrequest(), from rtentry * to sockaddr *. it was introduced by 4.3BSD-reno and never corrected. XXX is eon_rtrequest() change correct regarding to 3rd arg? eon_rtrequest() and rtrequest() were incorrect since 4.3BSD-reno, so i do not have correct answer in the source code. someone with more clue about netiso-over-ip, please help.
Revision 1.13 / (download) - annotate - [select for diffs], Thu Dec 28 23:56:47 2000 UTC (23 years, 5 months ago) by mickey
Branch: MAIN
Changes since 1.12: +2 -1 lines
Diff to previous 1.12 (colored)
export arprequest() and make it use ifnet* as the 1st arg; tested; angelos@ ok
Revision 1.11.2.1 / (download) - annotate - [select for diffs], Fri Mar 24 09:09:35 2000 UTC (24 years, 2 months ago) by niklas
Branch: SMP
Changes since 1.11: +18 -1 lines
Diff to previous 1.11 (colored)
Sync with -current
Revision 1.12 / (download) - annotate - [select for diffs], Tue Mar 7 18:15:47 2000 UTC (24 years, 3 months ago) by chris
Branch: MAIN
CVS Tags: OPENBSD_2_8_BASE,
OPENBSD_2_8,
OPENBSD_2_7_BASE,
OPENBSD_2_7
Changes since 1.11: +18 -1 lines
Diff to previous 1.11 (colored)
add ETHERTYPE_8021Q
Revision 1.11 / (download) - annotate - [select for diffs], Thu Feb 10 05:49:28 2000 UTC (24 years, 4 months ago) by jason
Branch: MAIN
CVS Tags: SMP_BASE
Branch point for: SMP
Changes since 1.10: +3 -1 lines
Diff to previous 1.10 (colored)
add PPPoE Discovery- and Session-Stage ETHERTYPEs
Revision 1.10 / (download) - annotate - [select for diffs], Wed Dec 8 06:50:19 1999 UTC (24 years, 6 months ago) by itojun
Branch: MAIN
CVS Tags: kame_19991208
Changes since 1.9: +18 -1 lines
Diff to previous 1.9 (colored)
bring in KAME IPv6 code, dated 19991208. replaces NRL IPv6 layer. reuses NRL pcb layer. no IPsec-on-v6 support. see sys/netinet6/{TODO,IMPLEMENTATION} for more details. GENERIC configuration should work fine as before. GENERIC.v6 works fine as well, but you'll need KAME userland tools to play with IPv6 (will be bringed into soon).
Revision 1.9 / (download) - annotate - [select for diffs], Sun Aug 8 00:43:00 1999 UTC (24 years, 10 months ago) by niklas
Branch: MAIN
CVS Tags: OPENBSD_2_6_BASE,
OPENBSD_2_6
Changes since 1.8: +3 -1 lines
Diff to previous 1.8 (colored)
Support detaching of network interfaces. Still work to do in ipf, and other families than inet.
Revision 1.8 / (download) - annotate - [select for diffs], Mon Aug 2 22:51:16 1999 UTC (24 years, 10 months ago) by deraadt
Branch: MAIN
Changes since 1.7: +2 -2 lines
Diff to previous 1.7 (colored)
Ethernet, not 10 Mb/s Ethernet
Revision 1.7 / (download) - annotate - [select for diffs], Sun May 16 00:34:40 1999 UTC (25 years, 1 month ago) by ho
Branch: MAIN
Changes since 1.6: +4 -3 lines
Diff to previous 1.6 (colored)
Add support for static ARP entries that cannot be overwritten. Ordinary static ARPs that are overwritten will no longer still be static.
Revision 1.6 / (download) - annotate - [select for diffs], Thu Jan 7 09:11:52 1999 UTC (25 years, 5 months ago) by deraadt
Branch: MAIN
CVS Tags: OPENBSD_2_5_BASE,
OPENBSD_2_5
Changes since 1.5: +2 -1 lines
Diff to previous 1.5 (colored)
ipv6 ethertype
Revision 1.5 / (download) - annotate - [select for diffs], Sat Jul 27 11:06:42 1996 UTC (27 years, 10 months ago) by deraadt
Branch: MAIN
CVS Tags: OPENBSD_2_4_BASE,
OPENBSD_2_4,
OPENBSD_2_3_BASE,
OPENBSD_2_3,
OPENBSD_2_2_BASE,
OPENBSD_2_2,
OPENBSD_2_1_BASE,
OPENBSD_2_1,
OPENBSD_2_0_BASE,
OPENBSD_2_0
Changes since 1.4: +2 -1 lines
Diff to previous 1.4 (colored)
pad for machines that do not pad structs out
Revision 1.4 / (download) - annotate - [select for diffs], Wed Jul 3 08:09:45 1996 UTC (27 years, 11 months ago) by deraadt
Branch: MAIN
Changes since 1.3: +9 -1 lines
Diff to previous 1.3 (colored)
prototype ethers(3) functions (inside !_KERNEL), pointed out in netbsd pr#2471, jhawk@mit.edu
Revision 1.3 / (download) - annotate - [select for diffs], Wed May 22 11:48:45 1996 UTC (28 years ago) by deraadt
Branch: MAIN
Changes since 1.2: +1 -3 lines
Diff to previous 1.2 (colored)
When sending an ARP request, use the interface address for the route, rather than the first address assigned. This gives slightly different behaviour in the presence of aliases. From Bill Fenner, via Pete Bentley.
Revision 1.2 / (download) - annotate - [select for diffs], Sun Mar 3 22:30:25 1996 UTC (28 years, 3 months ago) by niklas
Branch: MAIN
Changes since 1.1: +20 -1 lines
Diff to previous 1.1 (colored)
From NetBSD: 960217 merge
Revision 1.1.1.1 / (download) - annotate - [select for diffs] (vendor branch), Wed Oct 18 08:53:10 1995 UTC (28 years, 8 months ago) by deraadt
CVS Tags: netbsd_1_1
Changes since 1.1: +0 -0 lines
Diff to previous 1.1 (colored)
initial import of NetBSD tree
Revision 1.1 / (download) - annotate - [select for diffs], Wed Oct 18 08:53:10 1995 UTC (28 years, 8 months ago) by deraadt
Branch: MAIN
Initial revision