Be consistent with capitalisation of object names.
[oweals/openssl.git] / crypto / objects / objects.README
1 objects.txt syntax
2 ------------------
3
4 To cover all the naming hacks that were previously in objects.h needed some
5 kind of hacks in objects.txt.
6
7 The basic syntax for adding an object is as follows:
8
9         1 2 3 4         : shortName     : Long Name
10
11                 If the long name doesn't contain spaces, or no short name
12                 exists, the long name is used as basis for the base name
13                 in C.  Otherwise, the short name is used.
14
15                 The base name (let's call it 'base') will then be used to
16                 create the C macros SN_base, LN_base, NID_base and OBJ_base.
17
18                 Note that if the base name contains spaces, dashes or periods,
19                 those will be converte to underscore.
20
21 Then there are some extra commands:
22
23         !Alias foo 1 2 3 4
24
25                 This juts makes a name foo for an OID.  The C macro
26                 OBJ_foo will be created as a result.
27
28         !Cname foo
29
30                 This makes sure that the name foo will be used as base name
31                 in C.
32
33         !module foo
34         1 2 3 4         : shortName     : Long Name
35         !global
36
37                 The !module command was meant to define a kind of modularity.
38                 What it does is to make sure the module name is prepended
39                 to the base name.  !global turns this off.  This construction
40                 is not recursive.
41
42 Lines starting with # are treated as comments, as well as any line starting
43 with ! and not matching the commands above.
44