Navigation


Changeset 1103:d8591b1c56cd in freeDiameter for libfdproto/utils.c


Ignore:
Timestamp:
May 10, 2013, 7:48:57 PM (11 years ago)
Author:
Sebastien Decugis <sdecugis@freediameter.net>
Branch:
default
Phase:
public
Message:

Implemented a few hooks

File:
1 edited

Legend:

Unmodified
Added
Removed
  • libfdproto/utils.c

    r1093 r1103  
    6666                        CHECK_MALLOC_DO( fd_dump_extend( FD_DUMP_STD_PARAMS, "%s", gai_strerror(rc)), return NULL);
    6767                } 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);
    6969                }
    7070        } else {
     
    7373        return *buf;
    7474}
     75
     76void 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}
Note: See TracChangeset for help on using the changeset viewer.