summaryrefslogtreecommitdiff
path: root/rh-bin/listdropboxes.cgi
diff options
context:
space:
mode:
Diffstat (limited to 'rh-bin/listdropboxes.cgi')
-rwxr-xr-xrh-bin/listdropboxes.cgi38
1 files changed, 23 insertions, 15 deletions
diff --git a/rh-bin/listdropboxes.cgi b/rh-bin/listdropboxes.cgi
index cb608f4..39270e6 100755
--- a/rh-bin/listdropboxes.cgi
+++ b/rh-bin/listdropboxes.cgi
@@ -36,24 +36,32 @@ my $q = CGI->new;
my $username = $q->param('LOGIN_NAME');
my $token = $q->param('PASSWORD');
-(my $ctx, $status, $errorstring) = RHRD::rddb::init();
-if(defined $ctx) {
- my $result;
- ($result, $status, $errorstring) = RHRD::rddb::check_token($ctx, $username, $token);
- if($result == 1) {
- $responsecode = 200;
- @dropboxes = RHRD::rddb::get_dropboxes($ctx, $username);
- if(!defined $dropboxes[0] && defined $dropboxes[1]) {
+if(!defined $username) {
+ $responsecode = 400;
+ $errorstring = "mandatory field LOGIN_NAME is missing"
+} elsif(!defined $token) {
+ $responsecode = 400;
+ $errorstring = "mandatory field PASSWORD is missing"
+} else {
+ (my $ctx, $status, $errorstring) = RHRD::rddb::init();
+ if(defined $ctx) {
+ my $result;
+ ($result, $status, $errorstring) = RHRD::rddb::check_token($ctx, $username, $token);
+ if($result == 1) {
+ $responsecode = 200;
+ @dropboxes = RHRD::rddb::get_dropboxes($ctx, $username);
+ if(!defined $dropboxes[0] && defined $dropboxes[1]) {
+ $responsecode = 500;
+ $status = $dropboxes[1];
+ $errorstring = $dropboxes[2];
+ }
+ } elsif($result == 0) {
+ $responsecode = 401;
+ } else {
$responsecode = 500;
- $status = $dropboxes[1];
- $errorstring = $dropboxes[2];
}
- } elsif($result == 0) {
- $responsecode = 401;
- } else {
- $responsecode = 500;
+ RHRD::rddb::destroy($ctx);
}
- RHRD::rddb::destroy($ctx);
}
print "Content-type: application/xml; charset=UTF-8\n";