diff options
author | Thorsten Leemhuis <fedora@leemhuis.info> | 2019-07-03 17:26:29 +0200 |
---|---|---|
committer | Thorsten Leemhuis <fedora@leemhuis.info> | 2019-07-03 17:26:29 +0200 |
commit | c0703782681d7bc47b3a793ffbe379c2c56c6cfe (patch) | |
tree | 55348f6ea125448d453c516696993e5ecfe01242 | |
parent | 46d197579b8cf071ad23f64925cae0f2cb89d427 (diff) | |
parent | 4e36521cb45e624d231dfbd3be8db94a1d43921c (diff) | |
download | kernel-c0703782681d7bc47b3a793ffbe379c2c56c6cfe.tar.gz kernel-c0703782681d7bc47b3a793ffbe379c2c56c6cfe.tar.xz kernel-c0703782681d7bc47b3a793ffbe379c2c56c6cfe.zip |
Merge remote-tracking branch 'origin/f30' into f30-user-thl-vanilla-fedora
-rw-r--r-- | kernel.spec | 7 | ||||
-rw-r--r-- | netfilter-ctnetlink-Fix-regression-in-conntrack-entry.patch | 62 |
2 files changed, 69 insertions, 0 deletions
diff --git a/kernel.spec b/kernel.spec index 09302a336..7c1496671 100644 --- a/kernel.spec +++ b/kernel.spec @@ -642,6 +642,9 @@ Patch542: 0001-platform-x86-asus-wmi-Only-Tell-EC-the-OS-will-handl.patch Patch544: drm-panel-orientation-quirks.patch Patch545: efi-bgrt-acpi6.2-support.patch +# Accepted upstream; rhbz 1724357 +Patch546: netfilter-ctnetlink-Fix-regression-in-conntrack-entry.patch + # END OF PATCH DEFINITIONS %endif @@ -1883,6 +1886,10 @@ fi # # %changelog +* Wed Jul 03 2019 Jeremy Cline <jcline@redhat.com> - 5.1.16-300 +- Linux v5.1.16 +- Fix an issue with deleting singular conntrack entries (rhbz 1724357) + * Tue Jun 25 2019 Jeremy Cline <jcline@redhat.com> - 5.1.15-300 - Linux v5.1.15 - Fixes CVE-2019-12817 (rhbz 1720616 1723697) diff --git a/netfilter-ctnetlink-Fix-regression-in-conntrack-entry.patch b/netfilter-ctnetlink-Fix-regression-in-conntrack-entry.patch new file mode 100644 index 000000000..750d884df --- /dev/null +++ b/netfilter-ctnetlink-Fix-regression-in-conntrack-entry.patch @@ -0,0 +1,62 @@ +From e7600865db32b69deb0109b8254244dca592adcf Mon Sep 17 00:00:00 2001 +From: Felix Kaechele <felix@kaechele.ca> +Date: Tue, 25 Jun 2019 16:48:59 -0400 +Subject: [PATCH] netfilter: ctnetlink: Fix regression in conntrack entry + deletion + +Commit f8e608982022 ("netfilter: ctnetlink: Resolve conntrack +L3-protocol flush regression") introduced a regression in which deletion +of conntrack entries would fail because the L3 protocol information +is replaced by AF_UNSPEC. As a result the search for the entry to be +deleted would turn up empty due to the tuple used to perform the search +is now different from the tuple used to initially set up the entry. + +For flushing the conntrack table we do however want to keep the option +for nfgenmsg->version to have a non-zero value to allow for newer +user-space tools to request treatment under the new behavior. With that +it is possible to independently flush tables for a defined L3 protocol. +This was introduced with the enhancements in in commit 59c08c69c278 +("netfilter: ctnetlink: Support L3 protocol-filter on flush"). + +Older user-space tools will retain the behavior of flushing all tables +regardless of defined L3 protocol. + +Fixes: f8e608982022 ("netfilter: ctnetlink: Resolve conntrack L3-protocol flush regression") +Suggested-by: Pablo Neira Ayuso <pablo@netfilter.org> +Signed-off-by: Felix Kaechele <felix@kaechele.ca> +Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org> +--- + net/netfilter/nf_conntrack_netlink.c | 7 ++++--- + 1 file changed, 4 insertions(+), 3 deletions(-) + +diff --git a/net/netfilter/nf_conntrack_netlink.c b/net/netfilter/nf_conntrack_netlink.c +index 7db79c1b8084..1b77444d5b52 100644 +--- a/net/netfilter/nf_conntrack_netlink.c ++++ b/net/netfilter/nf_conntrack_netlink.c +@@ -1256,7 +1256,6 @@ static int ctnetlink_del_conntrack(struct net *net, struct sock *ctnl, + struct nf_conntrack_tuple tuple; + struct nf_conn *ct; + struct nfgenmsg *nfmsg = nlmsg_data(nlh); +- u_int8_t u3 = nfmsg->version ? nfmsg->nfgen_family : AF_UNSPEC; + struct nf_conntrack_zone zone; + int err; + +@@ -1266,11 +1265,13 @@ static int ctnetlink_del_conntrack(struct net *net, struct sock *ctnl, + + if (cda[CTA_TUPLE_ORIG]) + err = ctnetlink_parse_tuple(cda, &tuple, CTA_TUPLE_ORIG, +- u3, &zone); ++ nfmsg->nfgen_family, &zone); + else if (cda[CTA_TUPLE_REPLY]) + err = ctnetlink_parse_tuple(cda, &tuple, CTA_TUPLE_REPLY, +- u3, &zone); ++ nfmsg->nfgen_family, &zone); + else { ++ u_int8_t u3 = nfmsg->version ? nfmsg->nfgen_family : AF_UNSPEC; ++ + return ctnetlink_flush_conntrack(net, cda, + NETLINK_CB(skb).portid, + nlmsg_report(nlh), u3); +-- +2.21.0 + |