From 9740d3a68cb344674e2cd7db41a5af0fbe3065d2 Mon Sep 17 00:00:00 2001 From: Thomas Haller Date: Thu, 6 Sep 2018 11:26:45 +0200 Subject: [PATCH] platform/netlink: assert that callbacks don't return positive error code --- src/platform/nm-netlink.c | 10 ++++++++-- 1 file 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; }