summaryrefslogtreecommitdiffhomepage
path: root/src/router.c
diff options
context:
space:
mode:
authorHans Dedecker <dedeckeh@gmail.com>2014-07-01 21:26:34 +0200
committerHans Dedecker <dedeckeh@gmail.com>2014-07-01 21:46:32 +0200
commit1bbf34a1df3e16865b3b9330b338952076bc26f9 (patch)
treebb78767e3f84b2683cc20ad00e5a20eaf8eb735d /src/router.c
parent4267915aef64aae345972c77148b11759a172b14 (diff)
DHCPv6 destination address check
As described in RFC3315 §15 any solicit, confirm, rebind or information request message is discarded if the destination address is unicast Likewise any request (§18.2.1), renew (§18.2.3), release (§18.2.6) or decline (§18.2.7) message is discarded and the server replies with the status code use multicast.
Diffstat (limited to 'src/router.c')
-rw-r--r--src/router.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/router.c b/src/router.c
index 772d770..f8ba5d7 100644
--- a/src/router.c
+++ b/src/router.c
@@ -30,7 +30,7 @@ static void forward_router_solicitation(const struct interface *iface);
static void forward_router_advertisement(uint8_t *data, size_t len);
static void handle_icmpv6(void *addr, void *data, size_t len,
- struct interface *iface);
+ struct interface *iface, void *dest);
static void send_router_advert(struct uloop_timeout *event);
static void sigusr1_refresh(int signal);
@@ -170,7 +170,7 @@ static bool router_icmpv6_valid(struct sockaddr_in6 *source, uint8_t *data, size
// Event handler for incoming ICMPv6 packets
static void handle_icmpv6(void *addr, void *data, size_t len,
- struct interface *iface)
+ struct interface *iface, _unused void *dest)
{
struct icmp6_hdr *hdr = data;