From patchwork Thu Apr 20 16:05:37 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Pierre Lebleu X-Patchwork-Id: 752872 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from bombadil.infradead.org (bombadil.infradead.org [65.50.211.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 3w83dz4xcvz9s65 for ; Fri, 21 Apr 2017 02:06:47 +1000 (AEST) Authentication-Results: ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=lists.infradead.org header.i=@lists.infradead.org header.b="Fs2dYmhL"; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.b="QXdIBHNE"; dkim-atps=neutral DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20170209; h=Sender: Content-Transfer-Encoding:Content-Type:MIME-Version:Cc:List-Subscribe: List-Help:List-Post:List-Archive:List-Unsubscribe:List-Id:Subject:References: In-Reply-To:Message-Id:Date:To:From:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=iRoyErhw1nCvGizSFDuNcQAa3Ba1eWzwkTG1YPqm5nI=; b=Fs2dYmhLQfV57Y xS23RYvdbICSaX9Ft/kF7yZeZqHZHr84iyHB4muLyoCvuTplh7LiWiCnuO9dTpfdtEfdrHiVonnnA P+T5dmw6eY4tsXoFqFnBTMCP1QE4EeGjwoIJZWK8hNTsPRWm7kctBhVI4dFP5AeuIe6feYIVJZhT8 WOkjaEgGQjeTgx5xdOnlnCMLYGjxx+KZglsNqFpyseLgOhd3FYsIPs42gP2vmwAvDkUMxZuOQDq6r vYq/xZxsG+T++EXejUDNa4R59y5hVaF71BoTQPAO3ZUi6HLhCfraB970qNnNZhcvdH/8qsX+JzoFN Uv53cpL55fPe9wYJiBuA==; Received: from localhost ([127.0.0.1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.87 #1 (Red Hat Linux)) id 1d1EbQ-0006zW-Fy; Thu, 20 Apr 2017 16:06:40 +0000 Received: from mail-io0-x242.google.com ([2607:f8b0:4001:c06::242]) by bombadil.infradead.org with esmtps (Exim 4.87 #1 (Red Hat Linux)) id 1d1Eb0-0006VM-Bw for lede-dev@lists.infradead.org; Thu, 20 Apr 2017 16:06:16 +0000 Received: by mail-io0-x242.google.com with SMTP id k87so17801387ioi.0 for ; Thu, 20 Apr 2017 09:05:51 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=SCPwWGiDJJZVBbJg9vymNGkdhNLQWlwqkkbgq8XMlDM=; b=QXdIBHNEW3wkrErJ21hCvJliTA064RUwHwY9CSMlFJXJiaCFpSqkzWbgs/l8CaNioj AQbimraSRLxLiCIagEea2ccbR0uapyQUsVaCSpFmKA/oF3dbtohBG4oGdK2JwHk65537 lg6NpCCxu/DHyuItBgxwrx/0U8mmJu9G4Yu1m1Bd3rd+XxLX+958E3y4V8GKRTZKWkOc xkMN+CUMKJ+638U4bDgoNjuIlHFS0WwHwuM6t8rb5xWtBfCzfEZOPBUL9JycGrYkn3tW GisBPk18NGvuJUjgX0OSAoNT4Ki1RdiHWcJmedGKj8LJ3XxBudcf487TWeIiKyAVfiqc 7VVA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=SCPwWGiDJJZVBbJg9vymNGkdhNLQWlwqkkbgq8XMlDM=; b=Xi/OckkFIybWwmN6G/pNG04zPz9XoO12Y195kktkgb+2oA4Qf/LIl9AQeQJEhVJfUR h/GJx6u7paFibeLrE0l1mZexTNebgxM/XEBB8VXV6dZa4hoPGFxA2lEOxj3pZ2gp664N 8FvrkbYkLMH7xvhowmiMUZoyrkfbZmttRgSnQx0dYE8ZK3vJr2Gf2XKM109O5S0zYZlt u/44mx9tWsu2B6TMXkm8QJz8EObk5B9iDSatrx/oPzJtvPK8+XrAwZM6O+fFlI3jkzFm zMGEFAt/WT2ok82SgbwiFouVD53XF3gkdcsJRrUGtBkD81UMD5ktvIQG1C1dVDC6szbp F1Sg== X-Gm-Message-State: AN3rC/4+V97z31aGz0kaRsE1d7eVb/fTMX8YJlAD/+14QnOtoVbInlRH TvCSD21bBtbFtQ== X-Received: by 10.36.67.200 with SMTP id s191mr4805405itb.78.1492704351273; Thu, 20 Apr 2017 09:05:51 -0700 (PDT) Received: from smtp.gmail.com (14.125.146.82.ipv4.evonet.be. [82.146.125.14]) by smtp.gmail.com with ESMTPSA id u191sm7931652ita.15.2017.04.20.09.05.49 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 20 Apr 2017 09:05:50 -0700 (PDT) From: Pierre Lebleu To: lede-dev@lists.infradead.org Date: Thu, 20 Apr 2017 18:05:37 +0200 Message-Id: <1492704342-24042-2-git-send-email-pme.lebleu@gmail.com> X-Mailer: git-send-email 1.7.9.5 In-Reply-To: <1492704342-24042-1-git-send-email-pme.lebleu@gmail.com> References: <1492704342-24042-1-git-send-email-pme.lebleu@gmail.com> X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20170420_090614_463340_5E7011C9 X-CRM114-Status: UNSURE ( 9.27 ) X-CRM114-Notice: Please train this message. X-Spam-Score: -2.0 (--) X-Spam-Report: SpamAssassin version 3.4.1 on bombadil.infradead.org summary: Content analysis details: (-2.0 points) pts rule name description ---- ---------------------- -------------------------------------------------- -0.0 SPF_PASS SPF: sender matches SPF record 0.0 FREEMAIL_FROM Sender email is commonly abused enduser mail provider (pme.lebleu[at]gmail.com) -1.9 BAYES_00 BODY: Bayes spam probability is 0 to 1% [score: 0.0000] -0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from author's domain 0.1 DKIM_SIGNED Message has a DKIM or DK signature, not necessarily valid -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature Subject: [LEDE-DEV] [PATCH 2/7] firewall3: do not use a wrong pointer in the warn() function X-BeenThere: lede-dev@lists.infradead.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Pierre Lebleu , jow@mein.io MIME-Version: 1.0 Sender: "Lede-dev" Errors-To: lede-dev-bounces+incoming=patchwork.ozlabs.org@lists.infradead.org In the function fw3_load_rules(), warm_elem() used a pointer to an UCI section which was not valid anymore. Signed-off-by: Pierre Lebleu --- rules.c | 31 ++++++++++++++++--------------- 1 file changed, 16 insertions(+), 15 deletions(-) diff --git a/rules.c b/rules.c index 8f232d3..a1b154d 100644 --- a/rules.c +++ b/rules.c @@ -159,41 +159,41 @@ fw3_load_rules(struct fw3_state *state, struct uci_package *p, if (rule->src.invert || rule->dest.invert) { - warn_elem(e, "must not have inverted 'src' or 'dest' options"); + warn("%s must not have inverted 'src' or 'dest' options", rule->name); fw3_free_rule(rule); continue; } else if (rule->src.set && !rule->src.any && !(rule->_src = fw3_lookup_zone(state, rule->src.name))) { - warn_elem(e, "refers to not existing zone '%s'", rule->src.name); + warn("%s refers to not existing zone '%s'", rule->name, rule->src.name); fw3_free_rule(rule); continue; } else if (rule->dest.set && !rule->dest.any && !(rule->_dest = fw3_lookup_zone(state, rule->dest.name))) { - warn_elem(e, "refers to not existing zone '%s'", rule->dest.name); + warn("%s refers to not existing zone '%s'", rule->name, rule->dest.name); fw3_free_rule(rule); continue; } else if (rule->ipset.set && state->disable_ipsets) { - warn_elem(e, "skipped due to disabled ipset support"); + warn("%s skipped due to disabled ipset support", rule->name); fw3_free_rule(rule); continue; } else if (rule->ipset.set && !(rule->ipset.ptr = fw3_lookup_ipset(state, rule->ipset.name))) { - warn_elem(e, "refers to unknown ipset '%s'", rule->ipset.name); + warn("%s refers to unknown ipset '%s'", rule->name, rule->ipset.name); fw3_free_rule(rule); continue; } if (!rule->_src && rule->target == FW3_FLAG_NOTRACK) { - warn_elem(e, "is set to target NOTRACK but has no source assigned"); + warn("%s is set to target NOTRACK but has no source assigned", rule->name); fw3_free_rule(rule); continue; } @@ -201,46 +201,47 @@ fw3_load_rules(struct fw3_state *state, struct uci_package *p, if (!rule->set_mark.set && !rule->set_xmark.set && rule->target == FW3_FLAG_MARK) { - warn_elem(e, "is set to target MARK but specifies neither " - "'set_mark' nor 'set_xmark' option"); + warn("%s is set to target MARK but specifies neither " + "'set_mark' nor 'set_xmark' option", rule->name); fw3_free_rule(rule); continue; } if (rule->_dest && rule->target == FW3_FLAG_MARK) { - warn_elem(e, "must not specify 'dest' for MARK target"); + warn("%s must not specify 'dest' for MARK target", rule->name); fw3_free_rule(rule); continue; } if (rule->set_mark.invert || rule->set_xmark.invert) { - warn_elem(e, "must not have inverted 'set_mark' or 'set_xmark'"); + warn("%s must not have inverted 'set_mark' or 'set_xmark'", rule->name); fw3_free_rule(rule); continue; } if (!rule->_src && !rule->_dest && !rule->src.any && !rule->dest.any) { - warn_elem(e, "has neither a source nor a destination zone assigned " - "- assuming an output rule"); + warn("%s has neither a source nor a destination zone assigned " + "- assuming an output rule", rule->name); } if (list_empty(&rule->proto)) { - warn_elem(e, "does not specify a protocol, assuming TCP+UDP"); + warn("%s does not specify a protocol, assuming TCP+UDP", rule->name); fw3_parse_protocol(&rule->proto, "tcpudp", true); } if (rule->target == FW3_FLAG_UNSPEC) { - warn_elem(e, "has no target specified, defaulting to REJECT"); + warn("%s has no target specified, defaulting to REJECT", rule->name); rule->target = FW3_FLAG_REJECT; } else if (rule->target > FW3_FLAG_MARK) { - warn_elem(e, "has invalid target specified, defaulting to REJECT"); + warn("%s has invalid target specified, defaulting to REJECT", + rule->name); rule->target = FW3_FLAG_REJECT; }