diff options
author | Tim Potter <tpot@samba.org> | 2001-06-18 05:42:18 +0000 |
---|---|---|
committer | Tim Potter <tpot@samba.org> | 2001-06-18 05:42:18 +0000 |
commit | 7b01c627c62ef6be519110fcd6cb88c86c5cd0ab (patch) | |
tree | b3f7bfd775a08f67a5fb301f64d7b8a64039e108 | |
parent | 672f554e76d763347985b2af3e03a426446edc2f (diff) | |
download | samba-7b01c627c62ef6be519110fcd6cb88c86c5cd0ab.tar.gz samba-7b01c627c62ef6be519110fcd6cb88c86c5cd0ab.tar.bz2 samba-7b01c627c62ef6be519110fcd6cb88c86c5cd0ab.zip |
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)
-rw-r--r-- | source3/include/proto.h | 1 | ||||
-rw-r--r-- | source3/lib/util.c | 69 | ||||
-rw-r--r-- | source3/lib/util_sock.c | 8 | ||||
-rw-r--r-- | source3/libsmb/namequery.c | 2 |
4 files changed, 9 insertions, 71 deletions
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); @@ -996,67 +996,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)); |