11 my $debug = $ENV{DEBUG} || 0;
15 $SIG{'__WARN__'} = sub {
16 my $level = $1 if $_[0] =~ m/^(#+)/;
17 return if defined($level) && length($level) > $debug;
22 my $listen = shift @ARGV || 'localhost:2389';
24 my $sock = IO::Socket::INET->new(
29 ) || die "can't listen to $listen $!";
31 warn "# listening on $listen";
33 my $sel = IO::Select->new($sock);
35 while (my @ready = $sel->can_read) {
36 foreach my $fh (@ready) {
38 # let's create a new socket
39 my $psock = $sock->accept;
40 $psock->sockopt(SO_KEEPALIVE,1);
42 $Handlers{*$psock} = LDAP::Koha->new($psock);
44 my $result = $Handlers{*$fh}->handle;
46 # we have finished with the socket
49 delete $Handlers{*$fh};