X-Git-Url: https://git.decadent.org.uk/gitweb/?a=blobdiff_plain;f=src%2Fodhcp6c.c;h=02f926aac3b00e7f6a4758e0344a4b54d3cc1168;hb=dd5f1f8ca0a24d23dc426d6e89d9855a7b97fcec;hp=2cb4bbcf10a200797e2268bae6120aeb250a2928;hpb=2694232fb6fd00351dcd51609aac08b66fb2b1d8;p=odhcp6c.git diff --git a/src/odhcp6c.c b/src/odhcp6c.c index 2cb4bbc..02f926a 100644 --- a/src/odhcp6c.c +++ b/src/odhcp6c.c @@ -164,11 +164,16 @@ int main(_unused int argc, char* const argv[]) } } + script_call("started"); + while (do_signal != SIGTERM) { // Main logic odhcp6c_clear_state(STATE_SERVER_ID); odhcp6c_clear_state(STATE_SERVER_CAND); odhcp6c_clear_state(STATE_IA_PD); - odhcp6c_clear_state(STATE_IA_PD_LOST); + odhcp6c_clear_state(STATE_SNTP_IP); + odhcp6c_clear_state(STATE_SNTP_FQDN); + odhcp6c_clear_state(STATE_SIP_IP); + odhcp6c_clear_state(STATE_SIP_FQDN); dhcpv6_set_ia_na_mode(ia_na_mode); alarm(timeout); @@ -255,12 +260,11 @@ int main(_unused int argc, char* const argv[]) size_t ia_pd_len, ia_na_len, server_id_len; - uint8_t *ia_pd = odhcp6c_get_state(STATE_IA_PD, &ia_pd_len); + odhcp6c_get_state(STATE_IA_PD, &ia_pd_len); odhcp6c_get_state(STATE_IA_NA, &ia_na_len); odhcp6c_get_state(STATE_SERVER_ID, &server_id_len); // Add all prefixes to lost prefixes - odhcp6c_add_state(STATE_IA_PD_LOST, ia_pd, ia_pd_len); odhcp6c_clear_state(STATE_IA_PD); if (do_signal == SIGALRM) @@ -276,6 +280,7 @@ int main(_unused int argc, char* const argv[]) dhcpv6_request(DHCPV6_MSG_RELEASE); } + script_call("stopped"); return 0; } @@ -302,7 +307,7 @@ static int usage(void) // Don't want to pull-in librt and libpthread just for a monotonic clock... -uint64_t adhc6c_get_milli_time(void) +uint64_t odhcp6c_get_milli_time(void) { struct timespec t = {0, 0}; syscall(SYS_clock_gettime, CLOCK_MONOTONIC, &t);