summaryrefslogtreecommitdiffstats
path: root/sys/netinet
diff options
context:
space:
mode:
authorrwatson <rwatson@FreeBSD.org>2002-10-20 21:59:00 +0000
committerrwatson <rwatson@FreeBSD.org>2002-10-20 21:59:00 +0000
commit709dbb6b2bf3f2dae55cc85643f2590fd022ff7c (patch)
treee32fa3ca39cb9a8c17a8c4b9209ed7bb9244ab49 /sys/netinet
parentae80af26375e03859adf969d1a27526faf547076 (diff)
downloadFreeBSD-src-709dbb6b2bf3f2dae55cc85643f2590fd022ff7c.zip
FreeBSD-src-709dbb6b2bf3f2dae55cc85643f2590fd022ff7c.tar.gz
When a packet is multicast encapsulated, give labeled policies the
opportunity to preserve the label. Obtained from: TrustedBSD Project Sponsored by: DARPA, Network Associates Laboratories
Diffstat (limited to 'sys/netinet')
-rw-r--r--sys/netinet/ip_mroute.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/sys/netinet/ip_mroute.c b/sys/netinet/ip_mroute.c
index 72772d3..6449696 100644
--- a/sys/netinet/ip_mroute.c
+++ b/sys/netinet/ip_mroute.c
@@ -12,12 +12,14 @@
* $FreeBSD$
*/
+#include "opt_mac.h"
#include "opt_mrouting.h"
#include "opt_random_ip_id.h"
#include <sys/param.h>
#include <sys/kernel.h>
#include <sys/lock.h>
+#include <sys/mac.h>
#include <sys/malloc.h>
#include <sys/mbuf.h>
#include <sys/protosw.h>
@@ -1630,6 +1632,9 @@ encap_send(ip, vifp, m)
MGETHDR(mb_copy, M_DONTWAIT, MT_HEADER);
if (mb_copy == NULL)
return;
+#ifdef MAC
+ mac_create_mbuf_multicast_encap(m, vifp->v_ifp, mb_copy);
+#endif
mb_copy->m_data += max_linkhdr;
mb_copy->m_len = sizeof(multicast_encap_iphdr);
OpenPOWER on IntegriCloud