diff options
author | rwatson <rwatson@FreeBSD.org> | 2002-10-20 21:59:00 +0000 |
---|---|---|
committer | rwatson <rwatson@FreeBSD.org> | 2002-10-20 21:59:00 +0000 |
commit | 709dbb6b2bf3f2dae55cc85643f2590fd022ff7c (patch) | |
tree | e32fa3ca39cb9a8c17a8c4b9209ed7bb9244ab49 /sys/netinet/ip_mroute.c | |
parent | ae80af26375e03859adf969d1a27526faf547076 (diff) | |
download | FreeBSD-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/ip_mroute.c')
-rw-r--r-- | sys/netinet/ip_mroute.c | 5 |
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); |