diff options
author | Jakub Hrozek <jhrozek@redhat.com> | 2014-07-18 15:37:34 +0200 |
---|---|---|
committer | Jakub Hrozek <jhrozek@redhat.com> | 2014-08-05 12:52:51 +0200 |
commit | d5903e1982525d27cb135899c8827ec253599d8c (patch) | |
tree | 8039b334a086ee163ac99be601777ef1cbb669a9 /src/providers/ldap/sdap_async.c | |
parent | f47a1a7add1bcf78f26e9be457ff1a771e7377df (diff) | |
download | sssd-d5903e1982525d27cb135899c8827ec253599d8c.tar.gz sssd-d5903e1982525d27cb135899c8827ec253599d8c.tar.xz sssd-d5903e1982525d27cb135899c8827ec253599d8c.zip |
LDAP: Dump LDAP server IP address with a high DEBUG level
Reviewed-by: Pavel Březina <pbrezina@redhat.com>
Diffstat (limited to 'src/providers/ldap/sdap_async.c')
-rw-r--r-- | src/providers/ldap/sdap_async.c | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/src/providers/ldap/sdap_async.c b/src/providers/ldap/sdap_async.c index 0ce874707..4100f6d14 100644 --- a/src/providers/ldap/sdap_async.c +++ b/src/providers/ldap/sdap_async.c @@ -1083,6 +1083,40 @@ static errno_t add_to_deref_reply(TALLOC_CTX *mem_ctx, return EOK; } +static void sdap_print_server(struct sdap_handle *sh) +{ + int ret; + int fd; + struct sockaddr_storage ss; + socklen_t ss_len = sizeof(ss); + char ip[NI_MAXHOST]; + + if (!DEBUG_IS_SET(SSSDBG_TRACE_INTERNAL)) { + return; + } + + ret = get_fd_from_ldap(sh->ldap, &fd); + if (ret != EOK) { + DEBUG(SSSDBG_MINOR_FAILURE, "cannot get sdap fd\n"); + return; + } + + ret = getsockname(fd, (struct sockaddr *) &ss, &ss_len); + if (ret == -1) { + DEBUG(SSSDBG_MINOR_FAILURE, "getsockname failed\n"); + return; + } + + ret = getnameinfo((struct sockaddr *) &ss, ss_len, + ip, sizeof(ip), NULL, 0, NI_NUMERICHOST); + if (ret != 0) { + DEBUG(SSSDBG_MINOR_FAILURE, "getnameinfo failed\n"); + return; + } + + DEBUG(SSSDBG_TRACE_INTERNAL, "Searching %s\n", ip); +} + /* ==Generic Search exposing all options======================= */ typedef errno_t (*sdap_parse_cb)(struct sdap_handle *sh, struct sdap_msg *msg, @@ -1172,6 +1206,8 @@ sdap_get_generic_ext_send(TALLOC_CTX *memctx, return req; } + sdap_print_server(sh); + /* Be extra careful and never allow paging for BASE searches, * even if requested. */ |