From nobody Mon Dec 22 02:23:46 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dZMQB4DGJz6Ly6Y for ; Mon, 22 Dec 2025 02:23:46 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R13" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dZMQB35pKz3Qrc for ; Mon, 22 Dec 2025 02:23:46 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1766370226; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=zVyTEF7O4dunPQprGKQZSf8fXDh1UKg5QlRLc52EoEY=; b=grAhGduKeimpcTmQNonAaJCkHlUVugrvfs2HgRNVTjCuMDl8hPNB+eBunowTphxL96TJ/s COkBbwfQ/2MFYhAg57u8TTRKD64aDTx2XmWSMwMaOuWWJhsUTKZKDY3KOD0BijblSURLI2 1n9MgS5eWJx64UrJf1jFv/UJ1TR7bHkG1o1ALSNZK6iHaQ/w7YAp0qTkP+8U2cbQ9oXyQc LXg2O79r3qEIUN5l+pbDUFZbBhwd80A+QhXPq9Y/UlG1NnpQxowE0pOdyYdFox0zdC57gS /Yw4WofzYgbbktAP10eDC/jXnsVskeboQqjnDKRdlhQaFmwthzaRNRp61bkdSw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1766370226; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=zVyTEF7O4dunPQprGKQZSf8fXDh1UKg5QlRLc52EoEY=; b=n+mD4AY/EVBcxa3VzwSVqA9JeKHYAV8w2sG0jVpaf0M7K8vzGc2lOrXrjCshFVnxWcWtWK cHujl22gt+WOVuOys5yWV79WqJ4FhvjYC/pVAh0CH9GznvG//AJvEC8Sdksy2/dAkgnT1I xCsVHBkt0zX3SJqhDRiQxXAFCvjIsJLUaYe4pzA1q0Cama/ZcNoiOKkVWQfhYJz4EF8VnH 5kTWFLxkaF4GWXh6RIL/G0Vdik88kzOSKGwGcDRDdDHP6Y5cFIN2U1hb8eeKKjZqu5/fku zUvRlm5NJTf97awjtA5buysEPffLYNmFW78rKA/2KENkJnMoQ6dZ44Scycg+Jw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1766370226; a=rsa-sha256; cv=none; b=tcKjf306j94l8TVeBYkDms8NMlrGtoS33MHtLYDiJsEqaoBpJG2Sj7dP31t1OmkT/D8ZKu IiIgnEV0kpOfFb4NIqhNkQFjYpHtpUMXKN70AiUCjSrsK84PM3LZMYQBjGYkb48B9Am3+b 9sZ20K2jn8a3UDLprfbDd5Ft+/DvCQp63q4+3KmycP216XECH6P38+fpMtlLfddPuHNyPd a8wh9AuGD+8FJgprGVIn0masmP13qhH2Y+jaJHIVxpgzVLOjzyX8uAvJSTa0exDY/KBlfK FIpXXwG7ZQHchHqg0ZiE93M/pQthw6J+E7eoS9OYDn+NBjseW0vwOg62sPJOUQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dZMQB2fdNz15sB for ; Mon, 22 Dec 2025 02:23:46 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 35ff3 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 22 Dec 2025 02:23:46 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Gleb Smirnoff Subject: git: 77939d64f23d - main - net: on interface detach purge multicast addresses after protocols List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: glebius X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 77939d64f23da4b0b599fad6edd967ffd1d17217 Auto-Submitted: auto-generated Date: Mon, 22 Dec 2025 02:23:46 +0000 Message-Id: <6948abb2.35ff3.5204ce5@gitrepo.freebsd.org> The branch main has been updated by glebius: URL: https://cgit.FreeBSD.org/src/commit/?id=77939d64f23da4b0b599fad6edd967ffd1d17217 commit 77939d64f23da4b0b599fad6edd967ffd1d17217 Author: Gleb Smirnoff AuthorDate: 2025-12-21 18:56:00 +0000 Commit: Gleb Smirnoff CommitDate: 2025-12-22 02:23:14 +0000 net: on interface detach purge multicast addresses after protocols We first want to give a chance to all owners of multicast addresses to free them and only then run through the list of remaining ones. It might be that no addresses remain there normally, but this needs to be analyzed deeper. For now restore the sequence that was before 0d469d23715d to fix a possible use after free. Fixes: 0d469d23715d690b863787ebfa51529e1f6a9092 --- sys/net/if.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/sys/net/if.c b/sys/net/if.c index 3c16246e8b62..3394aa90127f 100644 --- a/sys/net/if.c +++ b/sys/net/if.c @@ -1117,9 +1117,8 @@ if_detach_internal(struct ifnet *ifp, bool vmove) #endif if_purgeaddrs(ifp); - if_purgemaddrs(ifp); - EVENTHANDLER_INVOKE(ifnet_departure_event, ifp); + if_purgemaddrs(ifp); if (IS_DEFAULT_VNET(curvnet)) devctl_notify("IFNET", ifp->if_xname, "DETACH", NULL);