diff options
author | Pau Espin Pedrol <pespin@sysmocom.de> | 2017-12-14 11:19:10 +0100 |
---|---|---|
committer | Harald Welte <laforge@gnumonks.org> | 2017-12-14 14:49:11 +0000 |
commit | bffc3f901275a8102c3f94735f48f0681458afc0 (patch) | |
tree | 66e328dbd2f12b811a3a16e9ded42bd0de24566c /ggsn | |
parent | 7c4de0776bafa744a2a10bbf244c8e4b03544bb3 (diff) |
ggsn.c: Improve logging info on link-local ipv6 addr not found
Change-Id: I18fb952514712ff30d18c7626f84309055d3efa1
Diffstat (limited to 'ggsn')
-rw-r--r-- | ggsn/ggsn.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/ggsn/ggsn.c b/ggsn/ggsn.c index fa3e20c..ef2357b 100644 --- a/ggsn/ggsn.c +++ b/ggsn/ggsn.c @@ -194,6 +194,7 @@ int apn_start(struct apn_ctx *apn) struct in46_prefix ipv6_tun_linklocal_ip; struct in46_prefix *blacklist; int blacklist_size; + int rc; if (apn->started) return 0; @@ -247,9 +248,10 @@ int apn_start(struct apn_ctx *apn) } if (apn->cfg.apn_type_mask & (APN_TYPE_IPv6|APN_TYPE_IPv4v6)) { - if (tun_ip_local_get(apn->tun.tun, &ipv6_tun_linklocal_ip, 1, IP_TYPE_IPv6_LINK) < 1) { - LOGPAPN(LOGL_ERROR, apn, "Cannot obtain IPv6 link-local address of " - "interface: %s\n", strerror(errno)); + rc = tun_ip_local_get(apn->tun.tun, &ipv6_tun_linklocal_ip, 1, IP_TYPE_IPv6_LINK); + if (rc < 1) { + LOGPAPN(LOGL_ERROR, apn, "Cannot obtain IPv6 link-local address of interface: %s\n", + rc ? strerror(errno) : "tun interface has no link-local IP assigned"); apn_stop(apn, false); return -1; } |