diff options
author | 2014-05-12 18:50:02 +0000 | |
---|---|---|
committer | 2014-05-12 18:50:02 +0000 | |
commit | cdfdaaa3e0eb9f80bc7497d32d017f45850af2a5 (patch) | |
tree | bb79cf515e7ab6d322061f4cd449342f094cf0f3 | |
parent | Keep libusbhid's HID parser in sync with the kernel one. This is mostly (diff) | |
download | wireguard-openbsd-cdfdaaa3e0eb9f80bc7497d32d017f45850af2a5.tar.xz wireguard-openbsd-cdfdaaa3e0eb9f80bc7497d32d017f45850af2a5.zip |
Don't exit on encountering RTM_NEWADDR or RTM_DELADDR routing messages
that lack the appropriate address info.
Simply ignore the message as is done for short or incorrectly
versioned messages
ok claudio@
-rw-r--r-- | sbin/dhclient/dhclient.c | 14 |
1 files changed, 5 insertions, 9 deletions
diff --git a/sbin/dhclient/dhclient.c b/sbin/dhclient/dhclient.c index 2289d96e00a..50356a086c8 100644 --- a/sbin/dhclient/dhclient.c +++ b/sbin/dhclient/dhclient.c @@ -1,4 +1,4 @@ -/* $OpenBSD: dhclient.c,v 1.305 2014/05/11 14:00:52 krw Exp $ */ +/* $OpenBSD: dhclient.c,v 1.306 2014/05/12 18:50:02 krw Exp $ */ /* * Copyright 2004 Henning Brauer <henning@openbsd.org> @@ -237,10 +237,8 @@ routehandler(void) break; sa = get_ifa((char *)ifam + ifam->ifam_hdrlen, ifam->ifam_addrs); - if (sa == NULL) { - rslt = asprintf(&errmsg, "%s sa == NULL", ifi->name); - goto die; - } + if (sa == NULL) + goto done; memcpy(&a, &((struct sockaddr_in *)sa)->sin_addr, sizeof(a)); if (a.s_addr == INADDR_ANY) @@ -280,10 +278,8 @@ routehandler(void) break; sa = get_ifa((char *)ifam + ifam->ifam_hdrlen, ifam->ifam_addrs); - if (sa == NULL) { - rslt = asprintf(&errmsg, "%s sa == NULL", ifi->name); - goto die; - } + if (sa == NULL) + goto done; memcpy(&a, &((struct sockaddr_in *)sa)->sin_addr, sizeof(a)); if (a.s_addr == INADDR_ANY) |