* higher priority.
*/
#ifdef LDAP_DEBUG
- Debug( LDAP_DEBUG_CONNS, "daemon: activity on:" );
+ if ( LogTest( LDAP_DEBUG_CONNS ) ) {
+ char *ptr = ebuf;
+ int remaining = sizeof(ebuf);
- for ( i = 0; i < ns; i++ ) {
- int r, w, fd;
+ *ptr = '\0';
+ for ( i = 0; i < ns; i++ ) {
+ int r, w, fd;
- /* Don't log listener events */
- if ( SLAP_EVENT_IS_LISTENER( tid, i )
+ /* Don't log listener events */
+ if ( SLAP_EVENT_IS_LISTENER( tid, i )
#ifdef LDAP_CONNECTIONLESS
- && !( (SLAP_EVENT_LISTENER( tid, i ))->sl_is_udp )
+ && !( (SLAP_EVENT_LISTENER( tid, i ))->sl_is_udp )
#endif /* LDAP_CONNECTIONLESS */
- )
- {
- continue;
- }
+ )
+ {
+ continue;
+ }
- fd = SLAP_EVENT_FD( tid, i );
- /* Don't log internal wake events */
- if ( fd == wake_sds[tid][0] ) continue;
+ fd = SLAP_EVENT_FD( tid, i );
+ /* Don't log internal wake events */
+ if ( fd == wake_sds[tid][0] ) continue;
#ifdef HAVE_KQUEUE
- r = SLAP_EVENT_IS_READ( tid, i );
- w = SLAP_EVENT_IS_WRITE( tid, i );
+ r = SLAP_EVENT_IS_READ( tid, i );
+ w = SLAP_EVENT_IS_WRITE( tid, i );
#else
- r = SLAP_EVENT_IS_READ( i );
- w = SLAP_EVENT_IS_WRITE( i );
+ r = SLAP_EVENT_IS_READ( i );
+ w = SLAP_EVENT_IS_WRITE( i );
#endif /* HAVE_KQUEUE */
- if ( r || w ) {
- Debug( LDAP_DEBUG_CONNS, " %d%s%s", fd,
- r ? "r" : "", w ? "w" : "" );
+ if ( r || w ) {
+ int written = snprintf( ptr, remaining, "%d%s%s ",
+ fd, r ? "r" : "", w ? "w" : "" );
+ if ( written >= remaining ) {
+ *ptr = '\0';
+ Debug( LDAP_DEBUG_CONNS, "daemon: activity on: %s\n", ebuf );
+ ptr = ebuf;
+ remaining = sizeof(ebuf);
+ written = snprintf( ptr, remaining, "%d%s%s ",
+ fd, r ? "r" : "", w ? "w" : "" );
+ }
+ remaining -= written;
+ }
}
+ Debug( LDAP_DEBUG_CONNS, "daemon: activity on: %s\n", ebuf );
}
- Debug( LDAP_DEBUG_CONNS, "\n" );
#endif /* LDAP_DEBUG */
for ( i = 0; i < ns; i++ ) {