summaryrefslogtreecommitdiff
path: root/src/libstrongswan/asn1
diff options
context:
space:
mode:
Diffstat (limited to 'src/libstrongswan/asn1')
-rw-r--r--src/libstrongswan/asn1/asn1.c40
-rw-r--r--src/libstrongswan/asn1/asn1.h2
-rw-r--r--src/libstrongswan/asn1/oid.c283
-rw-r--r--src/libstrongswan/asn1/oid.h112
-rw-r--r--src/libstrongswan/asn1/oid.txt7
5 files changed, 246 insertions, 198 deletions
diff --git a/src/libstrongswan/asn1/asn1.c b/src/libstrongswan/asn1/asn1.c
index 91a6621d4..2a0aa4ff6 100644
--- a/src/libstrongswan/asn1/asn1.c
+++ b/src/libstrongswan/asn1/asn1.c
@@ -731,3 +731,43 @@ chunk_t timetoasn1(const time_t *time, asn1_t type)
formatted_time.len = strlen(buf);
return asn1_simple_object(type, formatted_time);
}
+
+/**
+ * ASN.1 definition of time
+ */
+static const asn1Object_t timeObjects[] = {
+ { 0, "utcTime", ASN1_UTCTIME, ASN1_OPT|ASN1_BODY }, /* 0 */
+ { 0, "end opt", ASN1_EOC, ASN1_END }, /* 1 */
+ { 0, "generalizeTime",ASN1_GENERALIZEDTIME, ASN1_OPT|ASN1_BODY }, /* 2 */
+ { 0, "end opt", ASN1_EOC, ASN1_END } /* 3 */
+};
+#define TIME_UTC 0
+#define TIME_GENERALIZED 2
+#define TIME_ROOF 4
+
+/**
+ * extracts and converts a UTCTIME or GENERALIZEDTIME object
+ */
+time_t parse_time(chunk_t blob, int level0)
+{
+ asn1_ctx_t ctx;
+ chunk_t object;
+ u_int level;
+ int objectID = 0;
+
+ asn1_init(&ctx, blob, level0, FALSE, FALSE);
+
+ while (objectID < TIME_ROOF)
+ {
+ if (!extract_object(timeObjects, &objectID, &object, &level, &ctx))
+ return 0;
+
+ if (objectID == TIME_UTC || objectID == TIME_GENERALIZED)
+ {
+ return asn1totime(&object, (objectID == TIME_UTC)
+ ? ASN1_UTCTIME : ASN1_GENERALIZEDTIME);
+ }
+ objectID++;
+ }
+ return 0;
+}
diff --git a/src/libstrongswan/asn1/asn1.h b/src/libstrongswan/asn1/asn1.h
index 5ab519ec8..365ccb438 100644
--- a/src/libstrongswan/asn1/asn1.h
+++ b/src/libstrongswan/asn1/asn1.h
@@ -124,6 +124,8 @@ extern void asn1_init(asn1_ctx_t *ctx, chunk_t blob, u_int level0, bool implicit
extern bool extract_object(asn1Object_t const *objects, u_int *objectID, chunk_t *object, u_int *level, asn1_ctx_t *ctx);
extern bool parse_asn1_simple_object(chunk_t *object, asn1_t type, u_int level, const char* name);
extern int parse_algorithmIdentifier(chunk_t blob, int level0, chunk_t *parameters);
+extern time_t parse_time(chunk_t blob, int level0);
+
extern bool is_asn1(chunk_t blob);
extern void code_asn1_length(size_t length, chunk_t *code);
diff --git a/src/libstrongswan/asn1/oid.c b/src/libstrongswan/asn1/oid.c
index 4b0632de2..48df1b7c4 100644
--- a/src/libstrongswan/asn1/oid.c
+++ b/src/libstrongswan/asn1/oid.c
@@ -28,7 +28,7 @@ const oid_t oid_names[] = {
{ 0x01, 0, 1, "pilotAttributeType" }, /* 15 */
{ 0x01, 17, 0, "UID" }, /* 16 */
{ 0x19, 0, 0, "DC" }, /* 17 */
- {0x55, 51, 1, "X.500" }, /* 18 */
+ {0x55, 52, 1, "X.500" }, /* 18 */
{ 0x04, 36, 1, "X.509" }, /* 19 */
{ 0x03, 21, 0, "CN" }, /* 20 */
{ 0x04, 22, 0, "S" }, /* 21 */
@@ -54,144 +54,145 @@ const oid_t oid_names[] = {
{ 0x11, 42, 0, "subjectAltName" }, /* 41 */
{ 0x12, 43, 0, "issuerAltName" }, /* 42 */
{ 0x13, 44, 0, "basicConstraints" }, /* 43 */
- { 0x15, 45, 0, "reasonCode" }, /* 44 */
- { 0x1F, 46, 0, "crlDistributionPoints" }, /* 45 */
- { 0x20, 47, 0, "certificatePolicies" }, /* 46 */
- { 0x23, 48, 0, "authorityKeyIdentifier" }, /* 47 */
- { 0x25, 49, 0, "extendedKeyUsage" }, /* 48 */
- { 0x37, 50, 0, "targetInformation" }, /* 49 */
- { 0x38, 0, 0, "noRevAvail" }, /* 50 */
- {0x2A, 88, 1, "" }, /* 51 */
- { 0x86, 0, 1, "" }, /* 52 */
- { 0x48, 0, 1, "" }, /* 53 */
- { 0x86, 0, 1, "" }, /* 54 */
- { 0xF7, 0, 1, "" }, /* 55 */
- { 0x0D, 0, 1, "RSADSI" }, /* 56 */
- { 0x01, 83, 1, "PKCS" }, /* 57 */
- { 0x01, 66, 1, "PKCS-1" }, /* 58 */
- { 0x01, 60, 0, "rsaEncryption" }, /* 59 */
- { 0x02, 61, 0, "md2WithRSAEncryption" }, /* 60 */
- { 0x04, 62, 0, "md5WithRSAEncryption" }, /* 61 */
- { 0x05, 63, 0, "sha-1WithRSAEncryption" }, /* 62 */
- { 0x0B, 64, 0, "sha256WithRSAEncryption"}, /* 63 */
- { 0x0C, 65, 0, "sha384WithRSAEncryption"}, /* 64 */
- { 0x0D, 0, 0, "sha512WithRSAEncryption"}, /* 65 */
- { 0x07, 73, 1, "PKCS-7" }, /* 66 */
- { 0x01, 68, 0, "data" }, /* 67 */
- { 0x02, 69, 0, "signedData" }, /* 68 */
- { 0x03, 70, 0, "envelopedData" }, /* 69 */
- { 0x04, 71, 0, "signedAndEnvelopedData" }, /* 70 */
- { 0x05, 72, 0, "digestedData" }, /* 71 */
- { 0x06, 0, 0, "encryptedData" }, /* 72 */
- { 0x09, 0, 1, "PKCS-9" }, /* 73 */
- { 0x01, 75, 0, "E" }, /* 74 */
- { 0x02, 76, 0, "unstructuredName" }, /* 75 */
- { 0x03, 77, 0, "contentType" }, /* 76 */
- { 0x04, 78, 0, "messageDigest" }, /* 77 */
- { 0x05, 79, 0, "signingTime" }, /* 78 */
- { 0x06, 80, 0, "counterSignature" }, /* 79 */
- { 0x07, 81, 0, "challengePassword" }, /* 80 */
- { 0x08, 82, 0, "unstructuredAddress" }, /* 81 */
- { 0x0E, 0, 0, "extensionRequest" }, /* 82 */
- { 0x02, 86, 1, "digestAlgorithm" }, /* 83 */
- { 0x02, 85, 0, "md2" }, /* 84 */
- { 0x05, 0, 0, "md5" }, /* 85 */
- { 0x03, 0, 1, "encryptionAlgorithm" }, /* 86 */
- { 0x07, 0, 0, "3des-ede-cbc" }, /* 87 */
- {0x2B, 149, 1, "" }, /* 88 */
- { 0x06, 136, 1, "dod" }, /* 89 */
- { 0x01, 0, 1, "internet" }, /* 90 */
- { 0x04, 105, 1, "private" }, /* 91 */
- { 0x01, 0, 1, "enterprise" }, /* 92 */
- { 0x82, 98, 1, "" }, /* 93 */
- { 0x37, 0, 1, "Microsoft" }, /* 94 */
- { 0x0A, 0, 1, "" }, /* 95 */
- { 0x03, 0, 1, "" }, /* 96 */
- { 0x03, 0, 0, "msSGC" }, /* 97 */
- { 0x89, 0, 1, "" }, /* 98 */
- { 0x31, 0, 1, "" }, /* 99 */
- { 0x01, 0, 1, "" }, /* 100 */
- { 0x01, 0, 1, "" }, /* 101 */
- { 0x02, 0, 1, "" }, /* 102 */
- { 0x02, 104, 0, "" }, /* 103 */
- { 0x4B, 0, 0, "TCGID" }, /* 104 */
- { 0x05, 0, 1, "security" }, /* 105 */
- { 0x05, 0, 1, "mechanisms" }, /* 106 */
- { 0x07, 0, 1, "id-pkix" }, /* 107 */
- { 0x01, 110, 1, "id-pe" }, /* 108 */
- { 0x01, 0, 0, "authorityInfoAccess" }, /* 109 */
- { 0x03, 120, 1, "id-kp" }, /* 110 */
- { 0x01, 112, 0, "serverAuth" }, /* 111 */
- { 0x02, 113, 0, "clientAuth" }, /* 112 */
- { 0x03, 114, 0, "codeSigning" }, /* 113 */
- { 0x04, 115, 0, "emailProtection" }, /* 114 */
- { 0x05, 116, 0, "ipsecEndSystem" }, /* 115 */
- { 0x06, 117, 0, "ipsecTunnel" }, /* 116 */
- { 0x07, 118, 0, "ipsecUser" }, /* 117 */
- { 0x08, 119, 0, "timeStamping" }, /* 118 */
- { 0x09, 0, 0, "ocspSigning" }, /* 119 */
- { 0x08, 122, 1, "id-otherNames" }, /* 120 */
- { 0x05, 0, 0, "xmppAddr" }, /* 121 */
- { 0x0A, 127, 1, "id-aca" }, /* 122 */
- { 0x01, 124, 0, "authenticationInfo" }, /* 123 */
- { 0x02, 125, 0, "accessIdentity" }, /* 124 */
- { 0x03, 126, 0, "chargingIdentity" }, /* 125 */
- { 0x04, 0, 0, "group" }, /* 126 */
- { 0x30, 0, 1, "id-ad" }, /* 127 */
- { 0x01, 0, 1, "ocsp" }, /* 128 */
- { 0x01, 130, 0, "basic" }, /* 129 */
- { 0x02, 131, 0, "nonce" }, /* 130 */
- { 0x03, 132, 0, "crl" }, /* 131 */
- { 0x04, 133, 0, "response" }, /* 132 */
- { 0x05, 134, 0, "noCheck" }, /* 133 */
- { 0x06, 135, 0, "archiveCutoff" }, /* 134 */
- { 0x07, 0, 0, "serviceLocator" }, /* 135 */
- { 0x0E, 142, 1, "oiw" }, /* 136 */
- { 0x03, 0, 1, "secsig" }, /* 137 */
- { 0x02, 0, 1, "algorithms" }, /* 138 */
- { 0x07, 140, 0, "des-cbc" }, /* 139 */
- { 0x1A, 141, 0, "sha-1" }, /* 140 */
- { 0x1D, 0, 0, "sha-1WithRSASignature" }, /* 141 */
- { 0x24, 0, 1, "TeleTrusT" }, /* 142 */
- { 0x03, 0, 1, "algorithm" }, /* 143 */
- { 0x03, 0, 1, "signatureAlgorithm" }, /* 144 */
- { 0x01, 0, 1, "rsaSignature" }, /* 145 */
- { 0x02, 147, 0, "rsaSigWithripemd160" }, /* 146 */
- { 0x03, 148, 0, "rsaSigWithripemd128" }, /* 147 */
- { 0x04, 0, 0, "rsaSigWithripemd256" }, /* 148 */
- {0x60, 0, 1, "" }, /* 149 */
- { 0x86, 0, 1, "" }, /* 150 */
- { 0x48, 0, 1, "" }, /* 151 */
- { 0x01, 0, 1, "organization" }, /* 152 */
- { 0x65, 160, 1, "gov" }, /* 153 */
- { 0x03, 0, 1, "csor" }, /* 154 */
- { 0x04, 0, 1, "nistalgorithm" }, /* 155 */
- { 0x02, 0, 1, "hashalgs" }, /* 156 */
- { 0x01, 158, 0, "id-SHA-256" }, /* 157 */
- { 0x02, 159, 0, "id-SHA-384" }, /* 158 */
- { 0x03, 0, 0, "id-SHA-512" }, /* 159 */
- { 0x86, 0, 1, "" }, /* 160 */
- { 0xf8, 0, 1, "" }, /* 161 */
- { 0x42, 174, 1, "netscape" }, /* 162 */
- { 0x01, 169, 1, "" }, /* 163 */
- { 0x01, 165, 0, "nsCertType" }, /* 164 */
- { 0x03, 166, 0, "nsRevocationUrl" }, /* 165 */
- { 0x04, 167, 0, "nsCaRevocationUrl" }, /* 166 */
- { 0x08, 168, 0, "nsCaPolicyUrl" }, /* 167 */
- { 0x0d, 0, 0, "nsComment" }, /* 168 */
- { 0x03, 172, 1, "directory" }, /* 169 */
- { 0x01, 0, 1, "" }, /* 170 */
- { 0x03, 0, 0, "employeeNumber" }, /* 171 */
- { 0x04, 0, 1, "policy" }, /* 172 */
- { 0x01, 0, 0, "nsSGC" }, /* 173 */
- { 0x45, 0, 1, "verisign" }, /* 174 */
- { 0x01, 0, 1, "pki" }, /* 175 */
- { 0x09, 0, 1, "attributes" }, /* 176 */
- { 0x02, 178, 0, "messageType" }, /* 177 */
- { 0x03, 179, 0, "pkiStatus" }, /* 178 */
- { 0x04, 180, 0, "failInfo" }, /* 179 */
- { 0x05, 181, 0, "senderNonce" }, /* 180 */
- { 0x06, 182, 0, "recipientNonce" }, /* 181 */
- { 0x07, 183, 0, "transID" }, /* 182 */
- { 0x08, 0, 0, "extensionReq" } /* 183 */
+ { 0x14, 45, 0, "crlNumber" }, /* 44 */
+ { 0x15, 46, 0, "reasonCode" }, /* 45 */
+ { 0x1F, 47, 0, "crlDistributionPoints" }, /* 46 */
+ { 0x20, 48, 0, "certificatePolicies" }, /* 47 */
+ { 0x23, 49, 0, "authorityKeyIdentifier" }, /* 48 */
+ { 0x25, 50, 0, "extendedKeyUsage" }, /* 49 */
+ { 0x37, 51, 0, "targetInformation" }, /* 50 */
+ { 0x38, 0, 0, "noRevAvail" }, /* 51 */
+ {0x2A, 89, 1, "" }, /* 52 */
+ { 0x86, 0, 1, "" }, /* 53 */
+ { 0x48, 0, 1, "" }, /* 54 */
+ { 0x86, 0, 1, "" }, /* 55 */
+ { 0xF7, 0, 1, "" }, /* 56 */
+ { 0x0D, 0, 1, "RSADSI" }, /* 57 */
+ { 0x01, 84, 1, "PKCS" }, /* 58 */
+ { 0x01, 67, 1, "PKCS-1" }, /* 59 */
+ { 0x01, 61, 0, "rsaEncryption" }, /* 60 */
+ { 0x02, 62, 0, "md2WithRSAEncryption" }, /* 61 */
+ { 0x04, 63, 0, "md5WithRSAEncryption" }, /* 62 */
+ { 0x05, 64, 0, "sha-1WithRSAEncryption" }, /* 63 */
+ { 0x0B, 65, 0, "sha256WithRSAEncryption"}, /* 64 */
+ { 0x0C, 66, 0, "sha384WithRSAEncryption"}, /* 65 */
+ { 0x0D, 0, 0, "sha512WithRSAEncryption"}, /* 66 */
+ { 0x07, 74, 1, "PKCS-7" }, /* 67 */
+ { 0x01, 69, 0, "data" }, /* 68 */
+ { 0x02, 70, 0, "signedData" }, /* 69 */
+ { 0x03, 71, 0, "envelopedData" }, /* 70 */
+ { 0x04, 72, 0, "signedAndEnvelopedData" }, /* 71 */
+ { 0x05, 73, 0, "digestedData" }, /* 72 */
+ { 0x06, 0, 0, "encryptedData" }, /* 73 */
+ { 0x09, 0, 1, "PKCS-9" }, /* 74 */
+ { 0x01, 76, 0, "E" }, /* 75 */
+ { 0x02, 77, 0, "unstructuredName" }, /* 76 */
+ { 0x03, 78, 0, "contentType" }, /* 77 */
+ { 0x04, 79, 0, "messageDigest" }, /* 78 */
+ { 0x05, 80, 0, "signingTime" }, /* 79 */
+ { 0x06, 81, 0, "counterSignature" }, /* 80 */
+ { 0x07, 82, 0, "challengePassword" }, /* 81 */
+ { 0x08, 83, 0, "unstructuredAddress" }, /* 82 */
+ { 0x0E, 0, 0, "extensionRequest" }, /* 83 */
+ { 0x02, 87, 1, "digestAlgorithm" }, /* 84 */
+ { 0x02, 86, 0, "md2" }, /* 85 */
+ { 0x05, 0, 0, "md5" }, /* 86 */
+ { 0x03, 0, 1, "encryptionAlgorithm" }, /* 87 */
+ { 0x07, 0, 0, "3des-ede-cbc" }, /* 88 */
+ {0x2B, 150, 1, "" }, /* 89 */
+ { 0x06, 137, 1, "dod" }, /* 90 */
+ { 0x01, 0, 1, "internet" }, /* 91 */
+ { 0x04, 106, 1, "private" }, /* 92 */
+ { 0x01, 0, 1, "enterprise" }, /* 93 */
+ { 0x82, 99, 1, "" }, /* 94 */
+ { 0x37, 0, 1, "Microsoft" }, /* 95 */
+ { 0x0A, 0, 1, "" }, /* 96 */
+ { 0x03, 0, 1, "" }, /* 97 */
+ { 0x03, 0, 0, "msSGC" }, /* 98 */
+ { 0x89, 0, 1, "" }, /* 99 */
+ { 0x31, 0, 1, "" }, /* 100 */
+ { 0x01, 0, 1, "" }, /* 101 */
+ { 0x01, 0, 1, "" }, /* 102 */
+ { 0x02, 0, 1, "" }, /* 103 */
+ { 0x02, 105, 0, "" }, /* 104 */
+ { 0x4B, 0, 0, "TCGID" }, /* 105 */
+ { 0x05, 0, 1, "security" }, /* 106 */
+ { 0x05, 0, 1, "mechanisms" }, /* 107 */
+ { 0x07, 0, 1, "id-pkix" }, /* 108 */
+ { 0x01, 111, 1, "id-pe" }, /* 109 */
+ { 0x01, 0, 0, "authorityInfoAccess" }, /* 110 */
+ { 0x03, 121, 1, "id-kp" }, /* 111 */
+ { 0x01, 113, 0, "serverAuth" }, /* 112 */
+ { 0x02, 114, 0, "clientAuth" }, /* 113 */
+ { 0x03, 115, 0, "codeSigning" }, /* 114 */
+ { 0x04, 116, 0, "emailProtection" }, /* 115 */
+ { 0x05, 117, 0, "ipsecEndSystem" }, /* 116 */
+ { 0x06, 118, 0, "ipsecTunnel" }, /* 117 */
+ { 0x07, 119, 0, "ipsecUser" }, /* 118 */
+ { 0x08, 120, 0, "timeStamping" }, /* 119 */
+ { 0x09, 0, 0, "ocspSigning" }, /* 120 */
+ { 0x08, 123, 1, "id-otherNames" }, /* 121 */
+ { 0x05, 0, 0, "xmppAddr" }, /* 122 */
+ { 0x0A, 128, 1, "id-aca" }, /* 123 */
+ { 0x01, 125, 0, "authenticationInfo" }, /* 124 */
+ { 0x02, 126, 0, "accessIdentity" }, /* 125 */
+ { 0x03, 127, 0, "chargingIdentity" }, /* 126 */
+ { 0x04, 0, 0, "group" }, /* 127 */
+ { 0x30, 0, 1, "id-ad" }, /* 128 */
+ { 0x01, 0, 1, "ocsp" }, /* 129 */
+ { 0x01, 131, 0, "basic" }, /* 130 */
+ { 0x02, 132, 0, "nonce" }, /* 131 */
+ { 0x03, 133, 0, "crl" }, /* 132 */
+ { 0x04, 134, 0, "response" }, /* 133 */
+ { 0x05, 135, 0, "noCheck" }, /* 134 */
+ { 0x06, 136, 0, "archiveCutoff" }, /* 135 */
+ { 0x07, 0, 0, "serviceLocator" }, /* 136 */
+ { 0x0E, 143, 1, "oiw" }, /* 137 */
+ { 0x03, 0, 1, "secsig" }, /* 138 */
+ { 0x02, 0, 1, "algorithms" }, /* 139 */
+ { 0x07, 141, 0, "des-cbc" }, /* 140 */
+ { 0x1A, 142, 0, "sha-1" }, /* 141 */
+ { 0x1D, 0, 0, "sha-1WithRSASignature" }, /* 142 */
+ { 0x24, 0, 1, "TeleTrusT" }, /* 143 */
+ { 0x03, 0, 1, "algorithm" }, /* 144 */
+ { 0x03, 0, 1, "signatureAlgorithm" }, /* 145 */
+ { 0x01, 0, 1, "rsaSignature" }, /* 146 */
+ { 0x02, 148, 0, "rsaSigWithripemd160" }, /* 147 */
+ { 0x03, 149, 0, "rsaSigWithripemd128" }, /* 148 */
+ { 0x04, 0, 0, "rsaSigWithripemd256" }, /* 149 */
+ {0x60, 0, 1, "" }, /* 150 */
+ { 0x86, 0, 1, "" }, /* 151 */
+ { 0x48, 0, 1, "" }, /* 152 */
+ { 0x01, 0, 1, "organization" }, /* 153 */
+ { 0x65, 161, 1, "gov" }, /* 154 */
+ { 0x03, 0, 1, "csor" }, /* 155 */
+ { 0x04, 0, 1, "nistalgorithm" }, /* 156 */
+ { 0x02, 0, 1, "hashalgs" }, /* 157 */
+ { 0x01, 159, 0, "id-SHA-256" }, /* 158 */
+ { 0x02, 160, 0, "id-SHA-384" }, /* 159 */
+ { 0x03, 0, 0, "id-SHA-512" }, /* 160 */
+ { 0x86, 0, 1, "" }, /* 161 */
+ { 0xf8, 0, 1, "" }, /* 162 */
+ { 0x42, 175, 1, "netscape" }, /* 163 */
+ { 0x01, 170, 1, "" }, /* 164 */
+ { 0x01, 166, 0, "nsCertType" }, /* 165 */
+ { 0x03, 167, 0, "nsRevocationUrl" }, /* 166 */
+ { 0x04, 168, 0, "nsCaRevocationUrl" }, /* 167 */
+ { 0x08, 169, 0, "nsCaPolicyUrl" }, /* 168 */
+ { 0x0d, 0, 0, "nsComment" }, /* 169 */
+ { 0x03, 173, 1, "directory" }, /* 170 */
+ { 0x01, 0, 1, "" }, /* 171 */
+ { 0x03, 0, 0, "employeeNumber" }, /* 172 */
+ { 0x04, 0, 1, "policy" }, /* 173 */
+ { 0x01, 0, 0, "nsSGC" }, /* 174 */
+ { 0x45, 0, 1, "verisign" }, /* 175 */
+ { 0x01, 0, 1, "pki" }, /* 176 */
+ { 0x09, 0, 1, "attributes" }, /* 177 */
+ { 0x02, 179, 0, "messageType" }, /* 178 */
+ { 0x03, 180, 0, "pkiStatus" }, /* 179 */
+ { 0x04, 181, 0, "failInfo" }, /* 180 */
+ { 0x05, 182, 0, "senderNonce" }, /* 181 */
+ { 0x06, 183, 0, "recipientNonce" }, /* 182 */
+ { 0x07, 184, 0, "transID" }, /* 183 */
+ { 0x08, 0, 0, "extensionReq" } /* 184 */
};
diff --git a/src/libstrongswan/asn1/oid.h b/src/libstrongswan/asn1/oid.h
index f85997159..49260c9f4 100644
--- a/src/libstrongswan/asn1/oid.h
+++ b/src/libstrongswan/asn1/oid.h
@@ -22,59 +22,63 @@ extern const oid_t oid_names[];
#define OID_SUBJECT_KEY_ID 38
#define OID_SUBJECT_ALT_NAME 41
#define OID_BASIC_CONSTRAINTS 43
-#define OID_CRL_REASON_CODE 44
-#define OID_CRL_DISTRIBUTION_POINTS 45
-#define OID_AUTHORITY_KEY_ID 47
-#define OID_EXTENDED_KEY_USAGE 48
-#define OID_TARGET_INFORMATION 49
-#define OID_NO_REV_AVAIL 50
-#define OID_RSA_ENCRYPTION 59
-#define OID_MD2_WITH_RSA 60
-#define OID_MD5_WITH_RSA 61
-#define OID_SHA1_WITH_RSA 62
-#define OID_SHA256_WITH_RSA 63
-#define OID_SHA384_WITH_RSA 64
-#define OID_SHA512_WITH_RSA 65
-#define OID_PKCS7_DATA 67
-#define OID_PKCS7_SIGNED_DATA 68
-#define OID_PKCS7_ENVELOPED_DATA 69
-#define OID_PKCS7_SIGNED_ENVELOPED_DATA 70
-#define OID_PKCS7_DIGESTED_DATA 71
-#define OID_PKCS7_ENCRYPTED_DATA 72
-#define OID_PKCS9_EMAIL 74
-#define OID_PKCS9_CONTENT_TYPE 76
-#define OID_PKCS9_MESSAGE_DIGEST 77
-#define OID_PKCS9_SIGNING_TIME 78
-#define OID_MD2 84
-#define OID_MD5 85
-#define OID_3DES_EDE_CBC 87
-#define OID_AUTHORITY_INFO_ACCESS 109
-#define OID_OCSP_SIGNING 119
-#define OID_XMPP_ADDR 121
-#define OID_AUTHENTICATION_INFO 123
-#define OID_ACCESS_IDENTITY 124
-#define OID_CHARGING_IDENTITY 125
-#define OID_GROUP 126
-#define OID_OCSP 128
-#define OID_BASIC 129
-#define OID_NONCE 130
-#define OID_CRL 131
-#define OID_RESPONSE 132
-#define OID_NO_CHECK 133
-#define OID_ARCHIVE_CUTOFF 134
-#define OID_SERVICE_LOCATOR 135
-#define OID_DES_CBC 139
-#define OID_SHA1 140
-#define OID_SHA1_WITH_RSA_OIW 141
-#define OID_NS_REVOCATION_URL 165
-#define OID_NS_CA_REVOCATION_URL 166
-#define OID_NS_CA_POLICY_URL 167
-#define OID_NS_COMMENT 168
-#define OID_PKI_MESSAGE_TYPE 177
-#define OID_PKI_STATUS 178
-#define OID_PKI_FAIL_INFO 179
-#define OID_PKI_SENDER_NONCE 180
-#define OID_PKI_RECIPIENT_NONCE 181
-#define OID_PKI_TRANS_ID 182
+#define OID_CRL_NUMBER 44
+#define OID_CRL_REASON_CODE 45
+#define OID_CRL_DISTRIBUTION_POINTS 46
+#define OID_AUTHORITY_KEY_ID 48
+#define OID_EXTENDED_KEY_USAGE 49
+#define OID_TARGET_INFORMATION 50
+#define OID_NO_REV_AVAIL 51
+#define OID_RSA_ENCRYPTION 60
+#define OID_MD2_WITH_RSA 61
+#define OID_MD5_WITH_RSA 62
+#define OID_SHA1_WITH_RSA 63
+#define OID_SHA256_WITH_RSA 64
+#define OID_SHA384_WITH_RSA 65
+#define OID_SHA512_WITH_RSA 66
+#define OID_PKCS7_DATA 68
+#define OID_PKCS7_SIGNED_DATA 69
+#define OID_PKCS7_ENVELOPED_DATA 70
+#define OID_PKCS7_SIGNED_ENVELOPED_DATA 71
+#define OID_PKCS7_DIGESTED_DATA 72
+#define OID_PKCS7_ENCRYPTED_DATA 73
+#define OID_PKCS9_EMAIL 75
+#define OID_PKCS9_CONTENT_TYPE 77
+#define OID_PKCS9_MESSAGE_DIGEST 78
+#define OID_PKCS9_SIGNING_TIME 79
+#define OID_MD2 85
+#define OID_MD5 86
+#define OID_3DES_EDE_CBC 88
+#define OID_AUTHORITY_INFO_ACCESS 110
+#define OID_OCSP_SIGNING 120
+#define OID_XMPP_ADDR 122
+#define OID_AUTHENTICATION_INFO 124
+#define OID_ACCESS_IDENTITY 125
+#define OID_CHARGING_IDENTITY 126
+#define OID_GROUP 127
+#define OID_OCSP 129
+#define OID_BASIC 130
+#define OID_NONCE 131
+#define OID_CRL 132
+#define OID_RESPONSE 133
+#define OID_NO_CHECK 134
+#define OID_ARCHIVE_CUTOFF 135
+#define OID_SERVICE_LOCATOR 136
+#define OID_DES_CBC 140
+#define OID_SHA1 141
+#define OID_SHA1_WITH_RSA_OIW 142
+#define OID_SHA256 158
+#define OID_SHA384 159
+#define OID_SHA512 160
+#define OID_NS_REVOCATION_URL 166
+#define OID_NS_CA_REVOCATION_URL 167
+#define OID_NS_CA_POLICY_URL 168
+#define OID_NS_COMMENT 169
+#define OID_PKI_MESSAGE_TYPE 178
+#define OID_PKI_STATUS 179
+#define OID_PKI_FAIL_INFO 180
+#define OID_PKI_SENDER_NONCE 181
+#define OID_PKI_RECIPIENT_NONCE 182
+#define OID_PKI_TRANS_ID 183
#endif /* OID_H_ */
diff --git a/src/libstrongswan/asn1/oid.txt b/src/libstrongswan/asn1/oid.txt
index eed46d59d..2b3c96ae3 100644
--- a/src/libstrongswan/asn1/oid.txt
+++ b/src/libstrongswan/asn1/oid.txt
@@ -42,6 +42,7 @@
0x11 "subjectAltName" OID_SUBJECT_ALT_NAME
0x12 "issuerAltName"
0x13 "basicConstraints" OID_BASIC_CONSTRAINTS
+ 0x14 "crlNumber" OID_CRL_NUMBER
0x15 "reasonCode" OID_CRL_REASON_CODE
0x1F "crlDistributionPoints" OID_CRL_DISTRIBUTION_POINTS
0x20 "certificatePolicies"
@@ -155,9 +156,9 @@
0x03 "csor"
0x04 "nistalgorithm"
0x02 "hashalgs"
- 0x01 "id-SHA-256"
- 0x02 "id-SHA-384"
- 0x03 "id-SHA-512"
+ 0x01 "id-SHA-256" OID_SHA256
+ 0x02 "id-SHA-384" OID_SHA384
+ 0x03 "id-SHA-512" OID_SHA512
0x86 ""
0xf8 ""
0x42 "netscape"