WITHOUT_INET6 broken on CURRENT

Garrett Cooper yanefbsd at gmail.com
Sun Feb 8 19:34:29 PST 2009


On Sun, Feb 8, 2009 at 5:24 PM, Michael Proto <mike at jellydonut.org> wrote:
> On Sun, Feb 8, 2009 at 7:59 PM, Garrett Cooper <yanefbsd at gmail.com> wrote:
>> Hi Randall,
>>    I recently rebuilt my sources today and I noticed that it's now
>> breaking on a valid warning with sctp:
>>
>> cc -c -O2 -frename-registers -pipe -fno-strict-aliasing -march=nocona
>> -std=c99 -g -Wall -Wredundant-decls -Wnested-externs
>> -Wstrict-prototypes  -Wmissing-prototypes -Wpointer-arith -Winline
>> -Wcast-qual  -Wundef -Wno-pointer-sign -fformat-extensions -nostdinc
>> -I. -I/usr/src/sys -I/usr/src/sys/contrib/altq -D_KERNEL
>> -DHAVE_KERNEL_OPTION_HEADERS -include opt_global.h -fno-common
>> -finline-limit=8000 --param inline-unit-growth=100 --param
>> large-function-growth=1000  -fno-omit-frame-pointer -mcmodel=kernel
>> -mno-red-zone  -mfpmath=387 -mno-sse -mno-sse2 -mno-sse3 -mno-mmx
>> -mno-3dnow  -msoft-float -fno-asynchronous-unwind-tables
>> -ffreestanding -fstack-protector -Werror
>> /usr/src/sys/netinet/sctputil.c
>> cc1: warnings being treated as errors
>> In file included from /usr/src/sys/netinet/sctputil.c:6553:
>> /usr/src/sys/netinet6/sctp6_var.h:57: warning: 'struct icmp6_hdr'
>> declared inside parameter list
>> /usr/src/sys/netinet6/sctp6_var.h:57: warning: its scope is only this
>> definition or declaration, which is probably not what you want
>> *** Error code 1
>>
>> Stop in /usr/obj/usr/src/sys/OPTIMUS.
>> *** Error code 1
>>
>> Stop in /usr/src.
>> *** Error code 1
>>
>> Stop in /usr/src.
>>
>>    I'm going to rebuild setting WITHOUT_SCTP for now, but this needs
>> to be fixed.
>> Thanks,
>> -Garrett
>
>
> IIRC SCTP has always required INET6 to compile since it was first
> introduced. I thought it was a prerequisite.
>
> -Proto

    In that file there's a #ifdef INET6 -- maybe that should be #if
INET6? Also, it's a preprocessor define that doesn't disable any
features as well.

    Also, about INET6 support -- this blurb from the manpage for sctp
makes me believe that IPV6 isn't required (pardon the formatting -- a
direct paste really screwed up the spacing):

     SCTP_I_WANT_MAPPED_V4_ADDR  SCTP supports both IPV4 and IPV6.  An associ-
                                 ation may span both IPV4 and IPV6 addresses
                                 since SCTP is multi-homed.  By default, when
                                 opening an IPV6 socket, when data arrives on
                                 the socket from a peer's V4 address the V4
                                 address  will be presented with an address
                                 family of AF_INET.  If this is undesireable,
                                 then this option can be enabled which will
                                 then convert all V4 addresses into mapped V6
                                 representations.


Thanks,
-Garrett


More information about the freebsd-current mailing list