aboutsummaryrefslogtreecommitdiffstats
path: root/ggsn/icmpv6.h
diff options
context:
space:
mode:
authorHarald Welte <laforge@gnumonks.org>2017-09-24 20:00:34 +0800
committerHarald Welte <laforge@gnumonks.org>2017-09-24 20:51:47 +0800
commitf85fe9720be14acc1038ed400654d8ce336274a7 (patch)
treee12f5279f153547a1d5b433bfbd62c9ef7868831 /ggsn/icmpv6.h
parentfed598f41d85cef578925a4be6ce96a2c6afd3b3 (diff)
ICMPv6: Send router advertisement from own link-local address
I'm not quite sure how I ended up doing this, but for some strange reason the code before this commit is sending the ICMPv6 Router Advertisements from some weird non-standard source address. This is a violation of RFC4861 which clearly states that the source address of router advertisements "MUST be the link-local address assigned to the interface from which this message is sent." Change-Id: Ib444af70fc8f0b433d371281601fd5a37b29039e
Diffstat (limited to 'ggsn/icmpv6.h')
-rw-r--r--ggsn/icmpv6.h3
1 files changed, 2 insertions, 1 deletions
diff --git a/ggsn/icmpv6.h b/ggsn/icmpv6.h
index ebff04e..b6eec63 100644
--- a/ggsn/icmpv6.h
+++ b/ggsn/icmpv6.h
@@ -3,4 +3,5 @@
#include "../gtp/gtp.h"
#include "../gtp/pdp.h"
-int handle_router_mcast(struct gsn_t *gsn, struct pdp_t *pdp, const uint8_t *pack, unsigned len);
+int handle_router_mcast(struct gsn_t *gsn, struct pdp_t *pdp, const struct in6_addr *own_ll_addr,
+ const uint8_t *pack, unsigned len);