index 1aa8db2a82beb1f73298853dcfa16c31b80f61ee..80ce0ada7ea9b34d085b9bdf44aece6257816bdd 100644 (file)
use Exporter;
@ISA = ("Exporter");
-# Each module has to have a function 'process_incoming_msg'. This function works as a interface to gosa-sd and recieves the msg hash from gosa-sd. 'process_incoming_function checks, wether it has a function to process the incoming msg and forward the msg to it.
+# Each module has to have a function 'process_incoming_msg'. This function works as a interface to gosa-sd and receives the msg hash from gosa-sd. 'process_incoming_function checks, wether it has a function to process the incoming msg and forward the msg to it.
use strict;
$network_interface= &get_interface_for_ip($server_ip);
$server_mac_address= &get_mac($network_interface);
-&main::daemon_log("server ip address detected: $server_ip", 1);
-&main::daemon_log("server mac address detected: $server_mac_address", 1);
-
# complete addresses
my $server_address = "$server_ip:$server_port";
my $bus_address = "$bus_ip:$bus_port";
# create general settings for this module
my $xml = new XML::Simple();
-# open server socket
-if($server_activ eq "on"){
- &main::daemon_log(" ", 1);
- $server = IO::Socket::INET->new(LocalPort => $server_port,
- Type => SOCK_STREAM,
- Reuse => 1,
- Listen => 20,
- );
- if(not defined $server){
- &main::daemon_log("cannot be a tcp server at $server_port : $@");
- die;
- } else {
- &main::daemon_log("start server: $server_address", 1);
- }
-}
-
-
# register at bus
if ($main::no_bus > 0) {
$bus_activ = "off"
}
if($bus_activ eq "on") {
- &main::daemon_log(" ", 1);
®ister_at_bus();
}
$crypted_msg =~ /^([\s\S]*?)\.(\d{1,3}?)\.(\d{1,3}?)\.(\d{1,3}?)\.(\d{1,3}?)$/;
$crypted_msg = $1;
- my $host = sprintf("%s.%s.%s.%s", $2, $3, $4, $5);
+ my $host="0.0.0.0";
+ if($1 && $2 && $3 && $4) {
+ $host = sprintf("%s.%s.%s.%s", $2, $3, $4, $5);
+ }
my $msg;
my $msg_hash;
&main::daemon_log("ServerPackage: host_key: $host_key", 7);
eval{
my $key_cipher = &create_ciphering($host_key);
- $msg = &decrypt_msg($crypted_msg, $key_cipher);
+ $msg = &decrypt_msg($crypted_msg, $key_cipher);
$msg_hash = &transform_msg2hash($msg);
};
if($@) {
# check wether incoming msg is from a known_server
if( not defined $msg ) {
- my $query_res = $main::known_server_db->select_dbentry( {table=>'known_server'} );
+ #my $query_res = $main::known_server_db->select_dbentry( {table=>'known_server'} );
+ my $sql_statement= "SELECT * FROM known_server";
+ my $query_res = $main::known_server_db->select_dbentry( $sql_statement );
while( my ($hit_num, $hit) = each %{ $query_res } ) {
$host_name = $hit->{hostname};
if( not $host_name =~ "^$host") {
# check wether incoming msg is from a known_client
if( not defined $msg ) {
- my $query_res = $main::known_clients_db->select_dbentry( {table=>'known_clients'} );
+ #my $query_res = $main::known_clients_db->select_dbentry( {table=>'known_clients'} );
+ my $sql_statement= "SELECT * FROM known_clients";
+ my $query_res = $main::known_clients_db->select_dbentry( $sql_statement );
while( my ($hit_num, $hit) = each %{ $query_res } ) {
$host_name = $hit->{hostname};
if( not $host_name =~ "^$host") {
if( not defined $msg ) {
&main::daemon_log("WARNING: ServerPackage do not understand the message:", 5);
- &main::daemon_log("$@", 7);
+ &main::daemon_log("$@", 8);
return;
}
my $header = @{$msg_hash->{header}}[0];
my $source = @{$msg_hash->{source}}[0];
- &main::daemon_log("recieve '$header' at ServerPackages from $host", 1);
- &main::daemon_log("ServerPackages: msg to process: \n$msg", 7);
+ &main::daemon_log("receive '$header' at ServerPackages from $host", 1);
+ &main::daemon_log("ServerPackages: msg to process: \n$msg", 5);
my @targets = @{$msg_hash->{target}};
my $len_targets = @targets;