mirror of
https://github.com/openssl/openssl.git
synced 2024-11-24 10:34:12 +08:00
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>
This commit is contained in:
parent
9c3bcfa027
commit
591b7aef05
@ -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
|
||||
|
@ -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;
|
||||
|
Loading…
Reference in New Issue
Block a user