diff options
| author | Roy Marples <roy@marples.name> | 2016-11-23 21:08:30 +0000 |
|---|---|---|
| committer | Roy Marples <roy@marples.name> | 2016-11-23 21:08:30 +0000 |
| commit | 69560ba432ba64433e2927b5a30444ade71fa6a7 (patch) | |
| tree | 4161f1c1dd7f8656c62d9c2999aaa354db8a9ccb /if-bsd.c | |
| parent | 8c24e7ccd87e5a0cc8bd9d0eec808fe92518ffe4 (diff) | |
| download | dhcpcd-69560ba432ba64433e2927b5a30444ade71fa6a7.tar.xz | |
Backout prior, added stuff by mistake.
Diffstat (limited to 'if-bsd.c')
| -rw-r--r-- | if-bsd.c | 25 |
1 files changed, 12 insertions, 13 deletions
@@ -1345,24 +1345,23 @@ inet6_sysctl(int code, int val, int action) #endif #ifdef IPV6_MANAGETEMPADDR -#if !defined(IPV6CTL_TEMPVLTIME) +#ifndef IPV6CTL_TEMPVLTIME +#define get_inet6_sysctlbyname(code) inet6_sysctlbyname(code, 0, 0) +#define set_inet6_sysctlbyname(code, val) inet6_sysctlbyname(code, val, 1) static int -get_sysctlbyname(const char *name) +inet6_sysctlbyname(const char *name, int val, int action) { -#ifdef __OpenBSD__ - /* OpenBSD seems to have it enabled by default .... */ - - UNUSED(name); - return -1; -#else - int val; size_t size; size = sizeof(val); + if (action) { + if (sysctlbyname(name, NULL, 0, &val, size) == -1) + return -1; + return 0; + } if (sysctlbyname(name, &val, &size, NULL, 0) == -1) return -1; return val; -#endif } #endif @@ -1374,7 +1373,7 @@ ip6_use_tempaddr(__unused const char *ifname) #ifdef IPV6CTL_USETEMPADDR val = get_inet6_sysctl(IPV6CTL_USETEMPADDR); #else - val = get_sysctlbyname("net.inet6.ip6.use_tempaddr"); + val = get_inet6_sysctlbyname("net.inet6.ip6.use_tempaddr"); #endif return val == -1 ? 0 : val; } @@ -1387,7 +1386,7 @@ ip6_temp_preferred_lifetime(__unused const char *ifname) #ifdef IPV6CTL_TEMPPLTIME val = get_inet6_sysctl(IPV6CTL_TEMPPLTIME); #else - val = get_sysctlbyname("net.inet6.ip6.temppltime"); + val = get_inet6_sysctlbyname("net.inet6.ip6.temppltime"); #endif return val < 0 ? TEMP_PREFERRED_LIFETIME : val; } @@ -1400,7 +1399,7 @@ ip6_temp_valid_lifetime(__unused const char *ifname) #ifdef IPV6CTL_TEMPVLTIME val = get_inet6_sysctl(IPV6CTL_TEMPVLTIME); #else - val = get_sysctlbyname("net.inet6.ip6.tempvltime"); + val = get_inet6_sysctlbyname("net.inet6.ip6.tempvltime"); #endif return val < 0 ? TEMP_VALID_LIFETIME : val; } |
