From 7b01c627c62ef6be519110fcd6cb88c86c5cd0ab Mon Sep 17 00:00:00 2001 From: Tim Potter Date: Mon, 18 Jun 2001 05:42:18 +0000 Subject: Removed silly Get_Hostbyname() wrapper as DNS names are case-insensitive and the use of this function only increased timeouts when Samba queries a broken DNS server. (This used to be commit 720fea53603b2f99153709e6717ca930ab60ca9f) --- source3/include/proto.h | 1 - source3/lib/util.c | 69 +++------------------------------------------- source3/lib/util_sock.c | 8 +++--- source3/libsmb/namequery.c | 2 +- 4 files changed, 9 insertions(+), 71 deletions(-) (limited to 'source3') diff --git a/source3/include/proto.h b/source3/include/proto.h index f1be2de1ae..b2f41e231f 100644 --- a/source3/include/proto.h +++ b/source3/include/proto.h @@ -495,7 +495,6 @@ BOOL zero_ip(struct in_addr ip); char *automount_lookup(char *user_name); char *automount_lookup(char *user_name); BOOL same_net(struct in_addr ip1,struct in_addr ip2,struct in_addr mask); -struct hostent *Get_Hostbyname(const char *name); BOOL process_exists(pid_t pid); char *uidtoname(uid_t uid); char *gidtoname(gid_t gid); diff --git a/source3/lib/util.c b/source3/lib/util.c index b3eef430f1..0c0d3f70a7 100644 --- a/source3/lib/util.c +++ b/source3/lib/util.c @@ -803,13 +803,13 @@ uint32 interpret_addr(char *str) res = inet_addr(str); } else { /* otherwise assume it's a network name of some sort and use - Get_Hostbyname */ - if ((hp = Get_Hostbyname(str)) == 0) { - DEBUG(3,("Get_Hostbyname: Unknown host. %s\n",str)); + sys_gethostbyname */ + if ((hp = sys_gethostbyname(str)) == 0) { + DEBUG(3,("sys_gethostbyname: Unknown host. %s\n",str)); return 0; } if(hp->h_addr == NULL) { - DEBUG(3,("Get_Hostbyname: host address is invalid for host %s\n",str)); + DEBUG(3,("sys_gethostbyname: host address is invalid for host %s\n",str)); return 0; } putip((char *)&res,(char *)hp->h_addr); @@ -995,67 +995,6 @@ BOOL same_net(struct in_addr ip1,struct in_addr ip2,struct in_addr mask) } -/**************************************************************************** -a wrapper for gethostbyname() that tries with all lower and all upper case -if the initial name fails -****************************************************************************/ -struct hostent *Get_Hostbyname(const char *name) -{ - char *name2 = strdup(name); - struct hostent *ret; - - if (!name2) - { - DEBUG(0,("Memory allocation error in Get_Hostbyname! panic\n")); - exit(0); - } - - - /* - * This next test is redundent and causes some systems (with - * broken isalnum() calls) problems. - * JRA. - */ - -#if 0 - if (!isalnum(*name2)) - { - free(name2); - return(NULL); - } -#endif /* 0 */ - - ret = sys_gethostbyname(name2); - if (ret != NULL) - { - free(name2); - return(ret); - } - - /* try with all lowercase */ - strlower(name2); - ret = sys_gethostbyname(name2); - if (ret != NULL) - { - free(name2); - return(ret); - } - - /* try with all uppercase */ - strupper(name2); - ret = sys_gethostbyname(name2); - if (ret != NULL) - { - free(name2); - return(ret); - } - - /* nothing works :-( */ - free(name2); - return(NULL); -} - - /**************************************************************************** check if a process exists. Does this work on all unixes? ****************************************************************************/ diff --git a/source3/lib/util_sock.c b/source3/lib/util_sock.c index d741f038ce..b0426e3809 100644 --- a/source3/lib/util_sock.c +++ b/source3/lib/util_sock.c @@ -791,9 +791,9 @@ int open_socket_in(int type, int port, int dlevel,uint32 socket_addr, BOOL rebin { DEBUG(0,("gethostname failed\n")); return -1; } /* get host info */ - if ((hp = Get_Hostbyname(host_name)) == 0) + if ((hp = sys_gethostbyname(host_name)) == 0) { - DEBUG(0,( "Get_Hostbyname: Unknown host %s\n",host_name)); + DEBUG(0,( "sys_gethostbyname: Unknown host %s\n",host_name)); return -1; } @@ -945,8 +945,8 @@ static BOOL matchname(char *remotehost,struct in_addr addr) struct hostent *hp; int i; - if ((hp = Get_Hostbyname(remotehost)) == 0) { - DEBUG(0,("Get_Hostbyname(%s): lookup failure.\n", remotehost)); + if ((hp = sys_gethostbyname(remotehost)) == 0) { + DEBUG(0,("sys_gethostbyname(%s): lookup failure.\n", remotehost)); return False; } diff --git a/source3/libsmb/namequery.c b/source3/libsmb/namequery.c index 7714de760b..465198dfad 100644 --- a/source3/libsmb/namequery.c +++ b/source3/libsmb/namequery.c @@ -772,7 +772,7 @@ static BOOL resolve_hosts(const char *name, DEBUG(3,("resolve_hosts: Attempting host lookup for name %s<0x20>\n", name)); - if (((hp = Get_Hostbyname(name)) != NULL) && (hp->h_addr != NULL)) { + if (((hp = sys_gethostbyname(name)) != NULL) && (hp->h_addr != NULL)) { struct in_addr return_ip; putip((char *)&return_ip,(char *)hp->h_addr); *return_iplist = (struct in_addr *)malloc(sizeof(struct in_addr)); -- cgit