From 65def94380df4263e47e4618b8fb38dec3201638 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ond=C5=99ej=20Kuzn=C3=ADk?= Date: Fri, 30 Jun 2017 10:10:21 +0100 Subject: [PATCH] More logging improvements --- servers/lloadd/bind.c | 4 ++++ servers/lloadd/client.c | 22 ++++++++++++++------ servers/lloadd/daemon.c | 2 +- servers/lloadd/upstream.c | 44 ++++++++++++++++++++++++++++----------- 4 files changed, 53 insertions(+), 19 deletions(-) diff --git a/servers/lloadd/bind.c b/servers/lloadd/bind.c index b60b74663f..088ec3e24c 100644 --- a/servers/lloadd/bind.c +++ b/servers/lloadd/bind.c @@ -52,6 +52,8 @@ request_bind( Operation *op ) tag = ber_get_int( copy, &version ); if ( tag == LBER_ERROR ) { + Debug( LDAP_DEBUG_PACKETS, "request_bind: " + "failed to parse version field\n" ); goto fail; } else if ( version != LDAP_VERSION3 ) { ldap_pvt_thread_mutex_unlock( &upstream->c_io_mutex ); @@ -63,6 +65,8 @@ request_bind( Operation *op ) tag = ber_get_stringbv( copy, &binddn, LBER_BV_NOTERM ); if ( tag == LBER_ERROR ) { + Debug( LDAP_DEBUG_PACKETS, "request_bind: " + "failed to parse bind name field\n" ); goto fail; } diff --git a/servers/lloadd/client.c b/servers/lloadd/client.c index 0057b86439..6b5fa61260 100644 --- a/servers/lloadd/client.c +++ b/servers/lloadd/client.c @@ -66,12 +66,17 @@ client_read_cb( evutil_socket_t s, short what, void *arg ) int err = sock_errno(); if ( err != EWOULDBLOCK && err != EAGAIN ) { - if ( err ) { + if ( err || tag == LBER_ERROR ) { char ebuf[128]; - Debug( LDAP_DEBUG_ANY, "client_read_cb: " - "ber_get_next on fd %d failed errno=%d (%s)\n", + Debug( LDAP_DEBUG_STATS, "client_read_cb: " + "ber_get_next on fd=%d failed errno=%d (%s)\n", c->c_fd, err, sock_errstr( err, ebuf, sizeof(ebuf) ) ); + } else { + Debug( LDAP_DEBUG_STATS, "client_read_cb: " + "ber_get_next on fd=%d connid=%lu received " + "a strange PDU tag=%lx\n", + c->c_fd, c->c_connid, tag ); } c->c_currentber = NULL; @@ -153,12 +158,17 @@ handle_requests( void *ctx, void *arg ) int err = sock_errno(); if ( err != EWOULDBLOCK && err != EAGAIN ) { - if ( err ) { + if ( err || tag == LBER_ERROR ) { char ebuf[128]; Debug( LDAP_DEBUG_ANY, "handle_requests: " - "ber_get_next on fd %d failed errno=%d (%s)\n", + "ber_get_next on fd=%d failed errno=%d (%s)\n", c->c_fd, err, sock_errstr( err, ebuf, sizeof(ebuf) ) ); + } else { + Debug( LDAP_DEBUG_STATS, "handle_requests: " + "ber_get_next on fd=%d connid=%lu received " + "a strange PDU tag=%lx\n", + c->c_fd, c->c_connid, tag ); } c->c_currentber = NULL; @@ -260,7 +270,7 @@ client_write_cb( evutil_socket_t s, short what, void *arg ) char ebuf[128]; ldap_pvt_thread_mutex_unlock( &c->c_io_mutex ); Debug( LDAP_DEBUG_ANY, "client_write_cb: " - "ber_flush on fd %d failed errno=%d (%s)\n", + "ber_flush on fd=%d failed errno=%d (%s)\n", c->c_fd, err, sock_errstr( err, ebuf, sizeof(ebuf) ) ); CLIENT_LOCK_DESTROY(c); return; diff --git a/servers/lloadd/daemon.c b/servers/lloadd/daemon.c index e80e54b4b5..1fe8c6d023 100644 --- a/servers/lloadd/daemon.c +++ b/servers/lloadd/daemon.c @@ -138,7 +138,7 @@ static void slapd_close( ber_socket_t s ) { Debug( LDAP_DEBUG_CONNS, "slapd_close: " - "closing %ld\n", + "closing fd=%ld\n", (long)s ); tcp_close( s ); } diff --git a/servers/lloadd/upstream.c b/servers/lloadd/upstream.c index 67e48234fe..84e8d1be8f 100644 --- a/servers/lloadd/upstream.c +++ b/servers/lloadd/upstream.c @@ -493,11 +493,18 @@ handle_responses( void *ctx, void *arg ) int err = sock_errno(); if ( err != EWOULDBLOCK && err != EAGAIN ) { - char ebuf[128]; - Debug( LDAP_DEBUG_ANY, "handle_responses: " - "ber_get_next on fd %d failed errno=%d (%s)\n", - c->c_fd, err, - sock_errstr( err, ebuf, sizeof(ebuf) ) ); + if ( err || tag == LBER_ERROR ) { + char ebuf[128]; + Debug( LDAP_DEBUG_ANY, "handle_responses: " + "ber_get_next on fd=%d failed errno=%d (%s)\n", + c->c_fd, err, + sock_errstr( err, ebuf, sizeof(ebuf) ) ); + } else { + Debug( LDAP_DEBUG_STATS, "handle_responses: " + "ber_get_next on fd=%d connid=%lu received " + "a strange PDU tag=%lx\n", + c->c_fd, c->c_connid, tag ); + } c->c_currentber = NULL; ber_free( ber, 1 ); @@ -558,12 +565,17 @@ upstream_read_cb( evutil_socket_t s, short what, void *arg ) int err = sock_errno(); if ( err != EWOULDBLOCK && err != EAGAIN ) { - if ( err ) { + if ( err || tag == LBER_ERROR ) { char ebuf[128]; Debug( LDAP_DEBUG_ANY, "upstream_read_cb: " - "ber_get_next on fd %d failed errno=%d (%s)\n", + "ber_get_next on fd=%d failed errno=%d (%s)\n", c->c_fd, err, sock_errstr( err, ebuf, sizeof(ebuf) ) ); + } else { + Debug( LDAP_DEBUG_STATS, "upstream_read_cb: " + "ber_get_next on fd=%d connid=%lu received " + "a strange PDU tag=%lx\n", + c->c_fd, c->c_connid, tag ); } c->c_currentber = NULL; @@ -666,10 +678,18 @@ upstream_bind_cb( evutil_socket_t s, short what, void *arg ) int err = sock_errno(); if ( err != EWOULDBLOCK && err != EAGAIN ) { - char ebuf[128]; - Debug( LDAP_DEBUG_ANY, "upstream_bind_cb: " - "ber_get_next on fd %d failed errno=%d (%s)\n", - c->c_fd, err, sock_errstr( err, ebuf, sizeof(ebuf) ) ); + if ( err || tag == LBER_ERROR ) { + char ebuf[128]; + Debug( LDAP_DEBUG_ANY, "upstream_bind_cb: " + "ber_get_next on fd=%d failed errno=%d (%s)\n", + c->c_fd, err, + sock_errstr( err, ebuf, sizeof(ebuf) ) ); + } else { + Debug( LDAP_DEBUG_STATS, "upstream_bind_cb: " + "ber_get_next on fd=%d connid=%lu received " + "a strange PDU tag=%lx\n", + c->c_fd, c->c_connid, tag ); + } c->c_currentber = NULL; goto fail; @@ -757,7 +777,7 @@ upstream_write_cb( evutil_socket_t s, short what, void *arg ) if ( err != EWOULDBLOCK && err != EAGAIN ) { char ebuf[128]; Debug( LDAP_DEBUG_ANY, "upstream_write_cb: " - "ber_flush on fd %d failed errno=%d (%s)\n", + "ber_flush on fd=%d failed errno=%d (%s)\n", c->c_fd, err, sock_errstr( err, ebuf, sizeof(ebuf) ) ); ldap_pvt_thread_mutex_unlock( &c->c_io_mutex ); UPSTREAM_LOCK_DESTROY(c);