diff --git a/pandora_agents/unix/pandora_agent b/pandora_agents/unix/pandora_agent index 3011abb5ef..8401745da8 100755 --- a/pandora_agents/unix/pandora_agent +++ b/pandora_agents/unix/pandora_agent @@ -2882,7 +2882,7 @@ sub cron_valid_date { my $utime; eval { local $SIG{__DIE__} = sub {}; - $utime = timelocal(0, $min, $hour, $mday, $month, $year); + $utime = strftime("%s", 0, $min, $hour, $mday, $month, $year); }; if ($@) { return 0; diff --git a/pandora_server/lib/PandoraFMS/Core.pm b/pandora_server/lib/PandoraFMS/Core.pm index 21a84956eb..4deb6a7420 100644 --- a/pandora_server/lib/PandoraFMS/Core.pm +++ b/pandora_server/lib/PandoraFMS/Core.pm @@ -1660,7 +1660,9 @@ sub pandora_process_module ($$$$$$$$$;$) { pandora_update_module_on_error ($pa_config, $module, $dbh); return; } - my $last_try = ($1 == 0) ? 0 : timelocal($6, $5, $4, $3, $2 - 1, $1 - 1900); + + my $last_try = ($1 == 0) ? 0 : strftime("%s", $6, $5, $4, $3, $2 - 1, $1 - 1900); + my $save = ($module->{'history_data'} == 1 && ($agent_status->{'datos'} ne $processed_data || $last_try < ($utimestamp - 86400))) ? 1 : 0; # Received stale data. Save module data if needed and return. @@ -3823,7 +3825,7 @@ sub pandora_evaluate_snmp_alerts ($$$$$$$$$) { # Check time threshold $alert->{'last_fired'} = '1970-01-01 00:00:00' unless defined ($alert->{'last_fired'}); return unless ($alert->{'last_fired'} =~ /(\d+)\-(\d+)\-(\d+) +(\d+):(\d+):(\d+)/); - my $last_fired = ($1 > 0) ? timelocal($6, $5, $4, $3, $2 - 1, $1 - 1900) : 0; + my $last_fired = ($1 > 0) ? strftime("%s", $6, $5, $4, $3, $2 - 1, $1 - 1900) : 0; my $utimestamp = time (); my $timestamp = strftime ("%Y-%m-%d %H:%M:%S", localtime($utimestamp)); diff --git a/pandora_server/lib/PandoraFMS/DataServer.pm b/pandora_server/lib/PandoraFMS/DataServer.pm index 38a33fc263..14b27964fc 100644 --- a/pandora_server/lib/PandoraFMS/DataServer.pm +++ b/pandora_server/lib/PandoraFMS/DataServer.pm @@ -309,7 +309,7 @@ sub process_xml_data ($$$$$) { my $utimestamp = 0; eval { if ($timestamp =~ /(\d+)[\/|\-](\d+)[\/|\-](\d+) +(\d+):(\d+):(\d+)/) { - $utimestamp = timelocal($6, $5, $4, $3, $2 -1 , $1 - 1900); + $utimestamp = strftime("%s", $6, $5, $4, $3, $2 -1 , $1 - 1900); } }; @@ -837,7 +837,7 @@ sub process_module_data ($$$$$$$$$$) { } my $utimestamp; eval { - $utimestamp = timelocal($6, $5, $4, $3, $2 - 1, $1 - 1900); + $utimestamp = strftime("%s", $6, $5, $4, $3, $2 - 1, $1 - 1900); }; if ($@) { logger($pa_config, "Invalid timestamp '$timestamp' from module '$module_name' agent '$agent_name'.", 3); diff --git a/pandora_server/lib/PandoraFMS/PluginTools.pm b/pandora_server/lib/PandoraFMS/PluginTools.pm index 1543ebbc57..b010217d26 100644 --- a/pandora_server/lib/PandoraFMS/PluginTools.pm +++ b/pandora_server/lib/PandoraFMS/PluginTools.pm @@ -2382,7 +2382,7 @@ sub get_unix_time { eval { use Time::Local; my ($mday,$mon,$year,$hour,$min,$sec) = split(/[\s$separator_dates$separator_hours]+/, $str_time); - $time = timelocal($sec,$min,$hour,$mday,$mon-1,$year); + $time = strftime("%s", $sec,$min,$hour,$mday,$mon-1,$year); }; if ($@) { return 0; diff --git a/pandora_server/lib/PandoraFMS/Tools.pm b/pandora_server/lib/PandoraFMS/Tools.pm index a2a7e2b174..7736a6f31b 100755 --- a/pandora_server/lib/PandoraFMS/Tools.pm +++ b/pandora_server/lib/PandoraFMS/Tools.pm @@ -1734,7 +1734,7 @@ sub cron_valid_date { my $utime; eval { local $SIG{__DIE__} = sub {}; - $utime = timelocal(0, $min, $hour, $mday, $month, $year); + $utime = strftime("%s", 0, $min, $hour, $mday, $month, $year); }; if ($@) { return 0; diff --git a/pandora_server/util/pandora_database_check.pl b/pandora_server/util/pandora_database_check.pl index 3d92911df4..2730f50371 100755 --- a/pandora_server/util/pandora_database_check.pl +++ b/pandora_server/util/pandora_database_check.pl @@ -216,7 +216,7 @@ sub process_module_data ($$$$$$$$$) { $timestamp !~ /(\d+)\-(\d+)\-(\d+) +(\d+):(\d+):(\d+)/) { } my $utimestamp; - $utimestamp = timelocal($6, $5, $4, $3, $2 - 1, $1 - 1900); + $utimestamp = strftime("%s", $6, $5, $4, $3, $2 - 1, $1 - 1900); my %data_object; diff --git a/pandora_server/util/pandora_xml_stress.pl b/pandora_server/util/pandora_xml_stress.pl index 69bec80e04..7d3e580d0d 100644 --- a/pandora_server/util/pandora_xml_stress.pl +++ b/pandora_server/util/pandora_xml_stress.pl @@ -112,13 +112,13 @@ sub generate_xml_files ($$$$$$) { my $time_from = get_conf_token ($conf, 'time_from', $time_now); die ("[error] Invalid time_from: $time_from\n\n") unless ($time_from =~ /(\d+)\-(\d+)\-(\d+) +(\d+):(\d+):(\d+)/); - my $utimestamp_from = timelocal($6, $5, $4, $3, $2 - 1, $1 - 1900); + my $utimestamp_from = strftime("%s", $6, $5, $4, $3, $2 - 1, $1 - 1900); # Get time_to my $time_to = get_conf_token ($conf, 'time_to', $time_now); die ("[error] Invalid time_to: $time_to\n\n") unless ($time_to =~ /(\d+)\-(\d+)\-(\d+) +(\d+):(\d+):(\d+)/); - my $utimestamp_to = timelocal($6, $5, $4, $3, $2 - 1, $1 - 1900); + my $utimestamp_to = strftime("%s", $6, $5, $4, $3, $2 - 1, $1 - 1900); my %modules_src_pointers = init_src_pointers($modules);