X-Git-Url: https://git.sur5r.net/?a=blobdiff_plain;f=servers%2Fldapd%2Fmain.c;h=5e91ec6ea31fea8159093d4234c6986ada064e71;hb=c9eacbdc6407b65b395c13e1e93e8fe25bbbf041;hp=85f9b5d71f46cf53c34b1557c7a4a673a909ef4f;hpb=4863d98084d150cef8a8cd4a3094576fdfebe641;p=openldap diff --git a/servers/ldapd/main.c b/servers/ldapd/main.c index 85f9b5d71f..5e91ec6ea3 100644 --- a/servers/ldapd/main.c +++ b/servers/ldapd/main.c @@ -154,7 +154,7 @@ main( int argc, char **argv ) #ifdef LDAP_DEBUG ldap_debug = atoi( optarg ); if ( ldap_debug & LDAP_DEBUG_PACKETS ) - lber_debug = ldap_debug; + lber_int_debug = ldap_debug; #else fprintf( stderr, "Not compiled with -DLDAP_DEBUG!\n" ); #endif @@ -515,18 +515,10 @@ do_queries( conn_init(); } - (void) memset( (void *) &sb, '\0', sizeof( sb ) ); - sb.sb_sd = clientsock; - sb.sb_naddr = ( udp ) ? 1 : 0; -#ifdef LDAP_CONNECTIONLESS - sb.sb_addrs = (void **)saddrlist; - sb.sb_fromaddr = &faddr; - sb.sb_useaddr = saddrlist[ 0 ] = &saddr; -#endif - sb.sb_ber.ber_buf = NULL; - sb.sb_ber.ber_ptr = NULL; - sb.sb_ber.ber_end = NULL; - + lber_pvt_sb_init( &sb ); + lber_pvt_sb_set_desc( &sb, clientsock ); + lber_pvt_sb_set_io( &sb, (udp) ? &lber_pvt_sb_io_udp : + &lber_pvt_sb_io_tcp, NULL ); timeout.tv_sec = idletime; timeout.tv_usec = 0; for ( ;; ) { @@ -555,7 +547,7 @@ do_queries( * already waiting for us on the client sock. */ - if ( sb.sb_ber.ber_ptr >= sb.sb_ber.ber_end ) { + if ( ! lber_pvt_sb_data_ready( &sb ) ) { if ( (rc = select( dtblsize, &readfds, 0, 0, udp ? 0 : &timeout )) < 1 ) { #ifdef LDAP_DEBUG @@ -581,7 +573,7 @@ do_queries( } } - if ( sb.sb_ber.ber_ptr < sb.sb_ber.ber_end || + if ( lber_pvt_sb_data_ready( &sb ) || FD_ISSET( clientsock, &readfds ) ) { client_request( &sb, conns, udp ); } else {