cvs commit: src/sys/netinet tcp_input.c tcp_usrreq.c
mjacob at freebsd.org
mjacob at freebsd.org
Sun Jul 29 17:17:47 UTC 2007
Sorry- I was a tired and cranky idiot. I have this fixed now, and will
do a real universe run *and* ask re.
The problem here is that the code is definitely ancient wanky- there's a
const char *[] array in tcp_fsm.h that's compiled in iff TCPSTATES is
defined. Various files include tcp_fsm.h and define TCPSTATES. However,
what is getting the linker bugged is the line
extern const char *tcpstates[];
that makes for a *different* definition of the object. The fix is to
remove the 'extern' refs (tcp_usrreq doesn't need one, and spx_debug.c
should do the TCPSTATES define like tcp_input && tcp_debug do).
>
> I know. I'm going to look at it more today.
>
> On Sun, 29 Jul 2007, Maxim Konovalov wrote:
>
>>> Thanks for fixing this. The whole tcpstates stuff is hackish.
>>> We need a better fix as the state reporting in the log message
>>> should not depend on TCPDEBUG.
>>>
>> tb still fails at tcpstates.
>>
>> --
>> Maxim Konovalov
>>
>
More information about the cvs-src
mailing list