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/libugly/getnameinfo.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/libugly/getnameinfo.c')
-rw-r--r-- | mdk-stage1/dietlibc/libugly/getnameinfo.c | 46 |
1 files changed, 0 insertions, 46 deletions
diff --git a/mdk-stage1/dietlibc/libugly/getnameinfo.c b/mdk-stage1/dietlibc/libugly/getnameinfo.c deleted file mode 100644 index 40883ba09..000000000 --- a/mdk-stage1/dietlibc/libugly/getnameinfo.c +++ /dev/null @@ -1,46 +0,0 @@ -#include <sys/socket.h> -#include <netinet/in.h> -#include <netdb.h> -#include <arpa/inet.h> -#include <string.h> - -extern int __ltostr(char *s, int size, unsigned long i, int base, char UpCase); - -int getnameinfo(const struct sockaddr *sa, socklen_t salen, char *host, - size_t hostlen, char *serv, size_t servlen, int flags) { - sa_family_t f=((struct sockaddr_storage *)sa)->ss_family; - (void)salen; /* shut gcc up about unused salen */ - if (host && hostlen>0) { /* user wants me to resolve the host name */ - register const char*addr=(f==AF_INET6)?(char*)&((struct sockaddr_in6*)sa)->sin6_addr: - (char*)&((struct sockaddr_in*)sa)->sin_addr; - if (flags&NI_NUMERICHOST) { - if (!inet_ntop(f,addr,host,hostlen)) - return EAI_NONAME; - } else { - char buf[4096]; - struct hostent h; - struct hostent *H; - int herrno; - if (gethostbyaddr_r(addr,f==AF_INET6?16:4,f,&h,buf,4096,&H,&herrno)) { - switch (herrno) { - case TRY_AGAIN: return EAI_AGAIN; - case NO_DATA: - case HOST_NOT_FOUND: return EAI_NONAME; - } - } - strncpy(host,h.h_name,hostlen-1); - host[hostlen-1]=0; - } - } - if (serv && servlen>0) { - register short int port=(f==AF_INET6)?((struct sockaddr_in6*)sa)->sin6_port:((struct sockaddr_in*)sa)->sin_port; - if (flags&NI_NUMERICSERV) { - __ltostr(serv,servlen,ntohs(port),10,0); - } else { - struct servent *s; - if (!(s=getservbyport(port,flags&NI_DGRAM?"udp":"tcp"))) - return EAI_SERVICE; - } - } - return 0; -} |