diff options
Diffstat (limited to 'accel-pppd/ppp/ipcp_opt_dns.c')
-rw-r--r-- | accel-pppd/ppp/ipcp_opt_dns.c | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/accel-pppd/ppp/ipcp_opt_dns.c b/accel-pppd/ppp/ipcp_opt_dns.c index f402844..56160fe 100644 --- a/accel-pppd/ppp/ipcp_opt_dns.c +++ b/accel-pppd/ppp/ipcp_opt_dns.c @@ -151,11 +151,15 @@ static void ev_dns(struct ev_dns_t *ev) ppp = container_of(ev->ses, typeof(*ppp), ses); - dns_opt = container_of(ipcp_find_option(ppp, &dns1_opt_hnd), typeof(*dns_opt), opt); - dns_opt->addr = ev->dns1; + if (ev->dns1) { + dns_opt = container_of(ipcp_find_option(ppp, &dns1_opt_hnd), typeof(*dns_opt), opt); + dns_opt->addr = ev->dns1; + } - dns_opt = container_of(ipcp_find_option(ppp, &dns2_opt_hnd), typeof(*dns_opt), opt); - dns_opt->addr = ev->dns2; + if (ev->dns2) { + dns_opt = container_of(ipcp_find_option(ppp, &dns2_opt_hnd), typeof(*dns_opt), opt); + dns_opt->addr = ev->dns2; + } } static void load_config(void) |