GnuTLS 2.6.6/2.7.8 assumes AF_INET6 is available
Simon Josefsson
simon at josefsson.org
Thu May 7 14:31:38 CEST 2009
"Tom G. Christensen" <tgc at jupiterrise.com> writes:
>> Oops, try this instead:
>>
>> #ifndef HAVE_IPV6
>> # define sockaddr_storage sockaddr
>> #endif
>>
>> There is another more complex work around mentioned at the end of:
>>
>> http://www.opengroup.org/onlinepubs/009695399/basedefs/sys/socket.h.html
>>
>> Maybe the above won't work, and then maybe we need something like that.
>>
> If I'm reading the referenced manpage correctly struct sockaddr is not
> expected to have an ss_family member so the above define will not work
> as is.
> Instead I replaced the reference to ss_family with sa_family and now it
> builds to completion.
Ok, so adding the following to the top of src/serv.c works?
#define sockaddr_storage sockaddr
#define ss_family sa_family
I've applied the earlier more obvious patch to GnuTLS 2.6.x and GnuTLS
2.7.x, but the sockaddr_storage part needs to be solved properly -- via
gnulib.
> I also ran the testsuite and it passes all tests.
> The full log from running the testsuite is available at
> http://jupiterrise.com/tmp
Thanks!
> I noticed that the compiler complained when building some of the test
> programs:
> x509self.c: In function 'server_start':
> x509self.c:360: warning: passing argument 4 of 'setsockopt' from
> incompatible pointer type
> x509self.c: In function 'server':
> x509self.c:434: warning: implicit declaration of function 'bzero'
> x509self.c:434: warning: incompatible implicit declaration of built-in
> function 'bzero'
Thanks, both looks easily fixable.
/Simon
More information about the Gnutls-devel
mailing list