Changeset 1855 for zzuf/trunk


Ignore:
Timestamp:
Nov 2, 2007, 10:32:18 PM (13 years ago)
Author:
Sam Hocevar
Message:
  • Log and divert bind() calls.
File:
1 edited

Legend:

Unmodified
Added
Removed
  • zzuf/trunk/src/lib-fd.c

    r1791 r1855  
    8282static int     (*ORIG(accept))  (int sockfd, struct sockaddr *addr,
    8383                                 SOCKLEN_T *addrlen);
     84#endif
     85#if defined HAVE_BIND
     86static int     (*ORIG(bind))    (int sockfd, const struct sockaddr *my_addr,
     87                                 SOCKLEN_T addrlen);
    8488#endif
    8589#if defined HAVE_SOCKET
     
    173177    if(ret >= 0)
    174178    {
    175         debug("%s(%i, %p, %p) = %i", __func__, sockfd, addr, addrlen, ret);
     179        debug("%s(%i, %p, &%i) = %i", __func__,
     180              sockfd, addr, (int)*addrlen, ret);
     181        _zz_register(ret);
     182    }
     183
     184    return ret;
     185}
     186#endif
     187
     188#if defined HAVE_BIND
     189int NEW(bind)(int sockfd, const struct sockaddr *my_addr, SOCKLEN_T addrlen)
     190{
     191    int ret;
     192
     193    LOADSYM(bind);
     194    ret = ORIG(bind)(sockfd, my_addr, addrlen);
     195    if(!_zz_ready || _zz_islocked(-1) || !_zz_network)
     196        return ret;
     197
     198    if(ret >= 0)
     199    {
     200        debug("%s(%i, %p, %i) = %i", __func__,
     201              sockfd, my_addr, (int)addrlen, ret);
    176202        _zz_register(ret);
    177203    }
     
    252278
    253279        if(ret >= 4)
    254             debug("%s(%i, %p, %li, 0x%x, %p, %p) = %i \"%c%c%c%c...", __func__,
    255                   s, buf, (long int)len, flags, from, fromlen, ret,
    256                   b[0], b[1], b[2], b[3]);
     280            debug("%s(%i, %p, %li, 0x%x, %p, &%i) = %i \"%c%c%c%c...",
     281                  __func__, s, buf, (long int)len, flags, from, (int)*fromlen,
     282                  ret, b[0], b[1], b[2], b[3]);
    257283        else
    258             debug("%s(%i, %p, %li, 0x%x, %p, %p) = %i \"%c...", __func__,
    259                   s, buf, (long int)len, flags, from, fromlen, ret, b[0]);
     284            debug("%s(%i, %p, %li, 0x%x, %p, &%i) = %i \"%c...",
     285                  __func__, s, buf, (long int)len, flags, from, (int)*fromlen,
     286                  ret, b[0]);
    260287    }
    261288    else
Note: See TracChangeset for help on using the changeset viewer.