#3980 Re: rsync-2.5.3pre1 preview release -- please try it

Jos Backus josb at cncdsl.com
Thu Feb 21 14:45:52 EST 2002


On Wed, Feb 20, 2002 at 08:31:51PM -0600, Albert Chin wrote:
> > This seems to break FreeBSD...
> 
> How? Works fine with FreeBSD 4.3-STABLE.

Breaks on -current:

gcc -I. -I. -g -O2 -DHAVE_CONFIG_H -Wall -W -I./popt -c lib/getaddrinfo.c -o lib/getaddrinfo.o
lib/getaddrinfo.c: In function `get_addr':
lib/getaddrinfo.c:595: structure has no member named `s6_addr32'
lib/getaddrinfo.c:597: structure has no member named `s6_addr32'
*** Error code 1

Stop in /home/jos/src/rsync/rsync.

lizzy:/usr/include# rgrep s6_addr32 
./netinet/ip_compat.h:#   define        V4_PART_OF_V6(v6)       v6.s6_addr32[3]
./netinet6/in6.h:#define s6_addr32 __u6_addr.__u6_addr32
./netinet6/in6_var.h:   (((d)->s6_addr32[0] ^ (a)->s6_addr32[0]) & (m)->s6_addr32[0]) == 0 && \
./netinet6/in6_var.h:   (((d)->s6_addr32[1] ^ (a)->s6_addr32[1]) & (m)->s6_addr32[1]) == 0 && \
./netinet6/in6_var.h:   (((d)->s6_addr32[2] ^ (a)->s6_addr32[2]) & (m)->s6_addr32[2]) == 0 && \
./netinet6/in6_var.h:   (((d)->s6_addr32[3] ^ (a)->s6_addr32[3]) & (m)->s6_addr32[3]) == 0 )

netinet6/in6.h has:

#define s6_addr   __u6_addr.__u6_addr8
#ifdef _KERNEL  /*XXX nonstandard*/ 
#define s6_addr8  __u6_addr.__u6_addr8
#define s6_addr16 __u6_addr.__u6_addr16
#define s6_addr32 __u6_addr.__u6_addr32
#endif

I wonder if we should do s/s6_addr32/s6_addr/g ? If I make that change the
link succeeds at least :)

-- 
Jos Backus                 _/  _/_/_/        Santa Clara, CA
                          _/  _/   _/
                         _/  _/_/_/             
                    _/  _/  _/    _/
josb at cncdsl.com     _/_/   _/_/_/            use Std::Disclaimer;




More information about the rsync mailing list