From nobody Sat May 27 10:44:21 2023 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 4QSz1d6bXnz4Wrmm; Sat, 27 May 2023 10:44:21 +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 "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4QSz1d5frdz3rMr; Sat, 27 May 2023 10:44:21 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1685184261; 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=lpAj2GIHiBEqNcrKlVd/cQvLowNvu+a20dZd0x9Xi1k=; b=tfLB+vnyezSgpRSQKLrw20+6lKkyW8q+t6Rik4RwINReJ8HhkJu6X7fWIlnTupT1Y4VA7o VR/hpwSYggRjGEbS/hSTStIf2/q3LHKLrWU7IGA1b7v4odY5l480zdMeOdi8E5m0MOJ8i9 Q4Supoq94OrFhw57BX9ptaL9n9wXCyNrtXco0d9oeol7MOPjgHCIA++iVDQqykrjZ/p1LJ 0s6yjQEx+nIV9J/vVPOKLdZAa+7+/ceqw7OU/fUz0GBv81/ctznMORVhztP11wScWZ3peN AwyfnCzHbLkxxcL0+XHq9QWdbGbY4d4k6ZuQR0Gvmc/gsKHu+8/aBzhRfAau1Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1685184261; 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=lpAj2GIHiBEqNcrKlVd/cQvLowNvu+a20dZd0x9Xi1k=; b=BNWRLC//5Pfm+8R0JMRb8VLbvvFnIrTxfCrBNBbz+700hJEOePiv5Htwc2NPbjust6i3A0 UBRzDs3mWaON4CpI4I4Sfc6Hdvp/xoXBvewH7Mw+EBtrQFs3gYw0C5BeaW7nD9RzifwGq+ zVKQ0++tPOseCfqPI4RooIeQpYgT41McEuqDuQ73b6w42mabIy7V4pAfIQyk2Dw4uLbM4/ TKP+PkHB3q2iuSpFifaQCBpqMnLUMtmqHphKGketuxgEJU6FsWOpBMj+PgKVuZpawZLVFL ok4PgMKdaZDHAF2bVzYDDQAHSn+xofuJk5hzPl+xUh8qA80/cAdsP1zHBLQT4A== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1685184261; a=rsa-sha256; cv=none; b=nbI7kJG1O6iP1ljOKK+KIgBYfYqGgKLxM+UMpkCuYPxo0sNICNp4SEf/DyfYCfM1TfUGP4 rX4SFiSYsatWiUB4dVmUqdrLG+Ng/gJEdCcIucoIGQKOLnpPYiuLemQGbpX+E4N6GLOxRs qRQ4XWxS6MNw3Aq2gFq2kyIJH7ERQdjgeJ8ZRC1lKhPqTQ6E8P6FHKXh7mwZSVJ58d2pW+ /YJ84gzdD6Phg+xbwV1mai1fdyM9v3naC/jYyM5VbnTCkKX9wFmLHHyC6qtX3IHnMOuJaq ToftdQAnIgEosYyjy/S8NNx+vObSPf/9MciVi9mJtV3NJnjaIHBPXWgd5gBoqA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (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 did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4QSz1d4gv7zlrh; Sat, 27 May 2023 10:44:21 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 34RAiL86057015; Sat, 27 May 2023 10:44:21 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 34RAiLLC057014; Sat, 27 May 2023 10:44:21 GMT (envelope-from git) Date: Sat, 27 May 2023 10:44:21 GMT Message-Id: <202305271044.34RAiLLC057014@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: "Alexander V. Chernikov" Subject: git: dfc15e761b84 - main - netlink: call IPv6 hook after the ifaddr operation when ifp is brought up. 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: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: melifaro X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: dfc15e761b84c6dcaee68a18e8077058479c928f Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by melifaro: URL: https://cgit.FreeBSD.org/src/commit/?id=dfc15e761b84c6dcaee68a18e8077058479c928f commit dfc15e761b84c6dcaee68a18e8077058479c928f Author: Alexander V. Chernikov AuthorDate: 2023-05-27 10:38:32 +0000 Commit: Alexander V. Chernikov CommitDate: 2023-05-27 10:38:32 +0000 netlink: call IPv6 hook after the ifaddr operation when ifp is brought up. This change fixes the case when the first address added to the interface is IPv6 GU address. Before the change, IPv6 LL addition was not triggered. PR: 271661 MFC after: 2 weeks --- sys/netlink/route/iface.c | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/sys/netlink/route/iface.c b/sys/netlink/route/iface.c index 920c473490ab..e7a66a3d32fc 100644 --- a/sys/netlink/route/iface.c +++ b/sys/netlink/route/iface.c @@ -1155,12 +1155,7 @@ handle_newaddr_inet(struct nlmsghdr *hdr, struct nl_parsed_ifa *attrs, if (attrs->ifa_dst != NULL) req.ifra_dstaddr = *((struct sockaddr_in *)attrs->ifa_dst); - int error = in_control(NULL, SIOCAIFADDR, &req, ifp, curthread); -#ifdef INET6 - if (error == 0 && !(if_flags & IFF_UP) && (if_getflags(ifp) & IFF_UP)) - in6_if_up(ifp); -#endif - return (error); + return (in_control(NULL, SIOCAIFADDR, &req, ifp, curthread)); } static int @@ -1262,6 +1257,7 @@ rtnl_handle_addr(struct nlmsghdr *hdr, struct nlpcb *nlp, struct nl_pstate *npt) attrs.ifa_index); return (ENOENT); } + int if_flags = if_getflags(ifp); #if defined(INET) || defined(INET6) bool new = hdr->nlmsg_type == NL_RTM_NEWADDR; @@ -1294,6 +1290,11 @@ rtnl_handle_addr(struct nlmsghdr *hdr, struct nlpcb *nlp, struct nl_pstate *npt) error = EAFNOSUPPORT; } +#ifdef INET6 + if (error == 0 && !(if_flags & IFF_UP) && (if_getflags(ifp) & IFF_UP)) + in6_if_up(ifp); +#endif + if_rele(ifp); return (error);