Code

Apply patch for #5508
[gosa.git] / trunk / gosa-si / gosa-si-server
index 091402f963c0916a547b2f829aa5f39f9c54eb1d..c95660b5ce4aea1257b43745b0b4c0a6a40cace4 100755 (executable)
@@ -953,6 +953,10 @@ sub send_msg_to_target {
             $sql_statement = "DELETE FROM known_server WHERE hostname='$address'";
             $res = $known_server_db->del_dbentry($sql_statement);
             daemon_log("$session_id WARNING: failed 2x to send a message to host '$address', delete host from known_server", 3);
+
+            # Remove the registered clients of the server as well
+           $sql_statement = "DELETE FROM foreign_clients WHERE regserver='$address'";
+           $res = $foreign_clients_db->del_dbentry($sql_statement);
         } 
         else { 
             $sql_statement = "UPDATE known_server SET status='$new_status', timestamp='$timestamp' WHERE hostname='$address'";
@@ -1938,7 +1942,8 @@ sub watch_for_delivery_messages {
     my ($kernel, $heap) = @_[KERNEL, HEAP];
 
     # select outgoing messages
-    my $sql_statement = "SELECT * FROM $messaging_tn WHERE ( flag='p' AND direction='out' )";
+    my $timestamp= &get_time();
+    my $sql_statement = "SELECT * FROM $messaging_tn WHERE ( flag='p' AND direction='out' AND delivery_time<$timestamp)";
     #&daemon_log("0 DEBUG: $sql", 7);
     my $res = $messaging_db->exec_statement( $sql_statement );