diff --git a/gosa-si/gosa-si-client b/gosa-si/gosa-si-client
index 1eeb7722ba6f720a16695931f9158ddb94b356d6..4ce9ceb4c57e283a177826393da0ead47a46cdf4 100755 (executable)
--- a/gosa-si/gosa-si-client
+++ b/gosa-si/gosa-si-client
# in function register_at_gosa_si_server, after which period of seconds a new registration should be tried if a registration was
# not successful until now
# in function register_at_gosa_si_server, after which period of seconds a new registration should be tried if a registration was
# not successful until now
-my $delay_set_time = 5;
+my $delay_set_time = 10;
our $prg= basename($0);
# all x seconds the client reports logged_in users to gosa-si-server
our $prg= basename($0);
# all x seconds the client reports logged_in users to gosa-si-server
# send xml hash to server with general server passwd
my $res = &send_msg_hash_to_target($register_hash, $server, $default_server_key);
# send xml hash to server with general server passwd
my $res = &send_msg_hash_to_target($register_hash, $server, $default_server_key);
+ if( $try_to_register >= @servers ) { last; }
+
# if delivery of registration msg succeed
if($res == 0) {
# reset try_to_register
# if delivery of registration msg succeed
if($res == 0) {
# reset try_to_register
next;
}
next;
}
- if( $try_to_register >= @servers ) { last; }
-
} # end of while
# one circle through all servers finished and no registration succeed
} # end of while
# one circle through all servers finished and no registration succeed
# return;
#}
# return;
#}
-#sub generic_file_error {
-# my ( $heap, $operation, $errno, $error_string, $wheel_id ) =
-# @_[ HEAP, ARG0, ARG1, ARG2, ARG3 ];
-#
-# my $service = $heap->{services}->{$wheel_id};
-# daemon_log("ERROR: '$service' watcher $operation error $errno: $error_string", 1);
-# daemon_log("ERROR: shutting down '$service' file watcher", 1);
-#
-# delete $heap->{services}->{$wheel_id};
-# delete $heap->{watchers}->{$wheel_id};
-# return;
-#}
+sub generic_file_error {
+ my ( $heap, $operation, $errno, $error_string, $wheel_id ) =
+ @_[ HEAP, ARG0, ARG1, ARG2, ARG3 ];
+
+ my $service = $heap->{services}->{$wheel_id};
+ daemon_log("ERROR: '$service' watcher $operation error $errno: $error_string", 1);
+ daemon_log("ERROR: shutting down '$service' file watcher", 1);
+
+ delete $heap->{services}->{$wheel_id};
+ delete $heap->{watchers}->{$wheel_id};
+ return;
+}
sub fifo_got_record {
sub fifo_got_record {
$kernel->yield('register_at_gosa_si_server');
# install all file watcher defined
$kernel->yield('register_at_gosa_si_server');
# install all file watcher defined
- while( my($file_name, $file) = each %files_to_watch ) {
- #my $file_watcher = POE::Wheel::FollowTail->new(
- # Filename => $file,
- # InputEvent => $file_name."_record",
+ while( my($name, $file) = each %files_to_watch ) {
+ my $watcher = POE::Wheel::FollowTail->new(
+ Filename => $file,
+ InputEvent => $name."_record",
# ResetEvent => "file_reset",
# ResetEvent => "file_reset",
- # ErrorEvent => "file_error",
- # );
- $heap->{tail} = POE::Wheel::Run->new(
- Program => [ "/usr/bin/tail", "-f", $file_name ],
- StdoutEvent => $file_name."_record",
- );
- #$heap->{services}->{ $file_watcher->ID } = $file_name;
- #$heap->{watchers}->{ $file_watcher->ID } = $file_watcher;
+ ErrorEvent => "file_error",
+ );
+# $heap->{tail} = POE::Wheel::Run->new(
+# Program => [ "/usr/bin/tail", "-f", $file ],
+# StdoutEvent => $file_name."_record",
+# );
+ $heap->{services}->{ $watcher->ID } = $name;
+ $heap->{watchers}->{ $watcher->ID } = $watcher;
}
$kernel->yield('trigger_logged_in_users_report');
}
}
$kernel->yield('trigger_logged_in_users_report');
}