summaryrefslogtreecommitdiff
path: root/sys/net/if_loop.c
diff options
context:
space:
mode:
authorEsben Norby <norby@cvs.openbsd.org>2008-05-07 12:58:55 +0000
committerEsben Norby <norby@cvs.openbsd.org>2008-05-07 12:58:55 +0000
commitff8b815d19026830301d17e04e54803d10a11fec (patch)
tree0d7f9ee459b3c407a2a2d5e2dfdfe8d105b6da23 /sys/net/if_loop.c
parent96c319cf2f7a52ef91d601c49ecf293b489f5f0f (diff)
Add MPLS support to loopback.
Makes it possible to do evil tricks locally. ok claudio@
Diffstat (limited to 'sys/net/if_loop.c')
-rw-r--r--sys/net/if_loop.c18
1 files changed, 17 insertions, 1 deletions
diff --git a/sys/net/if_loop.c b/sys/net/if_loop.c
index 8966b45016c..195f3cefc59 100644
--- a/sys/net/if_loop.c
+++ b/sys/net/if_loop.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: if_loop.c,v 1.43 2007/12/20 02:53:02 brad Exp $ */
+/* $OpenBSD: if_loop.c,v 1.44 2008/05/07 12:58:54 norby Exp $ */
/* $NetBSD: if_loop.c,v 1.15 1996/05/07 02:40:33 thorpej Exp $ */
/*
@@ -144,6 +144,10 @@
#include <netatalk/at_var.h>
#endif
+#ifdef MPLS
+#include <netmpls/mpls.h>
+#endif
+
#if NBPFILTER > 0
#include <net/bpf.h>
#endif
@@ -299,6 +303,12 @@ looutput(ifp, m, dst, rt)
isr = NETISR_ATALK;
break;
#endif /* NETATALK */
+#ifdef MPLS
+ case AF_MPLS:
+ ifq = &mplsintrq;
+ isr = NETISR_MPLS;
+ break;
+#endif /* MPLS */
default:
printf("%s: can't handle af%d\n", ifp->if_xname,
dst->sa_family);
@@ -355,6 +365,12 @@ lo_altqstart(ifp)
isr = NETISR_IPV6;
break;
#endif
+#ifdef MPLS
+ case AF_MPLS:
+ ifq = &mplsintrq;
+ isr = NETISR_MPLS;
+ break;
+#endif
#ifdef NETATALK
case AF_APPLETALK:
ifq = &atintrq2;