diff --git a/lib-src/pop.c b/lib-src/pop.c index 57a5e52..55f2b10 100644 --- a/lib-src/pop.c +++ b/lib-src/pop.c @@ -962,13 +962,9 @@ static int have_winsock = 0; static int socket_connection (char *host, int flags) { -#ifdef HAVE_GETADDRINFO struct addrinfo *res, *it; struct addrinfo hints; int ret; -#else /* !HAVE_GETADDRINFO */ - struct hostent *hostent; -#endif struct servent *servent; struct sockaddr_in addr; char found_port = 0; @@ -1055,7 +1051,6 @@ socket_connection (char *host, int flags) } -#ifdef HAVE_GETADDRINFO memset (&hints, 0, sizeof (hints)); hints.ai_socktype = SOCK_STREAM; hints.ai_flags = AI_CANONNAME; @@ -1087,34 +1082,6 @@ socket_connection (char *host, int flags) } freeaddrinfo (res); -#else /* !HAVE_GETADDRINFO */ - do - { - hostent = gethostbyname (host); - try_count++; - if ((! hostent) && ((h_errno != TRY_AGAIN) || (try_count == 5))) - { - strcpy (pop_error, "Could not determine POP server's address"); - return (-1); - } - } while (! hostent); - - while (*hostent->h_addr_list) - { - memcpy (&addr.sin_addr, *hostent->h_addr_list, hostent->h_length); - if (! connect (sock, (struct sockaddr *) &addr, sizeof (addr))) - break; - hostent->h_addr_list++; - } - connect_ok = *hostent->h_addr_list != NULL; - if (! connect_ok) - { - realhost = alloca (strlen (hostent->h_name) + 1); - strcpy (realhost, hostent->h_name); - } - -#endif /* !HAVE_GETADDRINFO */ - #define CONNECT_ERROR "Could not connect to POP server: " if (! connect_ok) diff --git a/src/conf_post.h b/src/conf_post.h index 2788abf..b2eb2a2 100644 --- a/src/conf_post.h +++ b/src/conf_post.h @@ -122,7 +122,6 @@ typedef bool bool_bf; char *_getpty(); #endif #define INET6 /* Needed for struct sockaddr_in6. */ -#undef HAVE_GETADDRINFO /* IRIX has getaddrinfo but not struct addrinfo. */ #endif /* IRIX6_5 */ #ifdef MSDOS diff --git a/src/process.c b/src/process.c index d83e2d2..9a4bedf 100644 --- a/src/process.c +++ b/src/process.c @@ -3430,21 +3430,6 @@ connect_network_socket (Lisp_Object proc, Lisp_Object ip_addresses) } -#ifndef HAVE_GETADDRINFO -static Lisp_Object -conv_numerical_to_lisp (unsigned char *number, int length, int port) -{ - Lisp_Object address = Fmake_vector (make_number (length + 1), Qnil); - struct Lisp_Vector *p = XVECTOR (address); - - p->contents[length] = make_number (port); - for (int i = 0; i < length; i++) - p->contents[i] = make_number (number[i]); - - return address; -} -#endif - /* Create a network stream/datagram client/server process. Treated exactly like a normal process when reading and writing. Primary differences are in status display and process deletion. A network @@ -3615,11 +3600,9 @@ usage: (make-network-process &rest ARGS) */) Lisp_Object proc; Lisp_Object contact; struct Lisp_Process *p; -#if defined HAVE_GETADDRINFO || defined HAVE_GETADDRINFO_A const char *portstring; ptrdiff_t portstringlen ATTRIBUTE_UNUSED; char portbuf[INT_BUFSIZE_BOUND (EMACS_INT)]; -#endif #ifdef HAVE_LOCAL_SOCKETS struct sockaddr_un address_un; #endif @@ -3690,7 +3673,7 @@ usage: (make-network-process &rest ARGS) */) tem = Fplist_get (contact, QCfamily); if (NILP (tem)) { -#if defined (HAVE_GETADDRINFO) && defined (AF_INET6) +#ifdef AF_INET6 family = AF_UNSPEC; #else family = AF_INET; @@ -3762,7 +3745,6 @@ usage: (make-network-process &rest ARGS) */) } #endif -#if defined HAVE_GETADDRINFO || defined HAVE_GETADDRINFO_A if (!NILP (host)) { /* SERVICE can either be a string or int. @@ -3784,7 +3766,6 @@ usage: (make-network-process &rest ARGS) */) portstringlen = SBYTES (service); } } -#endif #ifdef HAVE_GETADDRINFO_A if (!NILP (host) && !NILP (Fplist_get (contact, QCnowait))) @@ -3816,7 +3797,6 @@ usage: (make-network-process &rest ARGS) */) } #endif /* HAVE_GETADDRINFO_A */ -#ifdef HAVE_GETADDRINFO /* If we have a host, use getaddrinfo to resolve both host and service. Otherwise, use getservbyname to lookup the service. */ @@ -3860,7 +3840,6 @@ usage: (make-network-process &rest ARGS) */) goto open_socket; } -#endif /* HAVE_GETADDRINFO */ /* We end up here if getaddrinfo is not defined, or in case no hostname has been specified (e.g. for a local server process). */ @@ -3899,47 +3878,6 @@ usage: (make-network-process &rest ARGS) */) xsignal1 (Qerror, CALLN (Fformat, unknown_service, service)); } -#ifndef HAVE_GETADDRINFO - if (!NILP (host)) - { - struct hostent *host_info_ptr; - unsigned char *addr; - int addrlen; - - /* gethostbyname may fail with TRY_AGAIN, but we don't honor that, - as it may `hang' Emacs for a very long time. */ - immediate_quit = 1; - QUIT; - -#ifdef HAVE_RES_INIT - res_init (); -#endif - - host_info_ptr = gethostbyname ((const char *) SDATA (host)); - immediate_quit = 0; - - if (host_info_ptr) - { - addr = (unsigned char *) host_info_ptr->h_addr; - addrlen = host_info_ptr->h_length; - } - else - /* Attempt to interpret host as numeric inet address. This - only works for IPv4 addresses. */ - { - unsigned long numeric_addr = inet_addr (SSDATA (host)); - - if (numeric_addr == -1) - error ("Unknown host \"%s\"", SDATA (host)); - - addr = (unsigned char *) &numeric_addr; - addrlen = 4; - } - - ip_addresses = list1 (conv_numerical_to_lisp (addr, addrlen, port)); - } -#endif /* not HAVE_GETADDRINFO */ - open_socket: if (!NILP (buffer))