Age | Commit message (Collapse) | Author |
|
Try to follow the existing examples. Some notes:
- don't implement counters_dec() yet, which could be used in two
similar chunks of code. Let's see if there are more users first.
- stop incrementing IPv6-specific mbuf stats, IPv4 has no equivalent.
Input from mpi@, ok bluhm@ mpi@
|
|
the netlock held. This also changes the prototypes of the *ctloutput
functions to take an mbuf instead of an mbuf pointer.
help, guidance from bluhm@ and mpi@
ok bluhm@
|
|
ok rzalamena@, visa@
|
|
ok mpi@
|
|
time_second is unix time so it can be affected by clock changes.
time_uptime is monotonic so it isnt affected by clock changes. that
in turn means route expiries wont jump with clock changes if set
against time_uptime.
the expiry is translated into unix time for export to userland though.
Should fix mismatch between route timers that were already converted
and ND default routers that were still using time_second.
Tested by matthieu@ and sthen@
ok sthen@, dlg@
|
|
This is a little step towards deprecating 'struct route{,_in6}'.
ok jca@, claudio@
|
|
has been moved to nd6_resolve().
ok visa@, millert@, florian@, sthen@
|
|
an interface joined a specific multicast group.
ok phessler@, visa@, dlg@
|
|
|
|
|
|
using an interface based on the value of ``ip_mrouter''.
Calling SIOCDELMULTI on an interface is correct even if such daemon is
running because the Ethernet layer refcounts currently joined multicast
groups.
|
|
Such interface is created on the fly so if_get() could return NULL because
mif6c_pifi doesn't mean what you think in this case.
|
|
|
|
allocate the register ifp such that if_get() works.
|
|
|
|
|
|
die and ifp->if_mtu is the one true mtu.
Suggested by and OK mpi@
|
|
needs to see lo0 in the output path.
ok claudio@
|
|
Use instead the RTF_LOCAL flag to loop local traffic back to the
corresponding protocol queue.
With this change rt_ifp is now always the same as rt_ifa->ifa_ifp.
ok claudio@
|
|
the protocol queues.
It basically does what looutput() was doing but having a generic
function will allow us to get rid of the loopback hack overwwritting
the rt_ifp field of RTF_LOCAL routes.
ok mikeb@, dlg@, claudio@
|
|
ifpp - XXX: just for statistics
ifpp is always NULL in all callers so that statistic confirms ifpp is
dying
OK mpi@
|
|
which is probably not even needed here but who knows for sure.
OK dlg@
|
|
everywhere to avoid passing around pointers to uninitialized stack
memory. While there, fix the call to in6_recoverscope() in
fill_drlist().
OK deraadt@ mpi@
|
|
|
|
ok millert@
|
|
compatibility with 4.3BSD in September 1989.
*Pick your own definition for "temporary".
ok bluhm@, claudio@, dlg@
|
|
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@
|
|
|
|
have any direct symbols used. Tested for indirect use by compiling
amd64/i386/sparc64 kernels.
ok tedu@ deraadt@
|
|
multicast interface table (mif6). Will be used by netstat soon.
Looked over by guenther@
|
|
ip_mroute.c
requested by and ok claudio@
|
|
the still static functions in ip_mroute.c
OK phessler, henning
|
|
long live the one true internet.
ok henning mikeb
|
|
Prodded by claudio@ and mikeb@
|
|
Output interface (port) selection for multicast traffic is not done via
route lookups. Instead the output ifp is registred when setsockopt(2)
is called with the IP{V6,}_MULTICAST_IF option. But since there is no
mechanism to invalidate such pointer stored in a pcb when an interface
is destroyed/removed, it might lead your kernel to fault.
Prevent a fault upon resume reported by frantisek holop, thanks!
ok mikeb@, claudio@
|
|
ok mikeb@, krw@, bluhm@, tedu@
|
|
ok miod@ mpi@
|
|
|
|
|
|
after discussions with beck deraadt kettenis.
|
|
|
|
EACCES to EPERM. EACCES is meant for file access permissions (as
documented on the errno(2) man page), so EPERM seems more appropriate.
Based on a similar change from FreeBSD via Loganaden Velvindron.
ok bluhm@
|
|
network to presentation format to inet_ntop().
The few remaining functions will be soon converted.
ok mikeb@, deraadt@ and moral support from henning@
|
|
|
|
|
|
created a bunch of useless dependencies. Remove this implicit
inclusion and do an explicit #include <netinet6/in6_var.h> when it
is needed.
OK mpi@ henning@
|
|
ok claudio@, henning@
|
|
with sin6tosa() or satosin6() inline functions. This allows the
compiler to check the types more strictly.
OK mpi@
|
|
|
|
ok deraadt@, tedu@ (implicit)
|