aboutsummaryrefslogtreecommitdiff
path: root/missing/getaddrinfo.h
diff options
context:
space:
mode:
Diffstat (limited to 'missing/getaddrinfo.h')
-rw-r--r--missing/getaddrinfo.h238
1 files changed, 0 insertions, 238 deletions
diff --git a/missing/getaddrinfo.h b/missing/getaddrinfo.h
deleted file mode 100644
index f965a8b..0000000
--- a/missing/getaddrinfo.h
+++ /dev/null
@@ -1,238 +0,0 @@
-/*
- * Copyright (c) 2001, 02 Motoyuki Kasahara
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. Neither the name of the project nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE PROJECT AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE PROJECT OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- */
-
-#ifndef GETADDRINFO_H
-#define GETADDRINFO_H
-
-#ifdef HAVE_CONFIG_H
-#include "config.h"
-#endif
-
-#include <sys/types.h>
-
-#ifdef WIN32
-#include <time.h>
-#include <winsock2.h>
-#ifdef DO_IPV6
-#include <ws2tcpip.h>
-#endif /* DO_IPV6 */
-#include <windows.h>
-#else
-#include <sys/socket.h>
-#include <netdb.h>
-#endif
-
-
-/********************************************************************/
-/*
- * Undefine all the macros.
- * <netdb.h> might defines some of them.
- */
-#ifdef EAI_ADDRFAMILY
-#undef EAI_ADDRFAMILY
-#endif
-#ifdef EAI_AGAIN
-#undef EAI_AGAIN
-#endif
-#ifdef EAI_BADFLAGS
-#undef EAI_BADFLAGS
-#endif
-#ifdef EAI_FAIL
-#undef EAI_FAIL
-#endif
-#ifdef EAI_FAMILY
-#undef EAI_FAMILY
-#endif
-#ifdef EAI_MEMORY
-#undef EAI_MEMORY
-#endif
-#ifdef EAI_NONAME
-#undef EAI_NONAME
-#endif
-#ifdef EAI_OVERFLOW
-#undef EAI_OVERFLOW
-#endif
-#ifdef EAI_SERVICE
-#undef EAI_SERVICE
-#endif
-#ifdef EAI_SOCKTYPE
-#undef EAI_SOCKTYPE
-#endif
-#ifdef EAI_SYSTEM
-#undef EAI_SYSTEM
-#endif
-
-#ifdef AI_PASSIVE
-#undef AI_PASSIVE
-#endif
-#ifdef AI_CANONNAME
-#undef AI_CANONNAME
-#endif
-#ifdef AI_NUMERICHOST
-#undef AI_NUMERICHOST
-#endif
-#ifdef AI_NUMERICSERV
-#undef AI_NUMERICSERV
-#endif
-#ifdef AI_V4MAPPED
-#undef AI_V4MAPPED
-#endif
-#ifdef AI_ALL
-#undef AI_ALL
-#endif
-#ifdef AI_ADDRCONFIG
-#undef AI_ADDRCONFIG
-#endif
-#ifdef AI_DEFAULT
-#undef AI_DEFAULT
-#endif
-
-#ifdef NI_NOFQDN
-#undef NI_NOFQDN
-#endif
-#ifdef NI_NUMERICHOST
-#undef NI_NUMERICHOST
-#endif
-#ifdef NI_NAMEREQD
-#undef NI_NAMEREQD
-#endif
-#ifdef NI_NUMERICSERV
-#undef NI_NUMERICSERV
-#endif
-#ifdef NI_NUMERICSCOPE
-#undef NI_NUMERICSCOPE
-#endif
-
-#ifdef NI_DGRAM
-#undef NI_DGRAM
-#endif
-#ifdef NI_MAXHOST
-#undef NI_MAXHOST
-#endif
-#ifdef NI_MAXSERV
-#undef NI_MAXSERV
-#endif
-
-/*
- * Fake struct and function names.
- * <netdb.h> might declares all or some of them.
- */
-#if defined(HAVE_GETADDRINFO) || defined(HAVE_GETNAMEINFO)
-#define addrinfo my_addrinfo
-#define gai_strerror my_gai_strerror
-#define freeaddrinfo my_freeaddrinfo
-#define getaddrinfo my_getaddrinfo
-#define getnameinfo my_getnameinfo
-#endif
-
-/********************************************************************/
-/*
- * Error codes.
- */
-#define EAI_ADDRFAMILY 1
-#define EAI_AGAIN 2
-#define EAI_BADFLAGS 3
-#define EAI_FAIL 4
-#define EAI_FAMILY 5
-#define EAI_MEMORY 6
-#define EAI_NONAME 7
-#define EAI_OVERFLOW 8
-#define EAI_SERVICE 9
-#define EAI_SOCKTYPE 10
-#define EAI_SYSTEM 11
-
-/*
- * Flags for getaddrinfo().
- */
-#define AI_ADDRCONFIG 0x0001
-#define AI_ALL 0x0002
-#define AI_CANONNAME 0x0004
-#define AI_NUMERICHOST 0x0008
-#define AI_NUMERICSERV 0x0010
-#define AI_PASSIVE 0x0020
-#define AI_V4MAPPED 0x0040
-#define AI_DEFAULT (AI_V4MAPPED | AI_ADDRCONFIG)
-
-/*
- * Flags for getnameinfo().
- */
-#define NI_DGRAM 0x0001
-#define NI_NAMEREQD 0x0002
-#define NI_NOFQDN 0x0004
-#define NI_NUMERICHOST 0x0008
-#define NI_NUMERICSCOPE 0x0010
-#define NI_NUMERICSERV 0x0020
-
-/*
- * Maximum length of FQDN and servie name for getnameinfo().
- */
-#define NI_MAXHOST 1025
-#define NI_MAXSERV 32
-
-/*
- * Address families and Protocol families.
- */
-#ifndef AF_UNSPEC
-#define AF_UNSPEC AF_INET
-#endif
-#ifndef PF_UNSPEC
-#define PF_UNSPEC PF_INET
-#endif
-
-/*
- * struct addrinfo.
- */
-struct addrinfo {
- int ai_flags;
- int ai_family;
- int ai_socktype;
- int ai_protocol;
- socklen_t ai_addrlen;
- char *ai_canonname;
- struct sockaddr *ai_addr;
- struct addrinfo *ai_next;
-};
-
-/*
- * Functions.
- */
-#ifdef __STDC__
-const char *gai_strerror(int);
-void freeaddrinfo(struct addrinfo *);
-int getaddrinfo(const char *, const char *, const struct addrinfo *,
- struct addrinfo **);
-int getnameinfo(const struct sockaddr *, socklen_t, char *,
- socklen_t, char *, socklen_t, int);
-#else
-const char *gai_strerror();
-void freeaddrinfo();
-int getaddrinfo();
-int getnameinfo();
-#endif
-
-#endif /* not GETADDRINFO_H */