More missing IPv6 definitions and autoconf checks to make sure it compiles

under Solaris 2.6.
This commit is contained in:
Guus Sliepen 2003-07-11 16:13:00 +00:00
parent 71f8124ea4
commit 2a7f11c0e9
7 changed files with 265 additions and 260 deletions

View file

@ -13,8 +13,9 @@
#include <stdlib.h>
#include <sys/types.h>
#include <netinet/in.h>
#include <sys/socket.h>
#include <netinet/in.h>
#include <arpa/inet.h>
#include <netdb.h>
#include <string.h>
@ -97,12 +98,14 @@ int getaddrinfo(const char *hostname, const char *servname,
return EAI_MEMORY;
}
#ifdef HAVE_INET_ATON
if (inet_aton(hostname, &in)) {
if (NULL != (*res = malloc_ai(port, in.s_addr)))
return 0;
else
return EAI_MEMORY;
}
#endif
hp = gethostbyname(hostname);
if (hp && hp->h_name && hp->h_name[0] && hp->h_addr_list[0]) {

View file

@ -17,7 +17,7 @@
along with this program; if not, write to the Free Software
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
$Id: ipv6.h,v 1.1.2.2 2003/07/07 11:50:52 guus Exp $
$Id: ipv6.h,v 1.1.2.3 2003/07/11 16:12:59 guus Exp $
*/
#ifndef __TINC_IPV6_H__
@ -60,6 +60,13 @@ struct sockaddr_in6 {
};
#endif
#ifndef IN6_IS_ADDR_V4MAPPED
#define IN6_IS_ADDR_V4MAPPED(a) \
((((__const uint32_t *) (a))[0] == 0) \
&& (((__const uint32_t *) (a))[1] == 0) \
&& (((__const uint32_t *) (a))[2] == htonl (0xffff)))
#endif
#ifndef HAVE_NETINET_IP6_H
struct ip6_hdr {
union {