| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
|
|
| |
Instead of casts they check wether the incoming object has the
expected type. So introduce satosdl() and sdltosa() in the kernel.
OK mpi@
|
|
|
|
|
|
| |
stop passing it in every rt_ifa_add(9) calls.
ok claudio@
|
|
|
|
|
|
| |
talking about (*ifp->if_output)().
ok 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@
|
|
|
|
|
|
|
|
| |
a packet on the sending queue of an interface.
Tested by many, thanks a lot!
ok dlg@, claudio@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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@
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Since the removal of the link-layer ifa from "struct ifnet" it was
impossible to configure MPLS routes on mpe(4). Because just like
enc(4), mpe(4) was abusing the link-layer ifa to attach its route
entries.
So explicitly pass a "glue" ifa to the routing layer.
From Rafael Zalamena who discovered this the hardway, thanks!
ok claudio@
|
| |
|
|
|
|
|
| |
long live the one true internet.
ok henning mikeb
|
|
|
|
| |
ok mikeb@, krw@, bluhm@, tedu@
|
|
|
|
|
|
| |
functionnality instead of a mix of enable/disable.
ok bluhm@, jca@
|
|
|
|
|
|
| |
kill the macro.
ok mikeb@, henning@
|
|
|
|
|
|
| |
it does not need to be protected by splnet().
Rafael Zalamena agrees, no objection from the MPLS gang.
|
| |
|
|
|
|
| |
after discussions with beck deraadt kettenis.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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@
|
|
|
|
|
|
| |
global variables to in6.h.
ok deraadt@
|
|
|
|
|
|
| |
global variables to in.h.
ok mikeb@, deraadt@
|
|
|
|
|
|
|
| |
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 beck@, mikeb@
|
|
|
|
|
|
|
|
| |
Byte order adjustment for bpf was hidden behind bpf_mtap_af() and
sizeof(u_int32_t) is used for length of the bpf header.
tested by sebastia and mxb at alumni.chalmers.se.
ok claudio
|
|
|
|
| |
From Christiano F. Haesbaert.
|
|
|
|
| |
ok gollo@
|
|
|
|
|
| |
diff from form@ who's too busy drinking vodka with pelmeni to commit this;
ok claudio
|
|
|
|
| |
protocols to EPFNOSUPPORT.
|
|
|
|
|
|
| |
all the magic cleanup happens before. This is needed because mpe(4) needs
to add a route which would be removed by the cleanup code.
OK henning
|
|
|
|
|
|
|
|
|
| |
are required to detect that.
Change the function to take a wait argument (used in nfs server, but
M_NOWAIT everywhere else for now) and to return an error
ok claudio@ henning@ krw@
|
|
|
|
|
|
| |
does no overflow checking and does not set the congestion flag. Protocol
input queues (inet, inet6, ...) should always use IF_INPUT_ENQUEUE().
OK henning@
|
|
|
|
|
|
|
|
|
|
|
| |
ether_output() and later on other L2 output functions use a trick and over-
load the ifp->if_output() function pointer on MPLS enabled interfaces to
go through mpls_output() which will then call the link level output function.
By setting IFXF_MPLS on an interface the output pointers are switched.
This now allows to cleanup the MPLS input and output pathes and fix mpe(4)
so that the MPLS code now actually works for both P and PE systems.
Tested by myself and michele
(A custom kernel with MPLS and mpe enabled is still needed).
|
|
|
|
|
| |
if_detach() which is called right afterwards.
Found by Gleydson Soares (gleydson (at) trusted.com.br)
|
|
|
|
| |
rdomain 0 for now. OK michele@
|
|
|
|
|
|
| |
IFQ_SET_MAXLEN(&ifp->if_snd, ifqmaxlen).
the first was deprecated by the use of IFQ_SET_MAXLEN.
|
|
|
|
|
|
|
|
| |
We can now act as edge node and allow ipv4 packets to
enter a Label Switched Path and not just forwarding
MPLS packets.
OK claudio@
|
|
|
|
| |
OK claudio@ laurent@
|
|
|
|
|
|
|
|
| |
MPLS TTL is mapped into network layer one as the packet exits the LSP.
Just IPv4 support for now.
Added the relevant sysctls to enable this behaviour.
Input and OK claudio@
|
|
|
|
|
|
| |
Strictly similar to mpls_input().
Input and OK claudio@, OK laurent@
|
|
|
|
| |
OK claudio@
|
|
|
|
|
|
| |
Added mpe_input6 to manage also ipv6 packets insted of just ipv4 ones.
OK claudio@ laurent@
|
| |
|
|
|
|
|
|
| |
splnet.
The DLT_MPLS will not go away and will be used for display in tcpdump -y
mpls when the code is there, as suggested by reyk.
|
|
|
|
| |
MPLS. Still a bit hackish but getting closer. hai norby@
|
|
|
|
| |
ok claudio@
|
| |
|
|
|
|
|
|
| |
no consumers yet, they should come soon.
ok norby@
|
|
|
|
|
| |
Make the mtu user definable.
ok claudio@
|
|
|
|
|
|
|
|
| |
While there bump MTU to 1500 and set the receiving interface before
calling mpls_input. mpestart will eventually call mpls_output when it
exists.
``yaaaaayyy'' and ok claudio@ and norby@
|
|
in progress and some bits need to be cleaned up but will be in-tree for
convenience.
ok claudio@, norby@
|