summaryrefslogtreecommitdiffstats
path: root/lib/App/BorgRestore/Helper.pm
diff options
context:
space:
mode:
Diffstat (limited to 'lib/App/BorgRestore/Helper.pm')
-rw-r--r--lib/App/BorgRestore/Helper.pm22
1 files changed, 22 insertions, 0 deletions
diff --git a/lib/App/BorgRestore/Helper.pm b/lib/App/BorgRestore/Helper.pm
new file mode 100644
index 0000000..b4d52e5
--- /dev/null
+++ b/lib/App/BorgRestore/Helper.pm
@@ -0,0 +1,22 @@
+package App::BorgRestore::Helper;
+use v5.10;
+use strict;
+use warnings;
+
+
+sub untaint {
+ my $data = shift;
+ my $regex = shift;
+
+ $data =~ m/^($regex)$/ or die "Failed to untaint: $data";
+ return $1;
+}
+
+sub untaint_archive_name {
+ my $archive = shift;
+ return untaint($archive, qr([a-zA-Z0-9-:+]+));
+}
+
+1;
+
+__END__