X-Git-Url: https://git.decadent.org.uk/gitweb/?p=odhcp6c.git;a=blobdiff_plain;f=src%2Fdhcpv6.c;h=05794c6e570c58740627a5c4351fa6bab3060e57;hp=e9e6aafe0c260394081e067191477dbb5eddacdf;hb=2037bd1f310239f1982f3bd2f541ba409ee16b6a;hpb=a76c62d6a528d7b22aff49f5fd662af02976cfbe diff --git a/src/dhcpv6.c b/src/dhcpv6.c index e9e6aaf..05794c6 100644 --- a/src/dhcpv6.c +++ b/src/dhcpv6.c @@ -60,7 +60,7 @@ static int dhcpv6_commit_advert(void); static struct dhcpv6_retx dhcpv6_retx[_DHCPV6_MSG_MAX] = { [DHCPV6_MSG_UNKNOWN] = {false, 1, 120, "", dhcpv6_handle_reconfigure, NULL}, - [DHCPV6_MSG_SOLICIT] = {true, 1, 3600, "SOLICIT", + [DHCPV6_MSG_SOLICIT] = {true, 1, 120, "SOLICIT", dhcpv6_handle_advert, dhcpv6_commit_advert}, [DHCPV6_MSG_REQUEST] = {true, 1, 30, "REQUEST", dhcpv6_handle_reply, NULL}, @@ -90,9 +90,10 @@ static uint8_t reconf_key[16]; -int init_dhcpv6(const char *ifname, int request_pd) +int init_dhcpv6(const char *ifname, int request_pd, int sol_timeout) { request_prefix = request_pd; + dhcpv6_retx[DHCPV6_MSG_SOLICIT].max_timeo = sol_timeout; sock = socket(AF_INET6, SOCK_DGRAM | SOCK_CLOEXEC, IPPROTO_UDP);