diff options
Diffstat (limited to 'src/lib/libcrypto/objects/objects.README')
-rw-r--r-- | src/lib/libcrypto/objects/objects.README | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/src/lib/libcrypto/objects/objects.README b/src/lib/libcrypto/objects/objects.README new file mode 100644 index 0000000000..4d745508d8 --- /dev/null +++ b/src/lib/libcrypto/objects/objects.README | |||
@@ -0,0 +1,44 @@ | |||
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 | |||