diff options
author | Thomas Haller <thaller@redhat.com> | 2018-09-06 11:26:45 +0200 |
---|---|---|
committer | Thomas Haller <thaller@redhat.com> | 2018-09-07 11:24:17 +0200 |
commit | 9740d3a68cb344674e2cd7db41a5af0fbe3065d2 (patch) | |
tree | bcd54ddc1491c0ae2482617e0cb60b337a9af3b4 /src/platform | |
parent | a30dd1eff041751fd26d5e3dba1a5f5693569ba5 (diff) | |
download | NetworkManager-9740d3a68cb344674e2cd7db41a5af0fbe3065d2.tar.gz |
platform/netlink: assert that callbacks don't return positive error code
Diffstat (limited to 'src/platform')
-rw-r--r-- | src/platform/nm-netlink.c | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/src/platform/nm-netlink.c b/src/platform/nm-netlink.c index 7b79a772c0..d148b7c855 100644 --- a/src/platform/nm-netlink.c +++ b/src/platform/nm-netlink.c @@ -1109,6 +1109,10 @@ do { \ case NL_STOP: \ goto stop; \ default: \ + if (err >= 0) { \ + nm_assert_not_reached (); \ + err = -NLE_BUG; \ + } \ goto out; \ } \ } \ @@ -1216,11 +1220,12 @@ continue_reading: else if (err == NL_SKIP) goto skip; else if (err == NL_STOP) { - err = -e->error; + err = -nl_syserr2nlerr (e->error); goto out; } + nm_assert (err == NL_OK); } else { - err = -e->error; + err = -nl_syserr2nlerr (e->error); goto out; } } else @@ -1251,6 +1256,7 @@ out: if (interrupted) err = -NLE_DUMP_INTR; + nm_assert (err <= 0); return err ?: nrecv; } |