From: Julien Cristau Date: Tue, 12 Nov 2019 20:58:35 +0000 (+0100) Subject: ud-fingerserv: fix logging when using ipv6 and inetd X-Git-Url: https://wiki.adam-barratt.org.uk/gitweb/?a=commitdiff_plain;h=b5beb47d2e71c7744a0254dee49b836e003afefb;p=mirror%2Fuserdir-ldap.git ud-fingerserv: fix logging when using ipv6 and inetd This removes the reverse name resolution because I don't think it's useful. --- diff --git a/debian/changelog b/debian/changelog index 916ef10..cf1e4a5 100644 --- a/debian/changelog +++ b/debian/changelog @@ -25,6 +25,7 @@ userdir-ldap (0.3.97) UNRELEASED; urgency=medium * ud-mailgate: use subprocess.Popen instead of os.popen. * ud-host: use subprocess.Popen instead of os.popen. * Use ldap.initialize instead of ldap.open for compatibility with python-ldap 3.2.0. + * ud-fingerserv: fix logging when using ipv6 and inetd -- Peter Palfrader Sat, 06 Apr 2019 22:04:34 +0200 diff --git a/ud-fingerserv b/ud-fingerserv index fcdd57a..14444a7 100755 --- a/ud-fingerserv +++ b/ud-fingerserv @@ -10,6 +10,7 @@ use lib '/var/www/userdir-ldap/'; use strict vars; use IO::Handle; use IO::Socket; +use Socket qw(:addrinfo); use POSIX qw(:sys_wait_h); use Getopt::Std; use Util; @@ -102,8 +103,8 @@ if (!$use_inetd) { &log("inetd mode"); my $sockaddr = getpeername(STDIN); if ($sockaddr) { - my ($port, $addr) = unpack_sockaddr_in(getpeername(STDIN)); - &log(sprintf("[Connect from %s (%s)]", gethostbyaddr($addr, AF_INET), inet_ntoa($addr))); + my ($err, $hostname, $servicename) = getnameinfo($sockaddr, NI_NUMERICHOST|NI_NUMERICSERV); + &log(sprintf("[Connect from %s:%s]", $hostname, $servicename)); } else { &log("[Connect via terminal]"); }