git: a079c891c01b - main - sctp: restore missing inpcb lock

From: Gleb Smirnoff <glebius_at_FreeBSD.org>
Date: Wed, 17 Jan 2024 07:13:57 UTC
The branch main has been updated by glebius:

URL: https://cgit.FreeBSD.org/src/commit/?id=a079c891c01b1f8b32d79b490d9e7b7542e26d0f

commit a079c891c01b1f8b32d79b490d9e7b7542e26d0f
Author:     Gleb Smirnoff <glebius@FreeBSD.org>
AuthorDate: 2024-01-17 07:11:27 +0000
Commit:     Gleb Smirnoff <glebius@FreeBSD.org>
CommitDate: 2024-01-17 07:11:27 +0000

    sctp: restore missing inpcb lock
    
    Fixes:  5bba2728079ed4da33f727dbc2b6ae1de02ba897
    Reported-by: syzbot+b8636c973dc20fea4a9b@syzkaller.appspotmail.com
    Reported-by: syzbot+d76a18ee8bbe6f7d3056@syzkaller.appspotmail.com
---
 sys/netinet/sctp_usrreq.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/sys/netinet/sctp_usrreq.c b/sys/netinet/sctp_usrreq.c
index 51c056e052a5..b847271a7bd3 100644
--- a/sys/netinet/sctp_usrreq.c
+++ b/sys/netinet/sctp_usrreq.c
@@ -874,6 +874,7 @@ sctp_shutdown(struct socket *so, enum shutdown_how how)
 		/* FALLTHROUGH */
 
 	case SHUT_WR:
+		SCTP_INP_RLOCK(inp);
 		socantsendmore(so);
 		stcb = LIST_FIRST(&inp->sctp_asoc_list);
 		if (stcb == NULL) {