/[A3C]/bin/ldap-server.pl
This is repository of my old source code which isn't updated any more. Go to git.rot13.org for current projects!
ViewVC logotype

Diff of /bin/ldap-server.pl

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 222 by dpavlin, Thu Jun 26 20:46:33 2008 UTC revision 229 by dpavlin, Fri Jun 27 19:31:49 2008 UTC
# Line 3  Line 3 
3  use strict;  use strict;
4  use warnings;  use warnings;
5    
6  use IO::Select;  #use Jifty;
7  use IO::Socket;  #BEGIN { Jifty->new; };
8    #Jifty->web->request(Jifty::Request->new);
9    #Jifty->web->response(Jifty::Response->new);
10    
11  use lib 'lib';  use lib 'lib';
12  use A3C::LDAP::Server;  use A3C::LDAP::Server;
13    
14  my $port = 1389;  A3C::LDAP::Server->run({ port => 1389 });
   
 my $sock = IO::Socket::INET->new(  
         Listen => 5,  
         Proto => 'tcp',  
         Reuse => 1,  
         LocalPort => $port,  
 );  
   
 warn "listen on port $port\n";  
   
 my $sel = IO::Select->new($sock);  
 my %Handlers;  
 while (my @ready = $sel->can_read) {  
         foreach my $fh (@ready) {  
                 if ($fh == $sock) {  
                         # let's create a new socket  
                         my $psock = $sock->accept;  
                         $sel->add($psock);  
                         $Handlers{*$psock} = A3C::LDAP::Server->new($psock);  
                 } else {  
                         my $result = $Handlers{*$fh}->handle;  
                         if ($result) {  
                                 # we have finished with the socket  
                                 $sel->remove($fh);  
                                 $fh->close;  
                                 delete $Handlers{*$fh};  
                         }  
                 }  
         }  
 }  
15    
16  1;  1;

Legend:
Removed from v.222  
changed lines
  Added in v.229

  ViewVC Help
Powered by ViewVC 1.1.26