From: Howard Chu Date: Wed, 24 Feb 2021 19:59:51 +0000 (+0000) Subject: ITS#9477 fix regression from #9339 X-Git-Tag: OPENLDAP_REL_ENG_2_5_2BETA~4^2~5 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=22fd5a89249b9f323d38a9ef06337d10ec675dbe;p=thirdparty%2Fopenldap.git ITS#9477 fix regression from #9339 Must provide plain IP address for TCP wrapper --- diff --git a/servers/slapd/daemon.c b/servers/slapd/daemon.c index 0416b2b23c..4180b81727 100644 --- a/servers/slapd/daemon.c +++ b/servers/slapd/daemon.c @@ -2097,7 +2097,6 @@ slap_listener( #endif /* SLAPD_RLOOKUPS */ char *dnsname = NULL; - const char *peeraddr = NULL; /* we assume INET6_ADDRSTRLEN > INET_ADDRSTRLEN */ char peername[LUTIL_ADDRLEN]; struct berval peerbv = BER_BVC(peername); @@ -2308,6 +2307,11 @@ slap_listener( #ifdef HAVE_TCPD { int rc; + char *peeraddr, *paend; + peeraddr = peerbv.bv_val + 3; + paend = strrchr( peeraddr, ':' ); + if ( paend ) + *paend = '\0'; ldap_pvt_thread_mutex_lock( &sd_tcpd_mutex ); rc = hosts_ctl("slapd", dnsname != NULL ? dnsname : SLAP_STRING_UNKNOWN, @@ -2324,6 +2328,8 @@ slap_listener( slapd_close(sfd); return 0; } + if ( paend ) + *paend = ':'; } #endif /* HAVE_TCPD */ }