From 575e609c3ba3f6557b66935a9ad5538cf241b057 Mon Sep 17 00:00:00 2001 From: Andrew Tridgell Date: Tue, 10 Jul 2001 02:53:48 +0000 Subject: much better handling of broken DNS servers we no longer lookup our own name when we create a socket in open_socket_in(). That makes things work much better with the broken DNS server at VA (This used to be commit a83d506e5cd6cef23298211b2fe4e0e25c9e5f48) --- source3/lib/util_sock.c | 18 ++---------------- 1 file changed, 2 insertions(+), 16 deletions(-) (limited to 'source3/lib/util_sock.c') diff --git a/source3/lib/util_sock.c b/source3/lib/util_sock.c index 760ceceede..f18fa2e019 100644 --- a/source3/lib/util_sock.c +++ b/source3/lib/util_sock.c @@ -780,32 +780,18 @@ open a socket of the specified type, port and address for incoming data int open_socket_in(int type, int port, int dlevel,uint32 socket_addr, BOOL rebind) { - struct hostent *hp; struct sockaddr_in sock; - pstring host_name; int res; - /* get my host name */ - if (gethostname(host_name, MAXHOSTNAMELEN) == -1) - { DEBUG(0,("gethostname failed\n")); return -1; } - - /* get host info */ - if ((hp = sys_gethostbyname(host_name)) == 0) - { - DEBUG(0,( "sys_gethostbyname: Unknown host %s\n",host_name)); - return -1; - } - memset((char *)&sock,'\0',sizeof(sock)); - memcpy((char *)&sock.sin_addr,(char *)hp->h_addr, hp->h_length); #ifdef HAVE_SOCK_SIN_LEN sock.sin_len = sizeof(sock); #endif sock.sin_port = htons( port ); - sock.sin_family = hp->h_addrtype; + sock.sin_family = AF_INET; sock.sin_addr.s_addr = socket_addr; - res = socket(hp->h_addrtype, type, 0); + res = socket(AF_INET, type, 0); if (res == -1) { DEBUG(0,("socket failed\n")); return -1; } -- cgit