diff --git a/CHANGELOG b/CHANGELOG index 4d88d94..75ed568 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -29,6 +29,15 @@ version 2.63 Allow the target of a --cname flag to be another --cname. + Teach DHCPv6 about the RFC 4242 information-refresh-time + option, and add parsing if the minutes, hours and days + format for options. Thanks to Francois-Xavier Le Bail for + the suggestion. + + Allow "w" (for week) as multiplier in lease times, as well + as seconds, minutes, hours and days. Álvaro Gámez Machado + spotted the ommission. + version 2.62 Update German translation. Thanks to Conrad Kostecki. @@ -54,12 +63,6 @@ version 2.62 two addresses in the same network. Thanks to Jim Bos for his help nailing this. - Teach DHCPv6 about the RFC 4242 information-refresh-time - option, and add parsing if the minutes, hours and days - format for options. Thanks to Francois-Xavier Le Bail for - the suggestion. - - version 2.61 Re-write interface discovery code on *BSD to use getifaddrs. This is more portable, more straightforward, diff --git a/src/option.c b/src/option.c index 7cdd243..e47967f 100644 --- a/src/option.c +++ b/src/option.c @@ -818,6 +818,10 @@ static int parse_dhcp_opt(char *errstr, char *arg, int flags) switch (comma[strlen(comma) - 1]) { + case 'w': + case 'W': + fac *= 7; + /* fall through */ case 'd': case 'D': fac *= 24; @@ -2156,6 +2160,10 @@ static int one_opt(int option, char *arg, char *errstr, char *gen_err, int comma { switch (a[leasepos][strlen(a[leasepos]) - 1]) { + case 'w': + case 'W': + fac *= 7; + /* fall through */ case 'd': case 'D': fac *= 24; @@ -2306,6 +2314,10 @@ static int one_opt(int option, char *arg, char *errstr, char *gen_err, int comma last = *lastp; switch (last) { + case 'w': + case 'W': + fac *= 7; + /* fall through */ case 'd': case 'D': fac *= 24;