diff options
Diffstat (limited to 'accel-pppd/ipv6/dhcpv6.c')
-rw-r--r-- | accel-pppd/ipv6/dhcpv6.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/accel-pppd/ipv6/dhcpv6.c b/accel-pppd/ipv6/dhcpv6.c index f147a8cd..9c31507a 100644 --- a/accel-pppd/ipv6/dhcpv6.c +++ b/accel-pppd/ipv6/dhcpv6.c @@ -60,12 +60,17 @@ static void ev_ses_started(struct ap_session *ses) struct ipv6_mreq mreq; struct dhcpv6_pd *pd; struct sockaddr_in6 addr; + struct ipv6db_addr_t *a; int sock; int f = 1; if (!ses->ipv6) return; + a = list_entry(ses->ipv6->addr_list.next, typeof(*a), entry); + if (a->prefix_len == 0) + return; + sock = net->socket(AF_INET6, SOCK_DGRAM, 0); if (!sock) { log_ppp_error("dhcpv6: socket: %s\n", strerror(errno)); |