summaryrefslogtreecommitdiffstats
path: root/src/if-bsd.c
diff options
context:
space:
mode:
authorRoy Marples <roy@marples.name>2017-04-21 23:21:59 +0100
committerRoy Marples <roy@marples.name>2017-04-21 23:22:59 +0100
commit91fabb156b69930d80e23391bd2606653340db08 (patch)
tree4d8f3f2a5770385e5958b2961d94f1a462ae0b29 /src/if-bsd.c
parentdd0311a9d743e79bbb1795c12d4efb6c78f9e0bf (diff)
downloaddhcpcd-91fabb156b69930d80e23391bd2606653340db08.tar.xz
BSD: if failed to open PF_ROUTE socket, don't set filters.
Diffstat (limited to 'src/if-bsd.c')
-rw-r--r--src/if-bsd.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/if-bsd.c b/src/if-bsd.c
index d2f0dc62..addca622 100644
--- a/src/if-bsd.c
+++ b/src/if-bsd.c
@@ -153,6 +153,8 @@ if_opensockets_os(struct dhcpcd_ctx *ctx)
#define SOCK_FLAGS (SOCK_CLOEXEC | SOCK_NONBLOCK)
ctx->link_fd = xsocket(PF_ROUTE, SOCK_RAW | SOCK_FLAGS, AF_UNSPEC);
#undef SOCK_FLAGS
+ if (ctx->link_fd == -1)
+ return -1;
#if defined(RO_MSGFILTER)
if (setsockopt(ctx->link_fd, PF_ROUTE, RO_MSGFILTER,
@@ -168,7 +170,7 @@ if_opensockets_os(struct dhcpcd_ctx *ctx)
logerr(__func__);
#endif
- return ctx->link_fd == -1 ? -1 : 0;
+ return 0;
}
void