📄 getnameinfo.c
字号:
#include "gai_hdr.h"/* include getnameinfo */intgetnameinfo(const struct sockaddr *sa, socklen_t salen, char *host, size_t hostlen, char *serv, size_t servlen, int flags){ switch (sa->sa_family) {#ifdef IPv4 case AF_INET: { struct sockaddr_in *sain = (struct sockaddr_in *) sa; return(gn_ipv46(host, hostlen, serv, servlen, &sain->sin_addr, sizeof(struct in_addr), AF_INET, sain->sin_port, flags)); }#endif#ifdef IPv6 case AF_INET6: { struct sockaddr_in6 *sain = (struct sockaddr_in6 *) sa; return(gn_ipv46(host, hostlen, serv, servlen, &sain->sin6_addr, sizeof(struct in6_addr), AF_INET6, sain->sin6_port, flags)); }#endif#ifdef UNIXdomain case AF_LOCAL: { struct sockaddr_un *un = (struct sockaddr_un *) sa; if (hostlen > 0) snprintf(host, hostlen, "%s", "/local"); if (servlen > 0) snprintf(serv, servlen, "%s", un->sun_path); return(0); }#endif default: return(1); }}/* end getnameinfo */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -