VMS: have mkdef.pl parse lettered versions properly
authorRichard Levitte <levitte@openssl.org>
Mon, 11 Jun 2018 08:33:09 +0000 (10:33 +0200)
committerRichard Levitte <levitte@openssl.org>
Mon, 11 Jun 2018 14:45:50 +0000 (16:45 +0200)
Fixes #6449

Reviewed-by: Matt Caswell <matt@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/6450)

(cherry picked from commit 9a236d5a7158d38b933656cacc31dfd4ff4fcc08)

util/mkdef.pl

index 669589c8017d80f687b95fa173ba8ecf5dd3d815..b7cf9b2852fc211a7e1c753a5366572b69f86851 100755 (executable)
@@ -1288,7 +1288,7 @@ EOF
        } elsif ($VMS) {
             print OUT ")\n";
             (my $libvmaj, my $libvmin, my $libvedit) =
        } elsif ($VMS) {
             print OUT ")\n";
             (my $libvmaj, my $libvmin, my $libvedit) =
-                $currversion =~ /^(\d+)_(\d+)_(\d+)$/;
+                $currversion =~ /^(\d+)_(\d+)_(\d+)[a-z]{0,2}$/;
             # The reason to multiply the edit number with 100 is to make space
             # for the possibility that we want to encode the patch letters
             print OUT "GSMATCH=LEQUAL,",($libvmaj * 100 + $libvmin),",",($libvedit * 100),"\n";
             # The reason to multiply the edit number with 100 is to make space
             # for the possibility that we want to encode the patch letters
             print OUT "GSMATCH=LEQUAL,",($libvmaj * 100 + $libvmin),",",($libvedit * 100),"\n";