New CARP patchset

Matthew George mdg at secureworks.net
Tue Dec 7 09:00:58 PST 2004


Matthew George wrote:
> Max Laier wrote:
> 
[...]
>> Anything else? Please let me know!
>>
> 
> I re-cvsup'd RELENG_5 and tried again (second attempt), but I get this 
> with the new patch set:

I rm'd all of the affected sources and re-cvsup'd to RELENG_5 as of the 
date of the patch (2004.12.03.23.59.59).  I'm still seeing these issues. 
  Is there something bogus on my end?

> 
> FIRST ISSUE:
> 
> --------------------------
> |diff -urP ../dist/sys/netinet/in_proto.c ./sys/netinet/in_proto.c
> |--- ../dist/sys/netinet/in_proto.c     Sat Nov  6 21:01:08 2004
> |+++ ./sys/netinet/in_proto.c   Sat Nov  6 18:13:47 2004
> --------------------------
> Patching file ./sys/netinet/in_proto.c using Plan A...
> Hunk #1 succeeded at 36 (offset 1 line).
> Hunk #2 succeeded at 92 with fuzz 2 (offset 1 line).
> Hunk #3 failed at 243.
> Hunk #4 succeeded at 297 with fuzz 1 (offset -5 lines).
> 1 out of 4 hunks failed--saving rejects to ./sys/netinet/in_proto.c.rej
> 
> 
> Here's the reject:
> 
> ***************
> *** 238,243 ****
>     &rip_usrreqs
>   },
>   #endif        /* DEV_PFSYNC */
>   /* Spacer n-times for loadable protocols. */
>   IPPROTOSPACER,
>   IPPROTOSPACER,
> --- 243,256 ----
>     &rip_usrreqs
>   },
>   #endif        /* DEV_PFSYNC */
> + #ifdef DEV_CARP
> + { SOCK_RAW,   &inetdomain,    IPPROTO_CARP,   PR_ATOMIC|PR_ADDR,
> +   carp_input, (pr_output_t*)rip_output,       0,      rip_ctloutput,
> +   0,
> +   0,          0,              0,              0,
> +   &rip_usrreqs
> + },
> + #endif /* DEV_CARP */
>   /* Spacer n-times for loadable protocols. */
>   IPPROTOSPACER,
>   IPPROTOSPACER,
> 
> 
> I also see line offsets in the patch for sys/netinet/if_ether.c but the 
> patch applies anyway.
> 
> 
> SECOND ISSUE:
> When I try to build the new ifconfig, it fails:
> 
> mdg# cd /usr/src/sbin/ifconfig
> mdg# make clean all
> rm -f ifconfig ifconfig.o ifmedia.o ifvlan.o ifieee80211.o ifcarp.o 
> ifmac.o ifpfsync.o ifconfig.8.gz ifconfig.8.cat.gz
> cc -O -pipe  -DUSE_IF_MEDIA -DINET6 -DUSE_VLANS -DUSE_IEEE80211 
> -DUSE_CARP -DUSE_MAC -DUSE_PFSYNC -DNS -Wall -Wmissing-prototypes 
> -Wcast-qual -Wwrite-strings  -Wnested-externs -I..  -c 
> /usr/src/sbin/ifconfig/ifconfig.c
> cc -O -pipe  -DUSE_IF_MEDIA -DINET6 -DUSE_VLANS -DUSE_IEEE80211 
> -DUSE_CARP -DUSE_MAC -DUSE_PFSYNC -DNS -Wall -Wmissing-prototypes 
> -Wcast-qual -Wwrite-strings  -Wnested-externs -I..  -c 
> /usr/src/sbin/ifconfig/ifmedia.c
> cc -O -pipe  -DUSE_IF_MEDIA -DINET6 -DUSE_VLANS -DUSE_IEEE80211 
> -DUSE_CARP -DUSE_MAC -DUSE_PFSYNC -DNS -Wall -Wmissing-prototypes 
> -Wcast-qual -Wwrite-strings  -Wnested-externs -I..  -c 
> /usr/src/sbin/ifconfig/ifvlan.c
> cc -O -pipe  -DUSE_IF_MEDIA -DINET6 -DUSE_VLANS -DUSE_IEEE80211 
> -DUSE_CARP -DUSE_MAC -DUSE_PFSYNC -DNS -Wall -Wmissing-prototypes 
> -Wcast-qual -Wwrite-strings  -Wnested-externs -I..  -c 
> /usr/src/sbin/ifconfig/ifieee80211.c
> cc -O -pipe  -DUSE_IF_MEDIA -DINET6 -DUSE_VLANS -DUSE_IEEE80211 
> -DUSE_CARP -DUSE_MAC -DUSE_PFSYNC -DNS -Wall -Wmissing-prototypes 
> -Wcast-qual -Wwrite-strings  -Wnested-externs -I..  -c 
> /usr/src/sbin/ifconfig/ifcarp.c
> /usr/src/sbin/ifconfig/ifcarp.c:222: error: redefinition of 'carp_states'
> /usr/src/sbin/ifconfig/ifcarp.c:53: error: previous definition of 
> 'carp_states' was here
> /usr/src/sbin/ifconfig/ifcarp.c:226: error: redefinition of 'carp_status'
> /usr/src/sbin/ifconfig/ifcarp.c:57: error: previous definition of 
> 'carp_status' was here
> /usr/src/sbin/ifconfig/ifcarp.c:253: error: redefinition of 
> 'setcarp_passwd'
> /usr/src/sbin/ifconfig/ifcarp.c:84: error: previous definition of 
> 'setcarp_passwd' was here
> /usr/src/sbin/ifconfig/ifcarp.c:273: error: redefinition of 'setcarp_vhid'
> /usr/src/sbin/ifconfig/ifcarp.c:104: error: previous definition of 
> 'setcarp_vhid' was here
> /usr/src/sbin/ifconfig/ifcarp.c:298: error: redefinition of 
> 'setcarp_advskew'
> /usr/src/sbin/ifconfig/ifcarp.c:129: error: previous definition of 
> 'setcarp_advskew' was here
> /usr/src/sbin/ifconfig/ifcarp.c:320: error: redefinition of 
> 'setcarp_advbase'
> /usr/src/sbin/ifconfig/ifcarp.c:151: error: previous definition of 
> 'setcarp_advbase' was here
> /usr/src/sbin/ifconfig/ifcarp.c:391: error: redefinition of 'carp_states'
> /usr/src/sbin/ifconfig/ifcarp.c:222: error: previous definition of 
> 'carp_states' was here
> /usr/src/sbin/ifconfig/ifcarp.c:391: error: redefinition of 'carp_states'
> /usr/src/sbin/ifconfig/ifcarp.c:222: error: previous definition of 
> 'carp_states' was here
> /usr/src/sbin/ifconfig/ifcarp.c:395: error: redefinition of 'carp_status'
> /usr/src/sbin/ifconfig/ifcarp.c:226: error: previous definition of 
> 'carp_status' was here
> /usr/src/sbin/ifconfig/ifcarp.c:395: error: redefinition of 'carp_status'
> /usr/src/sbin/ifconfig/ifcarp.c:226: error: previous definition of 
> 'carp_status' was here
> /usr/src/sbin/ifconfig/ifcarp.c:422: error: redefinition of 
> 'setcarp_passwd'
> /usr/src/sbin/ifconfig/ifcarp.c:253: error: previous definition of 
> 'setcarp_passwd' was here
> /usr/src/sbin/ifconfig/ifcarp.c:422: error: redefinition of 
> 'setcarp_passwd'
> /usr/src/sbin/ifconfig/ifcarp.c:253: error: previous definition of 
> 'setcarp_passwd' was here
> /usr/src/sbin/ifconfig/ifcarp.c:442: error: redefinition of 'setcarp_vhid'
> /usr/src/sbin/ifconfig/ifcarp.c:273: error: previous definition of 
> 'setcarp_vhid' was here
> /usr/src/sbin/ifconfig/ifcarp.c:442: error: redefinition of 'setcarp_vhid'
> /usr/src/sbin/ifconfig/ifcarp.c:273: error: previous definition of 
> 'setcarp_vhid' was here
> /usr/src/sbin/ifconfig/ifcarp.c:467: error: redefinition of 
> 'setcarp_advskew'
> /usr/src/sbin/ifconfig/ifcarp.c:298: error: previous definition of 
> 'setcarp_advskew' was here
> /usr/src/sbin/ifconfig/ifcarp.c:467: error: redefinition of 
> 'setcarp_advskew'
> /usr/src/sbin/ifconfig/ifcarp.c:298: error: previous definition of 
> 'setcarp_advskew' was here
> /usr/src/sbin/ifconfig/ifcarp.c:489: error: redefinition of 
> 'setcarp_advbase'
> /usr/src/sbin/ifconfig/ifcarp.c:320: error: previous definition of 
> 'setcarp_advbase' was here
> /usr/src/sbin/ifconfig/ifcarp.c:489: error: redefinition of 
> 'setcarp_advbase'
> /usr/src/sbin/ifconfig/ifcarp.c:320: error: previous definition of 
> 'setcarp_advbase' was here
> /usr/src/sbin/ifconfig/ifcarp.c:560: error: redefinition of 'carp_states'
> /usr/src/sbin/ifconfig/ifcarp.c:391: error: previous definition of 
> 'carp_states' was here
> /usr/src/sbin/ifconfig/ifcarp.c:560: error: redefinition of 'carp_states'
> /usr/src/sbin/ifconfig/ifcarp.c:222: error: previous definition of 
> 'carp_states' was here
> /usr/src/sbin/ifconfig/ifcarp.c:564: error: redefinition of 'carp_status'
> /usr/src/sbin/ifconfig/ifcarp.c:395: error: previous definition of 
> 'carp_status' was here
> /usr/src/sbin/ifconfig/ifcarp.c:564: error: redefinition of 'carp_status'
> /usr/src/sbin/ifconfig/ifcarp.c:226: error: previous definition of 
> 'carp_status' was here
> /usr/src/sbin/ifconfig/ifcarp.c:591: error: redefinition of 
> 'setcarp_passwd'
> /usr/src/sbin/ifconfig/ifcarp.c:422: error: previous definition of 
> 'setcarp_passwd' was here
> /usr/src/sbin/ifconfig/ifcarp.c:591: error: redefinition of 
> 'setcarp_passwd'
> /usr/src/sbin/ifconfig/ifcarp.c:253: error: previous definition of 
> 'setcarp_passwd' was here
> /usr/src/sbin/ifconfig/ifcarp.c:611: error: redefinition of 'setcarp_vhid'
> /usr/src/sbin/ifconfig/ifcarp.c:442: error: previous definition of 
> 'setcarp_vhid' was here
> /usr/src/sbin/ifconfig/ifcarp.c:611: error: redefinition of 'setcarp_vhid'
> /usr/src/sbin/ifconfig/ifcarp.c:273: error: previous definition of 
> 'setcarp_vhid' was here
> /usr/src/sbin/ifconfig/ifcarp.c:636: error: redefinition of 
> 'setcarp_advskew'
> /usr/src/sbin/ifconfig/ifcarp.c:467: error: previous definition of 
> 'setcarp_advskew' was here
> /usr/src/sbin/ifconfig/ifcarp.c:636: error: redefinition of 
> 'setcarp_advskew'
> /usr/src/sbin/ifconfig/ifcarp.c:298: error: previous definition of 
> 'setcarp_advskew' was here
> /usr/src/sbin/ifconfig/ifcarp.c:658: error: redefinition of 
> 'setcarp_advbase'
> /usr/src/sbin/ifconfig/ifcarp.c:489: error: previous definition of 
> 'setcarp_advbase' was here
> /usr/src/sbin/ifconfig/ifcarp.c:658: error: redefinition of 
> 'setcarp_advbase'
> /usr/src/sbin/ifconfig/ifcarp.c:320: error: previous definition of 
> 'setcarp_advbase' was here
> {standard input}: Assembler messages:
> {standard input}:323: Error: symbol `carp_states' is already defined
> {standard input}:330: Error: symbol `carp_states' is already defined
> {standard input}:337: Error: symbol `carp_states' is already defined
> *** Error code 1
> 
> Stop in /usr/src/sbin/ifconfig.
> 
> 
> All of the patches for src/sbin/ifconfig reported success ...
> usr.bin/netstat compiles fine ...
> 


-- 
Matthew George
SecureWorks Technical Operations
404.327.6339



More information about the freebsd-pf mailing list