diff --git a/gosa-si/gosa-si-server b/gosa-si/gosa-si-server
index d14b5baa7964ba4c03b99d0631e0f5ae6bba6914..a46f68c2e7897aa48e57e2d903f3dcad5bd07949 100755 (executable)
--- a/gosa-si/gosa-si-server
+++ b/gosa-si/gosa-si-server
my (%cfg_defaults, $foreground, $verbose, $ping_timeout);
my ($bus, $msg_to_bus, $bus_cipher);
-my ($server, $server_mac_address, $server_events);
+my ($server, $server_mac_address);
my ($gosa_server, $job_queue_timeout, $job_queue_table_name, $job_queue_file_name,$job_queue_loop_delay);
my ($known_modules, $known_clients_file_name, $known_server_file_name);
-my ($max_clients);
my ($pid_file, $procid, $pid, $log_file);
-my (%free_child, %busy_child, $child_max, $child_min, %child_alive_time, $child_timeout);
-my ($arp_activ, $arp_fifo, $arp_fifo_path);
+my ($arp_activ, $arp_fifo);
my ($xml);
# variables declared in config file are always set to 'our'
our (%cfg_defaults, $log_file, $pid_file,
- $bus_activ, $bus_key, $bus_ip, $bus_port,
- $server_activ, $server_ip, $server_port, $SIPackages_key, $max_clients,
- $arp_activ, $arp_fifo_path,
- $gosa_activ, $GosaPackages_key, $gosa_ip, $gosa_port, $gosa_timeout,
+ $server_ip, $server_port, $SIPackages_key,
+ $arp_activ,
+ $GosaPackages_key, $gosa_ip, $gosa_port, $gosa_timeout,
);
# additional variable which should be globaly accessable
# holds all registrated clients
our $known_clients_db;
-%cfg_defaults =
-("general" =>
- {"log_file" => [\$log_file, "/var/run/".$0.".log"],
- "pid_file" => [\$pid_file, "/var/run/".$0.".pid"],
- "child_max" => [\$child_max, 10],
- "child_min" => [\$child_min, 3],
- "child_timeout" => [\$child_timeout, 180],
- "job_queue_timeout" => [\$job_queue_timeout, undef],
- "job_queue_file_name" => [\$job_queue_file_name, '/var/lib/gosa-si/gosa-si-server_jobs.db'],
- "job_queue_loop_delay" => [\$job_queue_loop_delay, 3],
- "known_clients_file_name" => [\$known_clients_file_name, '/var/lib/gosa-si/gosa-si-server_known_clients.db' ],
- "known_server_file_name" => [\$known_server_file_name, '/var/lib/gosa-si/gosa-si-server_known_server.db'],
- },
-"bus" =>
- {"bus_activ" => [\$bus_activ, "on"],
- "bus_passwd" => [\$bus_key, ""],
- "bus_ip" => [\$bus_ip, "0.0.0.0"],
- "bus_port" => [\$bus_port, "20080"],
+%cfg_defaults = (
+"general" => {
+ "log-file" => [\$log_file, "/var/run/".$0.".log"],
+ "pid-file" => [\$pid_file, "/var/run/".$0.".pid"],
},
-"server" =>
- {"server_activ" => [\$server_activ, "on"],
- "server_ip" => [\$server_ip, "0.0.0.0"],
- "server_port" => [\$server_port, "20081"],
- "SIPackages_key" => [\$SIPackages_key, "none"],
- "max_clients" => [\$max_clients, 100],
+"server" => {
+# "ip" => [\$server_ip, "0.0.0.0"],
+ "port" => [\$server_port, "20081"],
+ "known-clients" => [\$known_clients_file_name, '/var/lib/gosa-si/clients.db' ],
+ "known-servers" => [\$known_server_file_name, '/var/lib/gosa-si/servers.db'],
},
-"arp" =>
- {"arp_activ" => [\$arp_activ, "on"],
- "arp_fifo_path" => [\$arp_fifo_path, "/var/run/gosa-si/arp-notify"],
+"GOsaPackages" => {
+ "ip" => [\$gosa_ip, "0.0.0.0"],
+ "port" => [\$gosa_port, "20082"],
+ "job-queue" => [\$job_queue_file_name, '/var/lib/gosa-si/jobs.db'],
+ "job-queue-loop-delay" => [\$job_queue_loop_delay, 3],
+ "key" => [\$GosaPackages_key, "none"],
},
-"gosa" =>
- {"gosa_activ" => [\$gosa_activ, "on"],
- "gosa_ip" => [\$gosa_ip, "0.0.0.0"],
- "gosa_port" => [\$gosa_port, "20082"],
- "GosaPackages_key" => [\$GosaPackages_key, "none"],
+"SIPackages" => {
+ "key" => [\$SIPackages_key, "none"],
},
- );
+);
#=== FUNCTION ================================================================
while( my ($mod, $info) = each(%act_modules)) {
# check a key exists for this module
+
+
+print STDERR "SIPackages_key:$SIPackages_key\n";
+
+
my $module_key = ${$mod."_key"};
if( ! $module_key ) {
daemon_log("ERROR: no key specified in config file for $mod", 1);
sub trigger_db_loop {
# my ($kernel) = $_[KERNEL];
my ($kernel) = @_ ;
- $kernel->delay_set('watch_for_new_jobs',3);
+ $kernel->delay_set('watch_for_new_jobs', $job_queue_loop_delay);
}
system('rm -f /tmp/gosa_si_lock*gosa-si-server*');
# connect to gosa-si job queue
-my @job_col_names = ("id", "timestamp", "status", "result", "headertag", "targettag", "xmlmessage", "macaddress");
+my @job_col_names = ("id INTEGER", "timestamp", "status", "result", "headertag", "targettag", "xmlmessage", "macaddress");
$job_db = GOSA::DBsqlite->new($job_queue_file_name);
$job_db->create_table('jobs', \@job_col_names);