summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorclaudio <claudio@openbsd.org>2010-05-19 13:15:08 +0000
committerclaudio <claudio@openbsd.org>2010-05-19 13:15:08 +0000
commitcc2beff17f7054487a1c3bae55c41ff1488ad444 (patch)
tree92540d92be02fe9a5b4eea6dd16088e91b1b11e9
parentSet RTF_MPLS in rtm_fmask and rtm_flags because ldpd wants to play with (diff)
downloadwireguard-openbsd-cc2beff17f7054487a1c3bae55c41ff1488ad444.tar.xz
wireguard-openbsd-cc2beff17f7054487a1c3bae55c41ff1488ad444.zip
When installing MPLS VPN routes set the RTF_MPLS bit since those routes
have MPLS information connected to them and the kernel requires the flag now. OK michele@
-rw-r--r--usr.sbin/bgpd/kroute.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/usr.sbin/bgpd/kroute.c b/usr.sbin/bgpd/kroute.c
index 99ac8fbc2c5..40591898943 100644
--- a/usr.sbin/bgpd/kroute.c
+++ b/usr.sbin/bgpd/kroute.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: kroute.c,v 1.180 2010/05/18 12:21:33 claudio Exp $ */
+/* $OpenBSD: kroute.c,v 1.181 2010/05/19 13:15:08 claudio Exp $ */
/*
* Copyright (c) 2003, 2004 Henning Brauer <henning@openbsd.org>
@@ -2627,6 +2627,7 @@ send_rtmsg(int fd, int action, struct ktable *kt, struct kroute *kroute)
mpls.smpls_family = AF_MPLS;
mpls.smpls_label = kroute->mplslabel;
/* adjust header */
+ hdr.rtm_flags |= RTF_MPLS;
hdr.rtm_mpls = MPLS_OP_PUSH;
hdr.rtm_addrs |= RTA_SRC;
hdr.rtm_msglen += sizeof(mpls);