From 762f3898849f6975286d7d0511f9e340cc2eb073 Mon Sep 17 00:00:00 2001 From: Michael Gernoth Date: Sun, 8 Feb 2009 13:43:57 +0100 Subject: [PATCH] cleanup request generation, add sensor list function --- rsbs2.pl | 56 +++++++++++++++++++++++++++++++++++--------------------- 1 file changed, 35 insertions(+), 21 deletions(-) diff --git a/rsbs2.pl b/rsbs2.pl index 17f33dc..4d09c1b 100755 --- a/rsbs2.pl +++ b/rsbs2.pl @@ -148,7 +148,7 @@ sub _req { $request = HTTP::Request->new(POST => "http://${host}/cgi/bin"); $request->header(Cookie => "sid=$sid"); $request->content_type('application/x-www-form-urlencoded'); - $request->content($xml); + $request->content(''.$xml.''); $response = $ua->request($request); die("Error in request: " . $response->status_line . "\n") unless ($response->is_success); XMLin($response->content, SuppressEmpty => ''); @@ -157,7 +157,7 @@ sub _req { sub _cmd { my $cmd = shift; - my $reqstr=''; + my $reqstr=''; my $res = _req($reqstr); if ($res->{RESP}->{RC} ne '0x0') { print "${cmd} failed: ".$res->{RESP}->{RC}."\n"; @@ -170,7 +170,7 @@ sub _cmd { sub _getprop { my $property = shift; - my $reqstr=''; + my $reqstr=''; my $resp = _req($reqstr); print "get: ${property}\n" if ($verbose); @@ -204,7 +204,7 @@ sub setprop { return; } - my $reqstr=''.$value.''; + my $reqstr=''.$value.''; my $res = _req($reqstr); if ($res->{RESP}->{RC} ne '0x0') { @@ -228,7 +228,7 @@ sub serveraction { setprop("SERVER_POWER_OFF_MODE", sprintf("0x%x", $pmode)); print "${action}...\n" if ($verbose); - my $reqstr=''.$action.''; + my $reqstr=''.$action.''; my $res = _req($reqstr); if ($res->{RESP}->{RC} ne '0x0') { @@ -266,7 +266,7 @@ sub showprop { } sub board_properties { - my $reqstr=''; + my $reqstr=''; my $resp = _req($reqstr); print " * Board Properties:\n"; @@ -276,7 +276,7 @@ sub board_properties { } sub show_boarddesc { - my $reqstr=''; + my $reqstr=''; my $boarddesc64 = _req($reqstr)->{RESP}->{BPROPLIST}->{BPROP}->{VAL}; my $boarddesc = decode_base64($boarddesc64); my @board = split(//, $boarddesc); @@ -293,20 +293,19 @@ sub show_all_vars { } sub usrlist { - my $reqstr = ''; - my $res = _req($reqstr); + my $res = _cmd("usrlist"); my @users = (); - if ($res->{RESP}->{RC} ne '0x0') { - print "FAILED:".$res->{RESP}->{RC}."\n"; + if ($res->{RC} ne '0x0') { + print "FAILED:".$res->{RC}."\n"; (); } else { - if (ref($res->{RESP}->{USRLIST}->{USER}) eq 'ARRAY') { - foreach my $usr (@{$res->{RESP}->{USRLIST}->{USER}}) { + if (ref($res->{USRLIST}->{USER}) eq 'ARRAY') { + foreach my $usr (@{$res->{USRLIST}->{USER}}) { push @users, $usr->{NAME}; } } else { - push @users, $res->{RESP}->{USRLIST}->{USER}->{NAME}; + push @users, $res->{USRLIST}->{USER}->{NAME}; } } @users; @@ -315,7 +314,7 @@ sub usrlist { sub getusrprops { my $usr = shift; - my $reqstr = ''; + my $reqstr = ''; my $res = _req($reqstr)->{RESP}->{USER}->{PROP}; $res; @@ -324,7 +323,7 @@ sub getusrprops { sub usradd { my $usr = shift; - my $reqstr=''; + my $reqstr=''; my $res = _req($reqstr); if ($res->{RESP}->{RC} ne '0x0') { print "FAILED:".$res->{RESP}->{RC}."\n"; @@ -336,7 +335,7 @@ sub setusrprop { my $property = shift; my $value = shift; - my $reqstr=''; + my $reqstr=''; my $res = _req($reqstr); my $oldval = ${res}->{RESP}->{USER}->{PROP}->{VAL}; @@ -346,7 +345,7 @@ sub setusrprop { return; } - $reqstr=''.$value.''; + $reqstr=''.$value.''; $res = _req($reqstr); if ($res->{RESP}->{RC} ne '0x0') { @@ -362,14 +361,14 @@ sub syslog_debug { my $destination_ip = shift; my $bcast = shift; - my $reqstr=''.${destination_ip}.''.${bcast}.'FALSE'; + my $reqstr=''.${destination_ip}.''.${bcast}.'FALSE'; my $res = _req($reqstr); if ($res->{RESP}->{RC} ne '0x0') { print "FAILED:".$res->{RESP}->{RC}."\n"; return; } - $reqstr='TRUE0x10x1FALSE'; + $reqstr='TRUE0x10x1FALSE'; $res = _req($reqstr); if ($res->{RESP}->{RC} ne '0x0') { print "FAILED:".$res->{RESP}->{RC}."\n"; @@ -379,6 +378,19 @@ sub syslog_debug { print "Debug messages will be sent to ${destination_ip} (broadcast: ${bcast})\n"; } +sub sensors { + my $slist= _cmd("sensorlist"); + my %sens = (); + + if ($slist->{RC} ne '0x0') { + print "Error getting sensorlist: ".$slist->{RC}."\n"; + return; + } + + foreach my $s (@{$slist->{SENSORLIST}->{SENSOR}}) { + } +} + sub status { my $boardstatus = _cmd("boardstatus")->{STATUS}; my $fw = _cmd("boardfwstatus"); @@ -426,6 +438,8 @@ sub status { if ($fws != 0) { print "FW upgrade progress:\t${boardfwprogress}\n"; } + print "\nSensors:\n"; + sensors(); } sub login { @@ -648,7 +662,7 @@ if (@sprop) { if (@xmlsend) { foreach my $x (@xmlsend) { - print Dumper(_req(''.$x.'')); + print Dumper(_req($x)); } } -- 2.39.2