redirect router: taint-enforce filenames
[users/jgh/exim.git] / test / patchexim
index 9659ba133cecd443e3ef5ac101d7dc544c3f5979..c2983e4d0b742cb449fbe0fe5cf53fe24196690f 100755 (executable)
@@ -19,7 +19,18 @@ open(OUT, '>eximdir/exim') || die "** Failed to open eximdir/exim: $!\n";
 while(<IN>)
   {
   s/>>>running<<</<<<testing>>>/;
-  s/(\d+\.\d+(?:[_.]\d+)?([_-]RC\d+|[_-]dev)?(?:[0-9a-fA-F-]*)(?:-XX)?\0<<eximversion>>)/"x.yz\0" . ("*" x (length($1) - 5))/e;
+  s{
+    (\d+\.\d+                         # major.minor
+    (?:[_.]\d+)?                      # optional security-patchlevel
+    (?:[_.]\d+)?                      # optional patchlevel
+    (?:[_-]RC\d+|[_-]?dev(?:start)?)? # optional RC or dev(start)
+    (?:(?:[_-]\d+)?                   # git tag distance
+       [-_][[:xdigit:]]+)?            # git id
+    (?:[-_]XX)?\0                     # git dirty bit
+    <<eximversion>>                   # marker
+    )
+   }
+   {"x.yz\0" . ("*" x (length($1) - 5))}xe;
   print OUT;
   }