]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
mptcp: export lookup_anno_list_by_saddr
authorGeliang Tang <geliangtang@gmail.com>
Tue, 17 Sep 2024 07:26:09 +0000 (09:26 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 17 Oct 2024 13:07:37 +0000 (15:07 +0200)
commit d88c476f4a7dd69a2588470f6c4f8b663efa16c6 upstream.

This patch exported the static function lookup_anno_list_by_saddr, and
renamed it to mptcp_lookup_anno_list_by_saddr.

Signed-off-by: Geliang Tang <geliangtang@gmail.com>
Signed-off-by: Mat Martineau <mathew.j.martineau@linux.intel.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Stable-dep-of: b4cd80b03389 ("mptcp: pm: Fix uaf in __timer_delete_sync")
Signed-off-by: Matthieu Baerts (NGI0) <matttbe@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
net/mptcp/pm_netlink.c
net/mptcp/protocol.h

index f115c92c45d4a5be110c75ed36be6ee97fa6d1cb..0b566678cc966dbf3b895ff890539a24b77ee327 100644 (file)
@@ -194,9 +194,9 @@ static void check_work_pending(struct mptcp_sock *msk)
                WRITE_ONCE(msk->pm.work_pending, false);
 }
 
-static struct mptcp_pm_add_entry *
-lookup_anno_list_by_saddr(struct mptcp_sock *msk,
-                         struct mptcp_addr_info *addr)
+struct mptcp_pm_add_entry *
+mptcp_lookup_anno_list_by_saddr(struct mptcp_sock *msk,
+                               struct mptcp_addr_info *addr)
 {
        struct mptcp_pm_add_entry *entry;
 
@@ -255,7 +255,7 @@ mptcp_pm_del_add_timer(struct mptcp_sock *msk,
        struct sock *sk = (struct sock *)msk;
 
        spin_lock_bh(&msk->pm.lock);
-       entry = lookup_anno_list_by_saddr(msk, addr);
+       entry = mptcp_lookup_anno_list_by_saddr(msk, addr);
        if (entry)
                entry->retrans_times = ADD_ADDR_RETRANS_MAX;
        spin_unlock_bh(&msk->pm.lock);
@@ -272,7 +272,7 @@ static bool mptcp_pm_alloc_anno_list(struct mptcp_sock *msk,
        struct mptcp_pm_add_entry *add_entry = NULL;
        struct sock *sk = (struct sock *)msk;
 
-       if (lookup_anno_list_by_saddr(msk, &entry->addr))
+       if (mptcp_lookup_anno_list_by_saddr(msk, &entry->addr))
                return false;
 
        add_entry = kmalloc(sizeof(*add_entry), GFP_ATOMIC);
index b8351b671c2fa4c4e308cc61d2b8bacc4397b91b..eaaff2cee4d5cbf510fc533846bee6c85cf9b704 100644 (file)
@@ -451,6 +451,9 @@ void mptcp_pm_free_anno_list(struct mptcp_sock *msk);
 struct mptcp_pm_add_entry *
 mptcp_pm_del_add_timer(struct mptcp_sock *msk,
                       struct mptcp_addr_info *addr);
+struct mptcp_pm_add_entry *
+mptcp_lookup_anno_list_by_saddr(struct mptcp_sock *msk,
+                               struct mptcp_addr_info *addr);
 
 int mptcp_pm_announce_addr(struct mptcp_sock *msk,
                           const struct mptcp_addr_info *addr,