status: factoring out normalize_content_filename

Signed-off-by: Lorenz Stechauner <l.stechauner@proxmox.com>
This commit is contained in:
Lorenz Stechauner
2021-06-22 11:19:21 +02:00
committed by Thomas Lamprecht
parent 0153334270
commit edda43ed4f
2 changed files with 13 additions and 5 deletions

View File

@ -413,11 +413,7 @@ __PACKAGE__->register_method ({
my $size = -s $tmpfilename;
die "temporary file '$tmpfilename' does not exist\n" if !defined($size);
my $filename = $param->{filename};
chomp $filename;
$filename =~ s/^.*[\/\\]//;
$filename =~ s/[^-a-zA-Z0-9_.]/_/g;
my $filename = PVE::Storage::normalize_content_filename($param->{filename});
my $path;

View File

@ -1945,4 +1945,16 @@ sub assert_sid_unused {
return undef;
}
# removes leading/trailing spaces and (back)slashes completely
# substitutes every non-ASCII-alphanumerical char with '_', except '_.-'
sub normalize_content_filename {
my ($filename) = @_;
chomp $filename;
$filename =~ s/^.*[\/\\]//;
$filename =~ s/[^a-zA-Z0-9_.-]/_/g;
return $filename;
}
1;