home *** CD-ROM | disk | FTP | other *** search
/ PCNET 2006 September - Disc 1 / PCNET_CD_2006_09.iso / linux / puppy-barebones-2.01r2.iso / pup_201.sfs / usr / local / bin / dpidc < prev    next >
Encoding:
Text File  |  2006-05-20  |  744 b   |  32 lines

  1. #!/usr/bin/perl -w
  2. # Author: Ferdi Franceschini
  3. #
  4. # dpid control program
  5. # Currently allows
  6. # register: Tells dpid to register all available dpis
  7. # stop: Stops dpid.
  8.  
  9. use strict;
  10. use IO::Socket::UNIX;
  11.  
  12. # Get socket directory name
  13. open(DSD, "<$ENV{HOME}/.dillo/dpi_socket_dir");
  14. my $dir = <DSD>;
  15. close(DSD);
  16.  
  17. my $socket = IO::Socket::UNIX->new(Peer => "$dir/dpid.srs", Type => SOCK_STREAM, Timeout => 1000 ) or die "new: $@";
  18.  
  19. $socket->autoflush(1);
  20.  
  21. my %dpi_command = ( 
  22.         "register" => "<dpi cmd='register_all' '>",
  23.         "stop" => "<dpi cmd='DpiBye' '>",
  24.         );
  25.  
  26. if ( exists($dpi_command{$ARGV[0]}) ) {
  27.         print $socket $dpi_command{$ARGV[0]};
  28. } else {
  29.         close($socket);
  30.         print "Usage: dpidc register|stop\n";
  31. }
  32.