diff options
author | Annie Yousar <a.yousar@informatik.hu-berlin.de> | 2015-05-03 09:05:47 -0400 |
---|---|---|
committer | Rich Salz <rsalz@openssl.org> | 2015-06-02 17:16:54 -0400 |
commit | 591b7aef05b22cba09b179e5787a9bf40dfc9508 (patch) | |
tree | 95e83b13996f69eaa73f2613352165a8d1bf43b8 /crypto | |
parent | 9c3bcfa027cb32421ed20ab77553860b922b82fc (diff) |
RT3230: Better test for C identifier
objects.pl only looked for a space to see if the name could be
used as a C identifier. Improve the test to match the real C
rules.
Signed-off-by: Rich Salz <rsalz@akamai.com>
Reviewed-by: Matt Caswell <matt@openssl.org>
Diffstat (limited to 'crypto')
-rw-r--r-- | crypto/objects/objects.README | 8 | ||||
-rw-r--r-- | crypto/objects/objects.pl | 2 |
2 files changed, 5 insertions, 5 deletions
diff --git a/crypto/objects/objects.README b/crypto/objects/objects.README index 4d745508d8..cb1d216ce8 100644 --- a/crypto/objects/objects.README +++ b/crypto/objects/objects.README @@ -8,9 +8,9 @@ The basic syntax for adding an object is as follows: 1 2 3 4 : shortName : Long Name - If the long name doesn't contain spaces, or no short name - exists, the long name is used as basis for the base name - in C. Otherwise, the short name is used. + If Long Name contains only word characters and hyphen-minus + (0x2D) or full stop (0x2E) then Long Name is used as basis + for the base name in C. Otherwise, the shortName is used. The base name (let's call it 'base') will then be used to create the C macros SN_base, LN_base, NID_base and OBJ_base. @@ -22,7 +22,7 @@ Then there are some extra commands: !Alias foo 1 2 3 4 - This juts makes a name foo for an OID. The C macro + This just makes a name foo for an OID. The C macro OBJ_foo will be created as a result. !Cname foo diff --git a/crypto/objects/objects.pl b/crypto/objects/objects.pl index d0ed459d3d..389dc34837 100644 --- a/crypto/objects/objects.pl +++ b/crypto/objects/objects.pl @@ -67,7 +67,7 @@ while (<IN>) $myoid = &process_oid($myoid); } - if ($Cname eq "" && !($myln =~ / /)) + if ($Cname eq "" && ($myln =~ /^[_A-Za-z][\w.-]*$/ )) { $Cname = $myln; $Cname =~ s/\./_/g; |