]> git.ipfire.org Git - thirdparty/dhcpcd.git/commitdiff
Don't error if the interface goes away.
authorRoy Marples <roy@marples.name>
Thu, 6 Jun 2013 12:38:14 +0000 (12:38 +0000)
committerRoy Marples <roy@marples.name>
Thu, 6 Jun 2013 12:38:14 +0000 (12:38 +0000)
dhcp6.c
ipv6ns.c
ipv6rs.c

diff --git a/dhcp6.c b/dhcp6.c
index d44e227fa5642f1548406089796c2e2511f70a7a..d50092b9b6cd97eb89a243be346838a362fa2d86 100644 (file)
--- a/dhcp6.c
+++ b/dhcp6.c
@@ -688,7 +688,7 @@ dhcp6_freedrop_addrs(struct interface *ifp, int drop)
                        syslog(LOG_INFO, "%s: deleting address %s",
                            ap->iface->name, ap->saddr);
                        if (del_address6(ap) == -1 &&
-                           errno != EADDRNOTAVAIL)
+                           errno != EADDRNOTAVAIL && errno != ENXIO)
                                syslog(LOG_ERR, "del_address6 %m");
                }
                free(ap);
index 5ffcc682defe1cb81c3e32a414423f5211a1b437..a8ec63d4e1d86d3d18895296506775236b3cb1a6 100644 (file)
--- a/ipv6ns.c
+++ b/ipv6ns.c
@@ -394,7 +394,7 @@ ipv6ns_probeaddrs(struct ipv6_addrhead *addrs)
                                i++;
                        }
                        if (del_address6(ap) == -1 &&
-                           errno != EADDRNOTAVAIL)
+                           errno != EADDRNOTAVAIL && errno != ENXIO)
                                syslog(LOG_ERR, "del_address6 %m");
                        if (ap->dadcallback)
                                eloop_q_timeout_delete(0, NULL,
index ff02d5a536005854cc3b4bccb045b2a3c5baf8f1..3130297fa348352c3847f676edfe68085b1ac548 100644 (file)
--- a/ipv6rs.c
+++ b/ipv6rs.c
@@ -325,7 +325,7 @@ ipv6rs_freedrop_addrs(struct ra *rap, int drop)
                        syslog(LOG_INFO, "%s: deleting address %s",
                            rap->iface->name, ap->saddr);
                        if (del_address6(ap) == -1 &&
-                           errno != EADDRNOTAVAIL)
+                           errno != EADDRNOTAVAIL && errno != ENXIO)
                                syslog(LOG_ERR, "del_address6 %m");
                }
                free(ap);