summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--README1
-rw-r--r--src/dhcpv6.c4
-rw-r--r--src/odhcp6c.c4
-rw-r--r--src/odhcp6c.h1
-rw-r--r--src/script.c5
5 files changed, 2 insertions, 13 deletions
diff --git a/README b/README
index 50b4a28..421475f 100644
--- a/README
+++ b/README
@@ -56,7 +56,6 @@ Environment:
* OPTION_<num> Custom option received as base-16
* PREFIXES A space-separated list of prefixes currently assigned
Format: <prefix>/<length>,preferred,valid
-* PREFIXES_LOST A space-separated list of prefixes lost since last update
diff --git a/src/dhcpv6.c b/src/dhcpv6.c
index 4dcf8e4..9cb55ad 100644
--- a/src/dhcpv6.c
+++ b/src/dhcpv6.c
@@ -772,10 +772,6 @@ static time_t dhcpv6_parse_ia(void *opt, void *end)
if (timeout > valid)
timeout = valid;
-
- if (prefix->valid == 0) // We probably lost that prefix
- odhcp6c_add_state(STATE_IA_PD_LOST,
- prefix, olen);
} else if (otype == DHCPV6_OPT_IA_ADDR) {
struct dhcpv6_ia_addr *addr = (void*)&odata[-4];
if (olen + 4U < sizeof(*addr))
diff --git a/src/odhcp6c.c b/src/odhcp6c.c
index 163db09..02f926a 100644
--- a/src/odhcp6c.c
+++ b/src/odhcp6c.c
@@ -170,7 +170,6 @@ int main(_unused int argc, char* const argv[])
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);
@@ -261,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)
diff --git a/src/odhcp6c.h b/src/odhcp6c.h
index 442393b..04a32ec 100644
--- a/src/odhcp6c.h
+++ b/src/odhcp6c.h
@@ -157,7 +157,6 @@ enum odhcp6c_state {
STATE_SEARCH,
STATE_IA_NA,
STATE_IA_PD,
- STATE_IA_PD_LOST,
STATE_CUSTOM_OPTS,
STATE_SNTP_IP,
STATE_SNTP_FQDN,
diff --git a/src/script.c b/src/script.c
index ae791cc..f0d4af2 100644
--- a/src/script.c
+++ b/src/script.c
@@ -170,9 +170,8 @@ void script_call(const char *status)
struct in6_addr *sip = odhcp6c_get_state(STATE_SIP_IP, &sip_ip_len);
uint8_t *sip_fqdn = odhcp6c_get_state(STATE_SIP_FQDN, &sip_fqdn_len);
- size_t prefix_len, lost_pd_len;
+ size_t prefix_len;
uint8_t *prefix = odhcp6c_get_state(STATE_IA_PD, &prefix_len);
- uint8_t *lost_pd = odhcp6c_get_state(STATE_IA_PD_LOST, &lost_pd_len);
// Don't set environment before forking, because env is leaky.
if (fork() == 0) {
@@ -184,7 +183,6 @@ void script_call(const char *status)
fqdn_to_env("SIP_DOMAIN", sip_fqdn, sip_fqdn_len);
bin_to_env(custom, custom_len);
prefix_to_env("PREFIXES", prefix, prefix_len);
- prefix_to_env("PREFIXES_LOST", lost_pd, lost_pd_len);
argv[2] = (char*)status;
execv(argv[0], argv);
@@ -192,6 +190,5 @@ void script_call(const char *status)
}
// Delete lost prefixes and user opts
- odhcp6c_clear_state(STATE_IA_PD_LOST);
odhcp6c_clear_state(STATE_CUSTOM_OPTS);
}