Age | Commit message (Collapse) | Author |
|
|
|
work in the forwarding path.
Tested by Hrvoje Popovski, ok dlg@
|
|
This brings ip_dooptions() closer to mp-safeness by ensuring that
``ifa'' is dereferenced before calling rtfree(9).
ok mikeb@
|
|
this is the second attempt to get it in, the first
attempt got backed out on Jan 31 2016
the change also contains fixes contributed by Stefan Kempf
in earlier iteration.
OK srhen@
|
|
OK sthen@
|
|
OK mpi@ dlg@ sthen@
|
|
an interface joined a specific multicast group.
ok phessler@, visa@, dlg@
|
|
this avoids current recursion to pf_test() function. the change also
switches icmp_error()/icmp6_error() to use ip_send()/ip6_send() so
they are safe for PF.
The idea comes from Markus Friedl. bluhm, mikeb and mpi helped me
a lot to get it into shape.
OK bluhm@, mpi@
|
|
|
|
for failed route lookups. This is something that was maybe useful in the
90is but in this modern times it is just annoying and nothing expect it
anyway. OK mpi@, sthen@
|
|
ok sashan@
|
|
ip_input().
Note that ipmforwarding is not enabled by default.
ok deraadt@, phessler@
|
|
the lifetime of an ``ifa'' is tied to a route entry, so it might no
longer be valid after calling rtfree(9).
While here put a KERNEL_LOCK() around the per-ifp address list iteration.
ok bluhm@
|
|
ok bluhm@
|
|
ifa are refcounted to ensure that rt_ifa is always valid.
|
|
configured addressses.
ok mikeb@
|
|
Local route entries, being now attached to their corresponding interface,
are susceptible to be brought DOWN when a link state change occurs. When
this happens locally configured addresses are no longer reachable.
So keep the previous (original) behavior by forcing such route entries to
always be UP.
ok sthen@, claudio@
|
|
ok mpi@
|
|
ok claudio@
|
|
uvm_fault in in_ouraddr(). Do not use a stale local address from
the routing table.
OK mpi@
|
|
This pseudo-option is a hack to support return-rst on bridge(4). It
passes Ethernet information via a "struct route" through ip_output().
"struct route" is slowly dying...
ok claudio@, benno@
|
|
receiving interface in the packet header of every mbuf.
The interface pointer should now be retrieved when necessary with
if_get(). If a NULL pointer is returned by if_get(), the interface
has probably been destroy/removed and the mbuf should be freed.
Such mechanism will simplify garbage collection of mbufs and limit
problems with dangling ifp pointers.
Tested by jmatthew@ and krw@, discussed with many.
ok mikeb@, bluhm@, dlg@
|
|
annoying trailing, leading and embedded whitespace. No change to
.o files.
ok deraadt@
|
|
ok krw@ miod@
|
|
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@
|
|
have any direct symbols used. Tested for indirect use by compiling
amd64/i386/sparc64 kernels.
ok tedu@ deraadt@
|
|
virtual interface table (vif). Will be used by netstat soon.
Looked over by guenther@
|
|
to current code is that you can no longer call this with a NULL oldlenp
which does not make any sense. OK phessler, henning
Behaviour change pointed out by miod@
|
|
ok claudio@, mikeb@, bluhm@
|
|
ok mikeb@, krw@, bluhm@, tedu@
|
|
for a multicast/broadcast destination address.
These checks have already been done in the Ethernet and IP layers and
the mbuf(9) should contain all the required information at this point.
But since we cannot trust this spaghetti stack, be paranoid and make
sure to set the flags in the IP input routines.
Use explicit comments, requested by deraadt@. ok claudio@
|
|
Note that ifa_ifwithaddr() might return a broadcast address, so if you
don't want one make sure to filter them out.
ok mikeb@
|
|
ok dlg@, uebayasi@, mikeb@
|
|
functionnality instead of a mix of enable/disable.
ok bluhm@, jca@
|
|
kill the macro.
ok mikeb@, henning@
|
|
in_ouraddr().
The lookup done in the forwarding case will hopefully be merged with
this one in the future.
ok kspillner@, bluhm@, claudio@
|
|
rely on "struct route" that should die.
ok claudio@
|
|
ok deraadt@, naddy@
|
|
ok blambert@, mikeb@
|
|
|
|
source address selection logic.
These hacks were only relevant for the NFS diskless boot code in order to
pick the local broadcast address of the only configured interface. So, be
explicit and set this address directly.
Tested by florian@, ok henning@, beck@, chrisz@
|
|
ever used to pass on uint32 (for ipsec). stop that madness and just pass
the uint32, 0 in all cases but the two that pass the ipsec flowinfo.
ok deraadt reyk guenther
|
|
ok gcc & md5 (alas, no binary change)
|
|
Avoid the confusion by using an appropriate name for the variable.
Note that since routing domain IDs are a subset of the set of routing
table IDs, the following idiom is correct:
rtableid = rdomain
But to get the routing domain ID corresponding to a given routing table
ID, you must call rtable_l2(9).
claudio@ likes it, ok mikeb@
|
|
over the input path since it is going to die. Should be no functional
change.
ok mikeb@, lteo@, benno@
|
|
Rename and document rt_timer_count() into rt_timer_queue_count() to
be consistent with the other functions. Remove unused argument from
rt_timer_queue_destroy(), clean the definitions and finally use the
same order in NAME and DESCRIPTION as requested by jmc@.
ok henning@
|
|
statistics sideeffects before. ok lteo naddy
|
|
are are lie, since the software engine emulates hardware offloading
and that is later indistinguishable. so kill the hw cksummed counters.
introduce software checksummed packet counters instead.
tcp/udp handles ip & ipvshit, ip cksum covered, 6 has no ip layer cksum.
as before we still have a miscounting bug for inbound with pf on, to be
fixed in the next step.
found by, prodding & ok naddy
|
|
|
|
|