diff options
author | Dave Barach <dave@barachs.net> | 2022-10-30 16:45:24 -0400 |
---|---|---|
committer | Matthew Smith <mgsmith@netgate.com> | 2022-11-05 19:11:12 +0000 |
commit | f094ce7653917b8c331a79c088ef63ea2679c40d (patch) | |
tree | 64affc51c42375c60064a8adf11c6ed55f5a25cd /src/vnet/ip6-nd/ip6_ra.c | |
parent | 23c989642c1061e5ebbbe55b6fbde274e0914a90 (diff) |
ip6-nd: initialize radv_info->send_radv to 1
Otherwise, the newly configured interface will never send RADV's.
See below. In the typical case, suppress = 0 and is_no = 0, which
propagates the current value of radv->send_radv:
radv_info->send_radv =
(suppress != 0) ? ((is_no != 0) ? 1 : 0) : radv_info->send_radv;
No other bit of code will set send_radv, at least in straightforward
ways.
Type:fix
Signed-off-by: Dave Barach <dave@barachs.net>
Change-Id: If9368155f7676460ca1f87729c2b3c453405d08d
Diffstat (limited to 'src/vnet/ip6-nd/ip6_ra.c')
-rw-r--r-- | src/vnet/ip6-nd/ip6_ra.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/vnet/ip6-nd/ip6_ra.c b/src/vnet/ip6-nd/ip6_ra.c index 53f5a41418c..8cd7ab9e905 100644 --- a/src/vnet/ip6-nd/ip6_ra.c +++ b/src/vnet/ip6-nd/ip6_ra.c @@ -1700,6 +1700,9 @@ ip6_ra_config (vlib_main_t * vm, u32 sw_if_index, if (!radv_info) return (VNET_API_ERROR_IP6_NOT_ENABLED); + /* Start off believing that we're going to send radv's */ + radv_info->send_radv = 1; + if ((max_interval != 0) && (min_interval == 0)) min_interval = .75 * max_interval; |