projects
/
BackupPC.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
* Added multi-level incrementals. Still needs testing.
[BackupPC.git]
/
bin
/
BackupPC_zipCreate
diff --git
a/bin/BackupPC_zipCreate
b/bin/BackupPC_zipCreate
index
51683fb
..
8e0b483
100755
(executable)
--- a/
bin/BackupPC_zipCreate
+++ b/
bin/BackupPC_zipCreate
@@
-100,7
+100,8
@@
EOF
exit(1);
}
exit(1);
}
-if ( $opts{h} !~ /^([\w\.\s-]+)$/ ) {
+if ( $opts{h} !~ /^([\w\.\s-]+)$/
+ || $opts{h} =~ m{(^|/)\.\.(/|$)} ) {
print(STDERR "$0: bad host name '$opts{h}'\n");
exit(1);
}
print(STDERR "$0: bad host name '$opts{h}'\n");
exit(1);
}
@@
-141,7
+142,8
@@
$Charset = $opts{e} if ( $opts{e} ne "" );
my $PathRemove = $1 if ( $opts{r} =~ /(.+)/ );
my $PathAdd = $1 if ( $opts{p} =~ /(.+)/ );
my $PathRemove = $1 if ( $opts{r} =~ /(.+)/ );
my $PathAdd = $1 if ( $opts{p} =~ /(.+)/ );
-if ( $opts{s} !~ /^([\w\s.\/$(){}[\]-]+)$/ ) {
+if ( $opts{s} !~ /^([\w\s.@\/$(){}[\]-]+)$/
+ || $opts{s} =~ m{(^|/)\.\.(/|$)} ) {
print(STDERR "$0: bad share name '$opts{s}'\n");
exit(1);
}
print(STDERR "$0: bad share name '$opts{s}'\n");
exit(1);
}
@@
-170,6
+172,7
@@
sub archiveWrite
$ErrorCnt++;
return;
}
$ErrorCnt++;
return;
}
+ $dir = "/" if ( $dir eq "." );
$view->find($Num, $ShareName, $dir, 0, \&ZipWriteFile,
$zipfh, $zipPathOverride);
}
$view->find($Num, $ShareName, $dir, 0, \&ZipWriteFile,
$zipfh, $zipPathOverride);
}