add tagging ability so we can run multiple self-service clients on one machine
authorivan <ivan>
Wed, 15 Oct 2003 15:03:56 +0000 (15:03 +0000)
committerivan <ivan>
Wed, 15 Oct 2003 15:03:56 +0000 (15:03 +0000)
FS/bin/freeside-selfservice-server
fs_selfservice/FS-SelfService/SelfService.pm
fs_selfservice/FS-SelfService/freeside-selfservice-clientd

index 1071039..05fa72b 100644 (file)
@@ -33,6 +33,7 @@ $kids = 0;
 
 my $user = shift or die &usage;
 my $machine = shift or die &usage;
+my $tag = scalar(@ARGV) ? shift : '';
 my $pid_file = "/var/run/freeside-selfservice-server.$user.pid";
 #my $pid_file = "/var/run/freeside-selfservice-server.$user.pid"; $FS::UID::datasrc not posible, but should include machine name at least, hmm
 
@@ -50,7 +51,7 @@ while (1) {
   my($writer,$reader,$error) = (new IO::Handle, new IO::Handle, new IO::Handle);
   warn "connecting to $machine\n" if $Debug;
 
-  $ssh_pid = sshopen2($machine,$reader,$writer,$clientd);
+  $ssh_pid = sshopen2($machine,$reader,$writer,$clientd,$tag);
 
 #  nstore_fd(\*writer, {'hi'=>'there'});
 
index 5d3f50b..b2532be 100644 (file)
@@ -1,7 +1,7 @@
 package FS::SelfService;
 
 use strict;
-use vars qw($VERSION @ISA @EXPORT_OK $socket %autoload );
+use vars qw($VERSION @ISA @EXPORT_OK $socket %autoload $tag);
 use Exporter;
 use Socket;
 use FileHandle;
@@ -14,6 +14,7 @@ $VERSION = '0.03';
 @ISA = qw( Exporter );
 
 $socket =  "/usr/local/freeside/selfservice_socket";
+$socket .= '.'.$tag if defined $tag && length($tag);
 
 #maybe should ask ClientAPI for this list
 %autoload = (
index 45d9da9..a8b1e71 100644 (file)
@@ -16,16 +16,18 @@ use IO::File;
 
 #STDOUT->setbuf('');
 
+my $tag = scalar(@ARGV) ? '.'.shift : '';
+
 use vars qw( $Debug );
 $Debug = 2; #2 will turn on child logging, 3 will log packet contents,
             #including potentially compromising information
 
-my $socket = "/usr/local/freeside/selfservice_socket";
+my $socket = "/usr/local/freeside/selfservice_socket$tag";
 my $pid_file = "$socket.pid";
 
-my $log_file = "/usr/local/freeside/selfservice.log";
+my $log_file = "/usr/local/freeside/selfservice$tag.log";
 
-my $lock_file = "/usr/local/freeside/selfservice.writelock";
+my $lock_file = "/usr/local/freeside/selfservice$tag.writelock";
 
 #my $me = '[client]';