From 4422a2b200fd78ef6f77379bbb919f1315cf21e7 Mon Sep 17 00:00:00 2001
From: Tomas Plesnik <plesnik@ics.muni.cz>
Date: Tue, 14 Aug 2012 15:54:02 +0200
Subject: [PATCH] pridana podpora i pro starsi klienty, ktere nepouzivaji volbu

---
 src/warden-server/lib/Warden.pm | 14 +++++++-------
 1 file changed, 7 insertions(+), 7 deletions(-)

diff --git a/src/warden-server/lib/Warden.pm b/src/warden-server/lib/Warden.pm
index d2409a9..a42eb59 100755
--- a/src/warden-server/lib/Warden.pm
+++ b/src/warden-server/lib/Warden.pm
@@ -253,9 +253,9 @@ sub getNewEvents
   my $function_name	= 'getNewEvents';
 
   # parse SOAP data object
-  my $requested_type	= $data->{'REQUESTED_TYPE'};
-  my $last_id		= $data->{'LAST_ID'};
-  my $max_rcv_events_limit = $data->{'MAX_RCV_EVENTS_LIMIT'};
+  my $requested_type		= $data->{'REQUESTED_TYPE'};
+  my $last_id			= $data->{'LAST_ID'};
+  my $max_rcv_events_limit 	= $data->{'MAX_RCV_EVENTS_LIMIT'};
 
   my %client = authorizeClient($alt_names, $ip, $requested_type, $client_type, $function_name);
   if(defined %client) {
@@ -263,11 +263,11 @@ sub getNewEvents
       if ($requested_type eq '_any_') {		  # check if client want each or only one type of messages
         $sth = $DBH->prepare("SELECT * FROM events WHERE type != 'test' AND id > ? AND valid = 't' ORDER BY id ASC LIMIT ?;");
         if (!defined $sth) {die("Cannot prepare ROE-ANY statement in $function_name: $DBI::errstr\n")}
-        ($max_rcv_events_limit < $MAX_EVENTS_LIMIT) ? $sth->execute($last_id, $max_rcv_events_limit) : $sth->execute($last_id, $MAX_EVENTS_LIMIT);
+        (defined $max_rcv_events_limit && $max_rcv_events_limit < $MAX_EVENTS_LIMIT) ? $sth->execute($last_id, $max_rcv_events_limit) : $sth->execute($last_id, $MAX_EVENTS_LIMIT);
       } else {
         $sth = $DBH->prepare("SELECT * FROM events WHERE type != 'test' AND id > ? AND type = ? AND valid = 't' ORDER BY id ASC LIMIT ?;");
         if (!defined $sth) {die("Cannot prepare ROE statement in $function_name: $DBI::errstr\n")}
-        ($max_rcv_events_limit < $MAX_EVENTS_LIMIT) ? $sth->execute($last_id, $requested_type, $max_rcv_events_limit) : $sth->execute($last_id, $requested_type, $MAX_EVENTS_LIMIT);
+        (defined $max_rcv_events_limit && $max_rcv_events_limit < $MAX_EVENTS_LIMIT) ? $sth->execute($last_id, $requested_type, $max_rcv_events_limit) : $sth->execute($last_id, $requested_type, $MAX_EVENTS_LIMIT);
       }
     } else {
       if ($requested_type eq '_any_') {
@@ -275,13 +275,13 @@ sub getNewEvents
         if (!defined $sth) {die("Cannot prepare ANY statement in $function_name: $DBI::errstr\n")}
         my ($domain) = $cn =~ /([^\.]+\.[^\.]+)$/;
         $domain = '\%' . $domain;
-        ($max_rcv_events_limit < $MAX_EVENTS_LIMIT) ? $sth->execute($last_id, $domain, $max_rcv_events_limit) : $sth->execute($last_id, $domain, $MAX_EVENTS_LIMIT);
+        (defined $max_rcv_events_limit && $max_rcv_events_limit < $MAX_EVENTS_LIMIT) ? $sth->execute($last_id, $domain, $max_rcv_events_limit) : $sth->execute($last_id, $domain, $MAX_EVENTS_LIMIT);
       } else {
         $sth = $DBH->prepare("SELECT * FROM events WHERE type != 'test' AND id > ? AND type = ? AND valid = 't' AND hostname NOT LIKE ? ORDER BY id ASC LIMIT ?;");
         if (!defined $sth) {die("Cannot prepare statement in $function_name: $DBI::errstr\n")}
         my ($domain) = $cn =~ /([^\.]+\.[^\.]+)$/;
         $domain = '\%' . $domain;
-        ($max_rcv_events_limit < $MAX_EVENTS_LIMIT) ? $sth->execute($last_id, $requested_type, $domain, $max_rcv_events_limit) : $sth->execute($last_id, $requested_type, $domain, $MAX_EVENTS_LIMIT);
+        (defined $max_rcv_events_limit && $max_rcv_events_limit < $MAX_EVENTS_LIMIT) ? $sth->execute($last_id, $requested_type, $domain, $max_rcv_events_limit) : $sth->execute($last_id, $requested_type, $domain, $MAX_EVENTS_LIMIT);
       }
     }
 
-- 
GitLab