comparison libfdproto/utils.c @ 1103:d8591b1c56cd

Implemented a few hooks
author Sebastien Decugis <sdecugis@freediameter.net>
date Fri, 10 May 2013 18:48:57 +0800
parents 44f3e48dfe27
children 79dd22145f52
comparison
equal deleted inserted replaced
1102:1d7b3ebda27f 1103:d8591b1c56cd
63 if (sa) { 63 if (sa) {
64 int rc = getnameinfo(sa, sSAlen( sa ), addrbuf, sizeof(addrbuf), servbuf, sizeof(servbuf), flags); 64 int rc = getnameinfo(sa, sSAlen( sa ), addrbuf, sizeof(addrbuf), servbuf, sizeof(servbuf), flags);
65 if (rc) { 65 if (rc) {
66 CHECK_MALLOC_DO( fd_dump_extend( FD_DUMP_STD_PARAMS, "%s", gai_strerror(rc)), return NULL); 66 CHECK_MALLOC_DO( fd_dump_extend( FD_DUMP_STD_PARAMS, "%s", gai_strerror(rc)), return NULL);
67 } else { 67 } else {
68 CHECK_MALLOC_DO( fd_dump_extend( FD_DUMP_STD_PARAMS, "%s", &addrbuf[0]), return NULL); 68 CHECK_MALLOC_DO( fd_dump_extend( FD_DUMP_STD_PARAMS, "%s(s)", &addrbuf[0], &servbuf[0]), return NULL);
69 } 69 }
70 } else { 70 } else {
71 CHECK_MALLOC_DO( fd_dump_extend( FD_DUMP_STD_PARAMS, "(NULL / ANY)"), return NULL); 71 CHECK_MALLOC_DO( fd_dump_extend( FD_DUMP_STD_PARAMS, "(NULL / ANY)"), return NULL);
72 } 72 }
73 return *buf; 73 return *buf;
74 } 74 }
75
76 void fd_sa_sdump_numeric(char * buf /* must be at least sSA_DUMP_STRLEN */, sSA * sa)
77 {
78 char addrbuf[INET6_ADDRSTRLEN];
79 char servbuf[32];
80
81 if (sa) {
82 int rc = getnameinfo(sa, sSAlen( sa ), addrbuf, sizeof(addrbuf), servbuf, sizeof(servbuf), NI_NUMERICHOST | NI_NUMERICSERV);
83 if (rc) {
84 snprintf(buf, sSA_DUMP_STRLEN, "%s", gai_strerror(rc));
85 } else {
86 snprintf(buf, sSA_DUMP_STRLEN, "%s(%s)", addrbuf, servbuf);
87 }
88 } else {
89 snprintf(buf, sSA_DUMP_STRLEN, "(NULL / ANY)");
90 }
91
92 }
"Welcome to our mercurial repository"