diff options
author | Hans Dedecker <hans.dedecker@technicolor.com> | 2013-12-05 13:54:19 +0100 |
---|---|---|
committer | Hans Dedecker <hans.dedecker@technicolor.com> | 2013-12-05 13:54:19 +0100 |
commit | 0b68cabeb40d6e24a677a9332d3f3db163b5d723 (patch) | |
tree | de82280197e4a1c596f429f495a80102ca8eeb1c /src/ndp.c | |
parent | 47bcdec8bd3bea91ef0510cdef7702bd559e8369 (diff) |
Fix possible SEGFAULT conditions
Diffstat (limited to 'src/ndp.c')
-rw-r--r-- | src/ndp.c | 9 |
1 files changed, 9 insertions, 0 deletions
@@ -160,10 +160,19 @@ int setup_ndp_interface(struct interface *iface, bool enable) if (iface->static_ndp_len) { char *entry = alloca(iface->static_ndp_len), *saveptr; + if (!entry) { + syslog(LOG_ERR, "Alloca failed for static NDP list"); + return -1; + } memcpy(entry, iface->static_ndp, iface->static_ndp_len); for (entry = strtok_r(entry, " ", &saveptr); entry; entry = strtok_r(NULL, " ", &saveptr)) { struct ndp_neighbor *n = malloc(sizeof(*n)); + if (!n) { + syslog(LOG_ERR, "Malloc failed for static NDP-prefix %s", entry); + return -1; + } + n->iface = iface; n->timeout = 0; |