# (c) 1999 Randolph Chung. Licensed under the GPL. <tausq@debian.org>
# (c) 2004 Martin Schulze. Licensed under the GPL. <joey@debian.org>
+# Copyright (c) 2008 Peter Palfrader <peter@palfrader.org>
use lib '/var/www/userdir-ldap/';
#use lib '/home/randolph/projects/userdir-ldap/web';
use strict vars;
use IO::Handle;
use IO::Socket;
+use Socket qw(:addrinfo);
use POSIX qw(:sys_wait_h);
use Getopt::Std;
use Util;
-use Net::LDAP qw(:all);
+use Net::LDAP;
# Global settings...
my %config = &Util::ReadConfigFile;
&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]");
}