• Home
Name Date Size #Lines LOC

..--

CMakeLists.txtD07-May-202489 117

READMED07-May-20241.6 KiB3831

obj.cD07-May-202417 KiB665485

obj_dat.hD07-May-2024258.2 KiB5,2615,192

obj_dat.plD07-May-20247.5 KiB310272

obj_mac.numD07-May-202420.4 KiB949948

obj_xref.cD07-May-20244.6 KiB12552

obj_xref.hD07-May-20243.5 KiB9789

obj_xref.plD07-May-20242 KiB11986

obj_xref.txtD07-May-20242.3 KiB5949

objects.plD07-May-20247.1 KiB236221

objects.txtD07-May-202443.5 KiB1,3361,188

README

1OID information is generated via a series of perl scripts. In order, the full
2list of commands to run are:
3
4        perl objects.pl objects.txt obj_mac.num ../../include/openssl/obj_mac.h
5        perl obj_dat.pl ../../include/openssl/obj_mac.h obj_dat.h
6        perl obj_xref.pl obj_mac.num obj_xref.txt > obj_xref.h
7
8objects.txt contains the list of all built-in OIDs. It is processed by
9objects.pl to output obj_mac.num and obj_mac.h. obj_mac.num is the list of NID
10values for each OID. This is an input/output parameter so NID values are stable
11across regenerations. obj_mac.h is the header which defines macros for all the
12built-in OIDs in C.
13
14obj_mac.h is read by obj_dat.pl to generate obj_dat.h. obj_dat.h contains the
15ASN1_OBJECTs corresponding to built-in OIDs themselves along with lookup tables
16for search by short name, OID, etc.
17
18obj_mac.num and obj_xref.txt are read by obj_xref.pl to generate
19obj_xref.h. obj_xref.txt links signature OIDs to corresponding public key
20algorithms and digests. obj_xref.h contains lookup tables for querying this
21information in both directions.
22
23Dependency graph:
24
25                        objects.txt
26                            |
27                            V
28                       [objects.pl] <--+
29                         /      \      |
30                        V        V     |
31                  obj_mac.h    obj_mac.num  obj_xref.txt
32                      |              \      /
33                      V               V    V
34                 [obj_dat.pl]      [obj_xref.pl]
35                      |                  |
36                      V                  V
37                  obj_dat.h         obj_xref.h
38