From nobody Tue Mar 31 15:58:55 2026 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 4flXqC2lQNz6WF6l for ; Tue, 31 Mar 2026 15:59:03 +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 "R12" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 4flXq44SF8z3gt8 for ; Tue, 31 Mar 2026 15:58:56 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1774972736; 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=BCZO9MahO+u+6/S5iO+xybcPMVYf001GEJkzSNRgBGw=; b=sAeBFrO2SA0+dW6wRCzTixoEtHnhMo1WTR6VdL6yIevo+fz+dJxVZSalpSNJLm4z+lOpC2 YYiu/wse/iz99KT3AJ3IfmwCl/zGGSTvmT6YoB/pDC5E1onmiT/2qBueghVefv8hzCxjhU T+jGUahWQvW8LuxRlnaZL4kjHPFbEaU6G92wFrWVK8ijkjtO1afvzXpwjuW/NnJXHD4fXb fIH4RIgHZelwvzRKTkarvjq9cvqA5RYj+NAN+KTiRIf/bBx4tGLAWxXelnWFDNIzEvQtib RjiyUpnMbQH4afOA1at0+01evENrUO9oYgSvrFZCZXq0kmxyS3EBuOOJw5fzuw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1774972736; a=rsa-sha256; cv=none; b=MDWvtrPa06KOg4nsdrF9XG05+ty3h07C2NCmiO5aJiyzS/bX33eJxzU2U5Yo/6yw+8hyV/ WS7dPwU1wdSVlWkXN4wJIA4Ak4hcHfDZIAGBaya4qB+NlW8YIU5g+lFYUoU2yhmT+/4ESW 9D0ym5AfZud8T6TJj7bSgkywhQFyZ4gyBXm3EZstZpO1relGhIVbH6Q/KW7iEotq/0U6sd sYCBour46aL7piuKQo4v/rBATvij9kxQ4ld/lNTyTF5/nOw5spqOvwN68lGXtfluWMHBgt PRMtEspaPK1GhNF1WjgdaSyZp48Auo7znvybz+OAweTZKe0inx78VLKFgMlkfA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1774972736; 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=BCZO9MahO+u+6/S5iO+xybcPMVYf001GEJkzSNRgBGw=; b=TfVVOVl2e8WKrVx4VzV6wczEAwqGQWrZgp6jwa/R6OQ/gmKRuLVBbteats0HfpxrJwYla1 4XLnPKoX3u7VccABCr6pb3+yMfEZ1sa8xXJ06+9FXWdEQ1tvC409zG8vXOubrf7TcrG8eW JdmbhL/Y6a2j4obKeC62Rj72p2CqkJOhCZ5L1Ofbv8FOFL/CJppplZzQD7ZOzemoN9F0Qi gnU/dmXAzH5xqqnbK7Z0QoYZGVOyIKjE8GQA6Ra0WDlxi2sKWx+SmuSsHB8qw3yl6eE0cy z+QBeboT5WWgPzfLarLbrBz5Am5JDkFSKpbmPiKxhvZkg+ifh68ePeYnWMXc0Q== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4flXq358lVzcHW for ; Tue, 31 Mar 2026 15:58:55 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 3a0bd by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Tue, 31 Mar 2026 15:58:55 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Mark Johnston Subject: git: d94862ceb2b0 - stable/15 - ip_mroute: Try to make function pointer declarations more consistent 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: markj X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: d94862ceb2b02c0b2848979572b7434dea396fae Auto-Submitted: auto-generated Date: Tue, 31 Mar 2026 15:58:55 +0000 Message-Id: <69cbef3f.3a0bd.7e05a564@gitrepo.freebsd.org> The branch stable/15 has been updated by markj: URL: https://cgit.FreeBSD.org/src/commit/?id=d94862ceb2b02c0b2848979572b7434dea396fae commit d94862ceb2b02c0b2848979572b7434dea396fae Author: Mark Johnston AuthorDate: 2026-02-09 22:52:08 +0000 Commit: Mark Johnston CommitDate: 2026-03-31 15:57:28 +0000 ip_mroute: Try to make function pointer declarations more consistent The ip_mroute and ip6_mroute modules hook into the network stack via several function pointers. Declarations for these pointers are scattered around several headers. Put them all in the same place, ip(6)_mroute.h. No functional change intended. Reviewed by: glebius MFC after: 2 weeks Sponsored by: Stormshield Sponsored by: Klara, Inc. Differential Revision: https://reviews.freebsd.org/D55058 (cherry picked from commit 9df6a7f9a60b76eda2ac82826528487ca43edf46) --- sys/netinet/igmp.c | 1 + sys/netinet/in_mcast.c | 1 + sys/netinet/ip_input.c | 1 + sys/netinet/ip_mroute.h | 21 ++++++++++++++++++--- sys/netinet/ip_output.c | 1 + sys/netinet/ip_var.h | 10 ---------- sys/netinet6/ip6_input.c | 1 + sys/netinet6/ip6_mroute.h | 14 ++++++++++++++ sys/netinet6/ip6_output.c | 1 + sys/netinet6/ip6_var.h | 2 -- sys/netinet6/mld6.c | 1 + 11 files changed, 39 insertions(+), 15 deletions(-) diff --git a/sys/netinet/igmp.c b/sys/netinet/igmp.c index 299f3c2e02bb..da0b4910b9da 100644 --- a/sys/netinet/igmp.c +++ b/sys/netinet/igmp.c @@ -80,6 +80,7 @@ #include #include #include +#include #include diff --git a/sys/netinet/in_mcast.c b/sys/netinet/in_mcast.c index f5b20c49ffd2..6f8920aa69b8 100644 --- a/sys/netinet/in_mcast.c +++ b/sys/netinet/in_mcast.c @@ -66,6 +66,7 @@ #include #include #include +#include #ifndef KTR_IGMPV3 #define KTR_IGMPV3 KTR_INET diff --git a/sys/netinet/ip_input.c b/sys/netinet/ip_input.c index 4d614dfeb0a2..3832a21847c0 100644 --- a/sys/netinet/ip_input.c +++ b/sys/netinet/ip_input.c @@ -83,6 +83,7 @@ #include #include #include +#include #ifdef SCTP #include #endif diff --git a/sys/netinet/ip_mroute.h b/sys/netinet/ip_mroute.h index ed98e59a7c77..6f09006ec9e2 100644 --- a/sys/netinet/ip_mroute.h +++ b/sys/netinet/ip_mroute.h @@ -356,14 +356,29 @@ struct bw_meter { }; #ifdef _KERNEL +VNET_DECLARE(struct socket *, ip_mrouter); /* multicast routing daemon */ +#define V_ip_mrouter VNET(ip_mrouter) +struct ifnet; +struct ip; +struct ip_moptions; +struct mbuf; +struct socket; struct sockopt; -extern int (*ip_mrouter_set)(struct socket *, struct sockopt *); -extern int (*ip_mrouter_get)(struct socket *, struct sockopt *); +extern u_long (*ip_mcast_src)(int); +extern int (*ip_mforward)(struct ip *, struct ifnet *, struct mbuf *, + struct ip_moptions *); extern int (*ip_mrouter_done)(void); -extern int (*mrt_ioctl)(u_long, caddr_t, int); +extern int (*ip_mrouter_get)(struct socket *, struct sockopt *); +extern int (*ip_mrouter_set)(struct socket *, struct sockopt *); + +extern void (*ip_rsvp_force_done)(struct socket *); +extern int (*ip_rsvp_vif)(struct socket *, struct sockopt *); +extern int (*legal_vif_num)(int); +extern int (*mrt_ioctl)(u_long, caddr_t, int); +extern int (*rsvp_input_p)(struct mbuf **, int *, int); #endif /* _KERNEL */ #endif /* _NETINET_IP_MROUTE_H_ */ diff --git a/sys/netinet/ip_output.c b/sys/netinet/ip_output.c index bd87e9f2d6a6..6a9c85a83e65 100644 --- a/sys/netinet/ip_output.c +++ b/sys/netinet/ip_output.c @@ -79,6 +79,7 @@ #include #include #include +#include #include #include diff --git a/sys/netinet/ip_var.h b/sys/netinet/ip_var.h index c113484079a3..934ca80a083d 100644 --- a/sys/netinet/ip_var.h +++ b/sys/netinet/ip_var.h @@ -199,9 +199,6 @@ VNET_DECLARE(int, ipsendredirects); VNET_DECLARE(int, ipstealth); /* stealth forwarding */ #endif VNET_DECLARE(struct socket *, ip_rsvpd); /* reservation protocol daemon*/ -VNET_DECLARE(struct socket *, ip_mrouter); /* multicast routing daemon */ -extern int (*legal_vif_num)(int); -extern u_long (*ip_mcast_src)(int); VNET_DECLARE(int, rsvp_on); VNET_DECLARE(int, drop_redirect); VNET_DECLARE(int, ip_random_id); @@ -214,7 +211,6 @@ VNET_DECLARE(int, ip_random_id); #define V_ipstealth VNET(ipstealth) #endif #define V_ip_rsvpd VNET(ip_rsvpd) -#define V_ip_mrouter VNET(ip_mrouter) #define V_rsvp_on VNET(rsvp_on) #define V_drop_redirect VNET(drop_redirect) #define V_ip_random_id VNET(ip_random_id) @@ -227,9 +223,6 @@ int ip_ctloutput(struct socket *, struct sockopt *sopt); int ip_fragment(struct ip *ip, struct mbuf **m_frag, int mtu, u_long if_hwassist_flags); void ip_forward(struct mbuf *m, int srcrt); -extern int - (*ip_mforward)(struct ip *, struct ifnet *, struct mbuf *, - struct ip_moptions *); int ip_output(struct mbuf *, struct mbuf *, struct route *, int, struct ip_moptions *, struct inpcb *); @@ -244,9 +237,6 @@ int rsvp_input(struct mbuf **, int *, int); int ip_rsvp_init(struct socket *); int ip_rsvp_done(void); -extern int (*ip_rsvp_vif)(struct socket *, struct sockopt *); -extern void (*ip_rsvp_force_done)(struct socket *); -extern int (*rsvp_input_p)(struct mbuf **, int *, int); typedef int ipproto_input_t(struct mbuf **, int *, int); struct icmp; diff --git a/sys/netinet6/ip6_input.c b/sys/netinet6/ip6_input.c index 99dad1e7c309..bd3042fc54c5 100644 --- a/sys/netinet6/ip6_input.c +++ b/sys/netinet6/ip6_input.c @@ -119,6 +119,7 @@ #include #include #include +#include #ifdef SCTP #include #include diff --git a/sys/netinet6/ip6_mroute.h b/sys/netinet6/ip6_mroute.h index dd23196c799a..2f298df6a1ce 100644 --- a/sys/netinet6/ip6_mroute.h +++ b/sys/netinet6/ip6_mroute.h @@ -270,10 +270,24 @@ struct rtdetq { /* XXX: rtdetq is also defined in ip_mroute.h */ #endif #define MAX_UPQ6 4 /* max. no of pkts in upcall Q */ +#endif /* _KERNEL || KERNEL */ +#ifdef _KERNEL +VNET_DECLARE(struct socket *, ip6_mrouter); /* multicast routing daemon */ +#define V_ip6_mrouter VNET(ip6_mrouter) + +struct ifnet; +struct ip6_hdr; +struct mbuf; +struct socket; +struct sockopt; + +extern int (*ip6_mforward)(struct ip6_hdr *, struct ifnet *, + struct mbuf *); extern int (*ip6_mrouter_set)(struct socket *so, struct sockopt *sopt); extern int (*ip6_mrouter_get)(struct socket *so, struct sockopt *sopt); extern int (*ip6_mrouter_done)(void); + extern int (*mrt6_ioctl)(u_long, caddr_t); #endif /* _KERNEL */ diff --git a/sys/netinet6/ip6_output.c b/sys/netinet6/ip6_output.c index 6e256b1105bf..10e38c317ad2 100644 --- a/sys/netinet6/ip6_output.c +++ b/sys/netinet6/ip6_output.c @@ -111,6 +111,7 @@ #include #include #include +#include #include #if defined(SCTP) || defined(SCTP_SUPPORT) diff --git a/sys/netinet6/ip6_var.h b/sys/netinet6/ip6_var.h index 7e40f5811e6d..b3790c21d8da 100644 --- a/sys/netinet6/ip6_var.h +++ b/sys/netinet6/ip6_var.h @@ -309,7 +309,6 @@ VNET_DECLARE(int, ip6_v6only); #define V_ip6_mcast_pmtu VNET(ip6_mcast_pmtu) #define V_ip6_v6only VNET(ip6_v6only) -VNET_DECLARE(struct socket *, ip6_mrouter); /* multicast routing daemon */ VNET_DECLARE(int, ip6_sendredirects); /* send IP redirects when forwarding? */ VNET_DECLARE(int, ip6_accept_rtadv); /* Acts as a host not a router */ VNET_DECLARE(int, ip6_no_radr); /* No defroute from RA */ @@ -320,7 +319,6 @@ VNET_DECLARE(int, ip6_rfc6204w3); /* Accept defroute from RA even when VNET_DECLARE(int, ip6_hdrnestlimit); /* upper limit of # of extension * headers */ VNET_DECLARE(int, ip6_dad_count); /* DupAddrDetectionTransmits */ -#define V_ip6_mrouter VNET(ip6_mrouter) #define V_ip6_sendredirects VNET(ip6_sendredirects) #define V_ip6_accept_rtadv VNET(ip6_accept_rtadv) #define V_ip6_no_radr VNET(ip6_no_radr) diff --git a/sys/netinet6/mld6.c b/sys/netinet6/mld6.c index 5dfe48908a4f..d3757627116c 100644 --- a/sys/netinet6/mld6.c +++ b/sys/netinet6/mld6.c @@ -91,6 +91,7 @@ #include #include #include +#include #include #include