Download raw body.
hide struct router_info
Hi,
struct router_info is only used in netinet/igmp.c. Remove it from
netinet/in_var.h header to avoid global visibility. Also sort
pointer before integer fields in struct.
Release build was successful.
ok?
bluhm
Index: netinet/igmp.c
===================================================================
RCS file: /data/mirror/openbsd/cvs/src/sys/netinet/igmp.c,v
diff -u -p -r1.88 igmp.c
--- netinet/igmp.c 8 Jul 2025 00:47:41 -0000 1.88
+++ netinet/igmp.c 11 Nov 2025 09:53:09 -0000
@@ -94,6 +94,16 @@
#define IP_MULTICASTOPTS 0
+/*
+ * Per-interface router version information.
+ */
+struct router_info {
+ LIST_ENTRY(router_info) rti_list;
+ unsigned int rti_ifidx;
+ int rti_type; /* type of router on this interface */
+ int rti_age; /* time since last v1 query */
+};
+
int igmp_timers_are_running; /* [a] shortcut for fast timer */
static LIST_HEAD(, router_info) rti_head;
static struct mbuf *router_alert;
Index: netinet/in_var.h
===================================================================
RCS file: /data/mirror/openbsd/cvs/src/sys/netinet/in_var.h,v
diff -u -p -r1.41 in_var.h
--- netinet/in_var.h 18 Oct 2018 15:23:04 -0000 1.41
+++ netinet/in_var.h 11 Nov 2025 09:54:17 -0000
@@ -75,8 +75,7 @@ struct in_aliasreq {
struct sockaddr_in ifra_mask;
};
-
-#ifdef _KERNEL
+#ifdef _KERNEL
/*
* Macro for finding the internet address structure (in_ifaddr) corresponding
* to a given interface (ifnet structure).
@@ -93,19 +92,9 @@ do { \
} \
(ia) = ifatoia(ifa); \
} while (/* CONSTCOND */ 0)
-#endif
-/*
- * Per-interface router version information.
- */
-struct router_info {
- unsigned int rti_ifidx;
- int rti_type; /* type of router on this interface */
- int rti_age; /* time since last v1 query */
- LIST_ENTRY(router_info) rti_list;
-};
+struct router_info;
-#ifdef _KERNEL
/*
* Internet multicast address structure. There is one of these for each IP
* multicast group to which this host belongs on a given network interface.
@@ -161,6 +150,6 @@ void in_ifscrub(struct ifnet *, struct i
int in_control(struct socket *, u_long, caddr_t, struct ifnet *);
int in_ioctl(u_long, caddr_t, struct ifnet *, int);
void in_prefixlen2mask(struct in_addr *, int);
-#endif
+#endif /* _KERNEL */
#endif /* _NETINET_IN_VAR_H_ */
hide struct router_info