use vars qw($dbhost $dbname $dbuser $dbpass $dbport
$all_stat $fail_stat $change_stat $green_stat
$server_time
+ $min_script_version $min_web_script_version
);
# force this before we do anything - even load modules
}
my $client_conf = $container->reval("$sconf;");
+if ($min_script_version)
+{
+ $client_conf->{script_version} ||= '0.0';
+ my ($minmajor,$minminor) = split(/\./,$min_script_version);
+ my ($smajor,$sminor) = split(/\./,$client_conf->{script_version});
+ if ($minmajor > $smajor || ($minmajor == $smajor && $minminor > $sminor))
+ {
+ print "Status: 460 script version too low\nContent-Type: text/plain\n\n";
+ print
+ "Script version is below minimum required\n",
+ "Reported version: $client_conf->{script_version},",
+ "Minumum version required: $min_script_version\n";
+ $db->disconnect;
+ exit;
+ }
+}
+
+if ($min_web_script_version)
+{
+ $client_conf->{web_script_version} ||= '0.0';
+ my ($minmajor,$minminor) = split(/\./,$min_script_version);
+ my ($smajor,$sminor) = split(/\./,$client_conf->{script_version});
+ if ($minmajor > $smajor || ($minmajor == $smajor && $minminor > $sminor))
+ {
+ print "Status: 461 web script version too low\nContent-Type: text/plain\n\n";
+ print
+ "Web Script version is below minimum required\n",
+ "Reported version: $client_conf->{web_script_version},",
+ "Minumum version required: $min_web_script_version\n";
+ $db->disconnect;
+ exit;
+ }
+}
+
my @config_flags;
if (not exists $client_conf->{config_opts} )
{
}
elsif (ref $client_conf->{config_opts} eq 'HASH')
{
- @config_flags = keys %{$client_conf->{config_opts}};
+ # leave out keys with false values
+ @config_flags = grep { $client_conf->{config_opts}->{$_} }
+ keys %{$client_conf->{config_opts}};
}
elsif (ref $client_conf->{config_opts} eq 'ARRAY' )
{
$sth->bind_param(8,$changed_this_run);
$sth->bind_param(9,$changed_since_success);
$sth->bind_param(10,$log_file_names);
-$sth->bind_param(11,$log_archive,{ pg_type => DBD::Pg::PG_BYTEA });
+#$sth->bind_param(11,$log_archive,{ pg_type => DBD::Pg::PG_BYTEA });
+$sth->bind_param(11,undef,{ pg_type => DBD::Pg::PG_BYTEA });
$sth->bind_param(12,$config_flags);
$sth->execute;
my ($os, $compiler,$arch) = @$row;
$sth->finish;
+
+$db->begin_work;
+$db->do("delete from dashboard_mat");
+$db->do("insert into dashboard_mat select * from dashboard_mat_data");
+$db->commit;
+
$db->disconnect;
print "Content-Type: text/plain\n\n";