X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=exec%2Fumount;h=7bde90046a922f480c9c79f12ac034fb451f4767;hb=8ca50f187c51f3619488e24f5f6f834b08218442;hp=f7c7fea84ce7f54794ed0ccdff38c8ebf286c05c;hpb=6d24fcdb96dba98d6e6819137f3894c434b110e7;p=vsys-scripts.git diff --git a/exec/umount b/exec/umount index f7c7fea..7bde900 100755 --- a/exec/umount +++ b/exec/umount @@ -7,16 +7,18 @@ my $slice_dir="/vservers/$slicename/"; my $localpath = ; chomp($localpath); -$localpath=~s/\.\.//g; $localpath=$slice_dir.$localpath; -unless (-d $localpath) { - die("Localpath does not exist, please create it first."); +my $pathtest; + +$pathtest=''; +while ($localpath=~/(\/?[\w\d\-_]+\/?)/g) { + $pathtest=$pathtest.$1; } -unless($localpath=~/\/?[\w\d]+\/[\w\d]*\/?/) { - die("$localpath is not a path"); +if ($pathtest ne $localpath) { + die "$localpath is not a safe path"; } my $mntcmd="/bin/umount $localpath";