This patch fixes dhcrelay on carp. Without it, the AF_LINK entry
(the only one containing the interface index and rdomain of the
carp interface) of carp interfaces was ignored.

When doing the IPV6_JOIN_GROUP, ip6_setmoptions() would see an
zero interface index and picked an arbitrary, "appropriate one"
instead of the carp interface itself.

Similary code is found in the IPv4 version of dhcrelay.


Index: usr.sbin/dhcrelay6/dispatch.c
===================================================================
RCS file: /cvs/src/usr.sbin/dhcrelay6/dispatch.c,v
retrieving revision 1.2
diff -u -p -u -p -r1.2 dispatch.c
--- usr.sbin/dhcrelay6/dispatch.c       17 Jan 2021 13:41:24 -0000      1.2
+++ usr.sbin/dhcrelay6/dispatch.c       13 Jul 2023 13:38:38 -0000
@@ -168,7 +168,8 @@ setup_iflist(void)
 
                        /* Skip non ethernet interfaces. */
                        if (ifi->ifi_type != IFT_ETHER &&
-                           ifi->ifi_type != IFT_ENC) {
+                           ifi->ifi_type != IFT_ENC &&
+                           ifi->ifi_type != IFT_CARP) {
                                TAILQ_REMOVE(&intflist, intf, entry);
                                free(intf);
                                continue;

Attachment: smime.p7s
Description: S/MIME cryptographic signature

Reply via email to