From 6bb1273e83c29b3aeff9584bc8f6272e773294ad Mon Sep 17 00:00:00 2001 From: Denis Ovsienko Date: Sun, 8 Jan 2012 17:46:34 +0400 Subject: zebra: clear host bits of ND RA prefix option RFC4861 4.6.2. Prefix Information Prefix An IP address or a prefix of an IP address. The Prefix Length field contains the number of valid leading bits in the prefix. The bits in the prefix after the prefix length are reserved and MUST be initialized to zero by the sender and ignored by the receiver. * rtadv.c * ipv6_nd_prefix(): add missing call to apply_mask_ipv6() * no_ipv6_nd_prefix(): idem --- zebra/rtadv.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/zebra/rtadv.c b/zebra/rtadv.c index 01f88336..c6771bbc 100644 --- a/zebra/rtadv.c +++ b/zebra/rtadv.c @@ -1202,6 +1202,7 @@ DEFUN (ipv6_nd_prefix, vty_out (vty, "Malformed IPv6 prefix%s", VTY_NEWLINE); return CMD_WARNING; } + apply_mask_ipv6 (&rp.prefix); /* RFC4861 4.6.2 */ rp.AdvOnLinkFlag = 1; rp.AdvAutonomousFlag = 1; rp.AdvRouterAddressFlag = 0; @@ -1429,6 +1430,7 @@ DEFUN (no_ipv6_nd_prefix, vty_out (vty, "Malformed IPv6 prefix%s", VTY_NEWLINE); return CMD_WARNING; } + apply_mask_ipv6 (&rp.prefix); /* RFC4861 4.6.2 */ ret = rtadv_prefix_reset (zebra_if, &rp); if (!ret) -- cgit v1.2.1