Mercurial > hg > dhcpcd
changeset 2507:c72abf8ed304 draft
Log each malloc failure because we log individual failures so we don't see
any Success error messages on an invalid condition.
| author | Roy Marples <roy@marples.name> |
|---|---|
| date | Mon, 02 Jun 2014 23:30:50 +0000 |
| parents | 91f57d346f38 |
| children | 9f7687ad3013 |
| files | ipv6nd.c |
| diffstat | 1 files changed, 17 insertions(+), 7 deletions(-) [+] |
line wrap: on
line diff
--- a/ipv6nd.c Mon Jun 02 17:10:13 2014 +0000 +++ b/ipv6nd.c Mon Jun 02 23:30:50 2014 +0000 @@ -909,9 +909,13 @@ opt = tmp; opt[l - 1] = ' '; strlcpy(opt + l, ap->saddr, m); - } - } else + } else + syslog(LOG_ERR, "%s: %m", __func__); + } else { opt = strdup(ap->saddr); + if (opt == NULL) + syslog(LOG_ERR, "%s: %m", __func__); + } lifetime = ap->prefix_vltime; break; @@ -926,6 +930,8 @@ rap->mtu = mtuv; snprintf(buf, sizeof(buf), "%d", mtuv); opt = strdup(buf); + if (opt == NULL) + syslog(LOG_ERR, "%s: %m", __func__); break; case ND_OPT_RDNSS: @@ -964,7 +970,8 @@ (*--tmp) = '\0'; else *opt = '\0'; - } + } else + syslog(LOG_ERR, "%s: %m", __func__); break; case ND_OPT_DNSSL: @@ -990,8 +997,12 @@ if (opt) print_string(opt, n, (const uint8_t *)tmp, l); + else + syslog(LOG_ERR, "%s: %m", + __func__); free(tmp); - } + } else + syslog(LOG_ERR, "%s: %m", __func__); } break; @@ -999,10 +1010,9 @@ continue; } - if (opt == NULL) { - syslog(LOG_ERR, "%s: %m", __func__); + if (opt == NULL) continue; - } + TAILQ_FOREACH(rao, &rap->options, next) { if (rao->type == ndo->nd_opt_type && strcmp(rao->option, opt) == 0)
