mirror of
https://github.com/SCST-project/scst.git
synced 2026-05-18 19:21:26 +00:00
scstadmin, SCST.pm: Make argument checking more strict
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@5066 d57e44dd-8a1f-0410-8b47-8ef2f437770f
This commit is contained in:
@@ -1038,6 +1038,9 @@ sub addDriverDynamicAttribute {
|
||||
my $attribute = shift;
|
||||
my $value = shift;
|
||||
|
||||
return SCST_C_DRV_ADDATTR_FAIL
|
||||
if (!defined($driver) || !defined($attribute) || !defined($value));
|
||||
|
||||
my $rc = $self->driverExists($driver);
|
||||
return SCST_C_DRV_NO_DRIVER if (!$rc);
|
||||
return $rc if ($rc > 1);
|
||||
@@ -1082,6 +1085,9 @@ sub removeDriverDynamicAttribute {
|
||||
my $attribute = shift;
|
||||
my $value = shift;
|
||||
|
||||
return SCST_C_DRV_REMATTR_FAIL
|
||||
if (!defined($driver) || !defined($attribute) || !defined($value));
|
||||
|
||||
my $rc = $self->driverExists($driver);
|
||||
return SCST_C_DRV_NO_DRIVER if (!$rc);
|
||||
return $rc if ($rc > 1);
|
||||
@@ -1253,6 +1259,8 @@ sub targetDynamicAttributes {
|
||||
my %attributes;
|
||||
my $available;
|
||||
|
||||
return undef if (!defined($driver));
|
||||
|
||||
if ($self->driverExists($driver) != TRUE) {
|
||||
$self->{'err_string'} = "targetDynamicAttributes(): Driver '$driver' ".
|
||||
"is not available";
|
||||
@@ -1334,6 +1342,10 @@ sub addTargetDynamicAttribute {
|
||||
my $attribute = shift;
|
||||
my $value = shift;
|
||||
|
||||
return SCST_C_TGT_ADDATTR_FAIL
|
||||
if (!defined($driver) || !defined($target) ||
|
||||
!defined($attribute) || !defined($value));
|
||||
|
||||
my $rc = $self->driverExists($driver);
|
||||
return SCST_C_DRV_NO_DRIVER if (!$rc);
|
||||
return $rc if ($rc > 1);
|
||||
@@ -1382,6 +1394,10 @@ sub removeTargetDynamicAttribute {
|
||||
my $attribute = shift;
|
||||
my $value = shift;
|
||||
|
||||
return SCST_C_TGT_REMATTR_FAIL
|
||||
if (!defined($driver) || !defined($target) ||
|
||||
!defined($attribute) || !defined($value));
|
||||
|
||||
my $rc = $self->driverExists($driver);
|
||||
return SCST_C_DRV_NO_DRIVER if (!$rc);
|
||||
return $rc if ($rc > 1);
|
||||
@@ -1503,7 +1519,7 @@ sub groupExists {
|
||||
my $target = shift;
|
||||
my $group = shift;
|
||||
|
||||
return FALSE if (!defined($group));
|
||||
return FALSE if (!defined($driver) || !defined($target) || !defined($group));
|
||||
|
||||
my $rc = $self->targetExists($driver, $target);
|
||||
|
||||
@@ -1528,7 +1544,8 @@ sub initiatorExists {
|
||||
my $group = shift;
|
||||
my $initiator = shift;
|
||||
|
||||
return FALSE if (!defined($initiator));
|
||||
return FALSE if (!defined($driver) || !defined($target) ||
|
||||
!defined($group) || !defined($initiator));
|
||||
|
||||
my $rc = $self->groupExists($driver, $target, $group);
|
||||
|
||||
@@ -1553,7 +1570,8 @@ sub lunExists {
|
||||
my $lun = shift;
|
||||
my $group = shift;
|
||||
|
||||
return FALSE if (!defined($lun));
|
||||
return FALSE if (!defined($driver) || !defined($target) ||
|
||||
!defined($lun));
|
||||
|
||||
|
||||
my $rc = $self->driverExists($driver);
|
||||
@@ -3886,6 +3904,9 @@ sub setTargetGroupAttribute {
|
||||
my $attribute = shift;
|
||||
my $value = shift;
|
||||
|
||||
return TRUE if (!defined($group) || !defined($tgroup) ||
|
||||
!defined($attribute) || !defined($value));
|
||||
|
||||
my $rc = $self->deviceGroupExists($group);
|
||||
return SCST_C_DEV_GRP_NO_GROUP if (!$rc);
|
||||
return $rc if ($rc > 1);
|
||||
@@ -3929,6 +3950,10 @@ sub setTargetGroupTargetAttribute {
|
||||
my $attribute = shift;
|
||||
my $value = shift;
|
||||
|
||||
return TRUE if (!defined($group) || !defined($tgroup) ||
|
||||
!defined($tgt) || !defined($attribute) ||
|
||||
!defined($value));
|
||||
|
||||
my $rc = $self->deviceGroupExists($group);
|
||||
return SCST_C_DEV_GRP_NO_GROUP if (!$rc);
|
||||
return $rc if ($rc > 1);
|
||||
@@ -3941,8 +3966,6 @@ sub setTargetGroupTargetAttribute {
|
||||
return SCST_C_TGRP_NO_TGT if (!$rc);
|
||||
return $rc if ($rc > 1);
|
||||
|
||||
return TRUE if (!defined($attribute) || !defined($value));
|
||||
|
||||
my $attributes = $self->targetGroupTargetAttributes($group, $tgroup, $tgt);
|
||||
|
||||
return SCST_C_TGRP_TGT_BAD_ATTR if (!defined($$attributes{$attribute}));
|
||||
|
||||
Reference in New Issue
Block a user