From: Yu Watanabe Date: Mon, 22 Mar 2021 16:34:30 +0000 (+0900) Subject: firewall-util: add missing return value check X-Git-Tag: v248-2~23^2~4 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=84af90ba5df8682cb2abecbc7bccf23aca94df77;p=thirdparty%2Fsystemd.git firewall-util: add missing return value check --- diff --git a/src/shared/firewall-util-nft.c b/src/shared/firewall-util-nft.c index 05c322d353c..fb5857d9ec9 100644 --- a/src/shared/firewall-util-nft.c +++ b/src/shared/firewall-util-nft.c @@ -1006,9 +1006,11 @@ again: assert(tsize < NFT_DNAT_MSGS); if (add) - nft_add_element(ctx->nfnl, &transaction[tsize], af, NFT_SYSTEMD_DNAT_MAP_NAME, key, sizeof(key), data, dlen); + r = nft_add_element(ctx->nfnl, &transaction[tsize], af, NFT_SYSTEMD_DNAT_MAP_NAME, key, sizeof(key), data, dlen); else - nft_del_element(ctx->nfnl, &transaction[tsize], af, NFT_SYSTEMD_DNAT_MAP_NAME, key, sizeof(key), data, dlen); + r = nft_del_element(ctx->nfnl, &transaction[tsize], af, NFT_SYSTEMD_DNAT_MAP_NAME, key, sizeof(key), data, dlen); + if (r < 0) + goto out_unref; tsize++; assert(tsize < NFT_DNAT_MSGS);