Code

removed images.
[gosa.git] / gosa-si / modules / ServerPackages.pm
index 820ccc2586f790b0791625465c630a745b53d1e2..d50cdea1600645fa4ed259ffee29409123523ab4 100644 (file)
@@ -8,14 +8,7 @@ use Exporter;
 use strict;
 use warnings;
 use GOSA::GosaSupportDaemon;
-
-#use IO::Socket::INET;
-#use XML::Simple;
-#use Data::Dumper;
-#use NetAddr::IP;
-#use Net::LDAP;
-#use Socket;
-#use Net::hostent;
+use Data::Dumper;
 
 my $event_dir = "/usr/lib/gosa-si/server/ServerPackages";
 use lib "/usr/lib/gosa-si/server/ServerPackages";
@@ -28,12 +21,10 @@ END {}
 
 # import local events
 my ($error, $result, $event_hash) = &import_events($event_dir);
-if ($error == 0) {
-    foreach my $log_line (@$result) {
+foreach my $log_line (@$result) {
+    if ($log_line =~ / succeed: /) {
         &main::daemon_log("0 DEBUG: ServerPackages - $log_line", 7);
-    }
-} else {
-    foreach my $log_line (@$result) {
+    } else {
         &main::daemon_log("0 ERROR: ServerPackages - $log_line", 1);
     }
 }
@@ -42,7 +33,7 @@ if ($error == 0) {
 
 sub get_module_info {
     my @info = ($main::server_address,
-            $main::foreign_server_key,            
+            $main::ServerPackages_key,         
             );
     return \@info;
 }
@@ -55,7 +46,13 @@ sub process_incoming_msg {
     my $sql_events;
 
     my @msg_l;
-    my @out_msg_l;
+    my @out_msg_l = ( 'nohandler' );
+
+
+    # if message is being forwarded from another server, strip of header prefixes
+    $header =~ s/^gosa_|^job_//;
+    $msg =~ s/<header>gosa_(\w+)<\/header>|<header>job_(\w+)<\/header>/<header>$1<\/header>/;
+    
 
     &main::daemon_log("$session_id DEBUG: ServerPackages: msg to process '$header'", 7);
     if( exists $event_hash->{$header} ) {
@@ -68,7 +65,10 @@ sub process_incoming_msg {
         $sql_events = "SELECT * FROM $main::known_clients_tn WHERE ( (macaddress LIKE '$target') OR (hostname='$target') )"; 
         my $res = $main::known_clients_db->select_dbentry( $sql_events );
         my $l = keys(%$res);
-        
+
+
+# TODO
+# $l == 1, knownclienterror wird eigentlich nicht gebraucht. hier soll nohandler anspringen
         # set error if no or more than 1 hits are found for sql query
         if ( $l != 1) {
             @out_msg_l = ('knownclienterror');