diff options
author | Mystery Man <unknown@mandriva.org> | 2004-07-15 06:27:30 +0000 |
---|---|---|
committer | Mystery Man <unknown@mandriva.org> | 2004-07-15 06:27:30 +0000 |
commit | 9a047aaee6ce50ac6f4ed6f51f590764c4a8c4c2 (patch) | |
tree | b5ddf2e127d03e3a0f8fbf0caded464da2ed447c /mdk-stage1/dietlibc/libcruft/gethostbyname2_r.c | |
parent | 416a326f1fc775511cf1eac2c04cca2a69d9961a (diff) | |
download | drakx-backup-do-not-use-9a047aaee6ce50ac6f4ed6f51f590764c4a8c4c2.tar drakx-backup-do-not-use-9a047aaee6ce50ac6f4ed6f51f590764c4a8c4c2.tar.gz drakx-backup-do-not-use-9a047aaee6ce50ac6f4ed6f51f590764c4a8c4c2.tar.bz2 drakx-backup-do-not-use-9a047aaee6ce50ac6f4ed6f51f590764c4a8c4c2.tar.xz drakx-backup-do-not-use-9a047aaee6ce50ac6f4ed6f51f590764c4a8c4c2.zip |
This commit was manufactured by cvs2svn to create tag 'V10_54mdk'.V10_54mdk
Diffstat (limited to 'mdk-stage1/dietlibc/libcruft/gethostbyname2_r.c')
-rw-r--r-- | mdk-stage1/dietlibc/libcruft/gethostbyname2_r.c | 55 |
1 files changed, 0 insertions, 55 deletions
diff --git a/mdk-stage1/dietlibc/libcruft/gethostbyname2_r.c b/mdk-stage1/dietlibc/libcruft/gethostbyname2_r.c deleted file mode 100644 index 75da5e320..000000000 --- a/mdk-stage1/dietlibc/libcruft/gethostbyname2_r.c +++ /dev/null @@ -1,55 +0,0 @@ -#include <string.h> -#include <sys/types.h> -#include <sys/socket.h> -#include <netinet/in.h> -#include <netdb.h> -#include <stdlib.h> -#include <arpa/inet.h> -#include <unistd.h> -#include "dietfeatures.h" -#include <errno.h> -#include "dietdns.h" - -/* Oh boy, this interface sucks so badly, there are no words for it. - * Not one, not two, but _three_ error signalling methods! (*h_errnop - * nonzero? return value nonzero? *RESULT zero?) The glibc goons - * really outdid themselves with this one. */ -int gethostbyname2_r(const char* name, int AF, struct hostent* result, - char *buf, size_t buflen, - struct hostent **RESULT, int *h_errnop) { - size_t L=strlen(name); - int lookfor=0; - switch (AF) { - case AF_INET: lookfor=1; break; - case AF_INET6: lookfor=28; break; - default: *h_errnop=EINVAL; return 1; - } - result->h_name=buf; - if (buflen<L) { *h_errnop=ERANGE; return 1; } -#ifdef WANT_ETC_HOSTS - { - struct hostent* r; - while ((r=gethostent_r(buf,buflen))) { - if (r->h_addrtype==AF) { - int i; - if (!strcmp(r->h_name,name)) { /* found it! */ -found: - memmove(result,r,sizeof(struct hostent)); - *RESULT=result; - *h_errnop=0; - endhostent(); - return 0; - } - for (i=0; i<16; ++i) { - if (r->h_aliases[i]) { - if (!strcmp(r->h_aliases[i],name)) goto found; - } else break; - } - } - } - endhostent(); - } -#endif - strcpy(buf,name); - return __dns_gethostbyx_r(name,result,buf+L,buflen-L,RESULT,h_errnop,lookfor); -} |