From 50073e8c5e81d8151718e05ec54b7c213372b878 Mon Sep 17 00:00:00 2001 From: Adam Langley Date: Thu, 26 Feb 2015 18:59:30 -0800 Subject: Add functions to parse and generate PKCS#7 files with CRLs. Change-Id: I7b6acc9004beb7b7090de1837814ccdff2e9930e Reviewed-on: https://boringssl-review.googlesource.com/3680 Reviewed-by: David Benjamin Reviewed-by: Adam Langley --- crypto/err/err_data.h | 364 +++++++++++++++++++++++----------------------- crypto/err/x509.errordata | 3 + 2 files changed, 188 insertions(+), 179 deletions(-) (limited to 'crypto/err') diff --git a/crypto/err/err_data.h b/crypto/err/err_data.h index 8e783092..1a681709 100644 --- a/crypto/err/err_data.h +++ b/crypto/err/err_data.h @@ -210,58 +210,60 @@ static const uint32_t kFunctionValues[] = { 0x2c332806, 0x2c33a817, 0x2c342830, - 0x2c34a849, - 0x2c352860, - 0x2c35a87d, - 0x2c36289a, - 0x2c36a8b7, - 0x2c3728d0, - 0x2c37a8e9, - 0x2c3828ff, - 0x2c38a90d, - 0x2c39291f, - 0x2c39a93c, - 0x2c3a2959, - 0x2c3aa967, - 0x2c3b2985, - 0x2c3ba9a3, - 0x2c3c29be, - 0x2c3ca9d2, - 0x2c3d29e4, - 0x2c3da9f4, - 0x2c3e2a02, - 0x2c3eaa12, - 0x2c3f2a22, - 0x2c3faa3d, - 0x2c402a4e, - 0x2c40aa69, - 0x2c412a7d, - 0x2c41aa90, - 0x2c422aaf, - 0x2c42aac3, - 0x2c432ad6, - 0x2c43aae5, - 0x2c442af4, - 0x2c44ab0b, - 0x2c452b26, - 0x2c45ab3e, - 0x2c462b52, - 0x2c46ab65, - 0x2c472b76, - 0x2c47ab87, - 0x2c482b98, - 0x2c48aba9, - 0x2c492bb8, - 0x2c49abc5, - 0x2c4a2bd2, - 0x2c4aabdf, - 0x2c4b2be8, - 0x2c4babfc, - 0x2c4c2c0b, - 0x2c4cac19, - 0x2c4d2c28, - 0x2c4dac39, - 0x2c4e2c4a, + 0x2c34a858, + 0x2c35286f, + 0x2c35a88c, + 0x2c3628a9, + 0x2c36a8c6, + 0x2c3728df, + 0x2c37a8f8, + 0x2c38290e, + 0x2c38a91c, + 0x2c39292e, + 0x2c39a94b, + 0x2c3a2968, + 0x2c3aa976, + 0x2c3b2994, + 0x2c3ba9b2, + 0x2c3c29cd, + 0x2c3ca9e1, + 0x2c3d29f3, + 0x2c3daa03, + 0x2c3e2a11, + 0x2c3eaa21, + 0x2c3f2a31, + 0x2c3faa4c, + 0x2c402a5d, + 0x2c40aa78, + 0x2c412a8c, + 0x2c41aa9f, + 0x2c422abe, + 0x2c42aad2, + 0x2c432ae5, + 0x2c43aaf4, + 0x2c442b03, + 0x2c44ab1a, + 0x2c452b35, + 0x2c45ab4d, + 0x2c462b61, + 0x2c46ab74, + 0x2c472b85, + 0x2c47ab96, + 0x2c482ba7, + 0x2c48abb8, + 0x2c492bc7, + 0x2c49abd4, + 0x2c4a2be1, + 0x2c4aabee, + 0x2c4b2bf7, + 0x2c4bac0b, + 0x2c4c2c1a, + 0x2c4cac28, + 0x2c4d2c4a, + 0x2c4dac5b, + 0x2c4e2c6c, + 0x2c4eac37, + 0x2c4f2849, 0x30320000, 0x30328018, 0x3033002c, @@ -592,63 +594,63 @@ static const uint32_t kFunctionValues[] = { 0x4c3996e4, 0x4c3a16fc, 0x4c3a970f, - 0x50322c5b, - 0x5032ac70, - 0x50332c81, - 0x5033ac94, - 0x50342ca5, - 0x5034acb8, - 0x50352cc7, - 0x5035acdc, - 0x50362cec, - 0x5036acfb, - 0x50372d0c, - 0x5037ad1c, - 0x50382d2d, - 0x5038ad40, - 0x50392d52, - 0x5039ad68, - 0x503a2d7a, - 0x503aad8b, - 0x503b2d9c, - 0x503badad, - 0x503c2db8, - 0x503cadc4, - 0x503d2dcf, - 0x503dadda, - 0x503e2de7, - 0x503eadfc, - 0x503f2e0a, - 0x503fae1e, - 0x50402e31, - 0x5040ae42, - 0x50412e5c, - 0x5041ae6b, - 0x50422e74, - 0x5042ae83, - 0x50432e95, - 0x5043aea1, - 0x50442ea9, - 0x5044aebc, - 0x50452ecd, - 0x5045aee3, - 0x50462eef, - 0x5046af03, - 0x50472f11, - 0x5047af25, - 0x50482f3f, - 0x5048af53, - 0x50492f69, - 0x5049af80, - 0x504a2f92, - 0x504aafa6, - 0x504b2fbb, - 0x504bafd2, - 0x504c2fe6, - 0x504cafef, - 0x504d2ff7, - 0x504db006, - 0x504e3016, + 0x50322c7d, + 0x5032ac92, + 0x50332ca3, + 0x5033acb6, + 0x50342cc7, + 0x5034acda, + 0x50352ce9, + 0x5035acfe, + 0x50362d0e, + 0x5036ad1d, + 0x50372d2e, + 0x5037ad3e, + 0x50382d4f, + 0x5038ad62, + 0x50392d74, + 0x5039ad8a, + 0x503a2d9c, + 0x503aadad, + 0x503b2dbe, + 0x503badcf, + 0x503c2dda, + 0x503cade6, + 0x503d2df1, + 0x503dadfc, + 0x503e2e09, + 0x503eae1e, + 0x503f2e2c, + 0x503fae40, + 0x50402e53, + 0x5040ae64, + 0x50412e7e, + 0x5041ae8d, + 0x50422e96, + 0x5042aea5, + 0x50432eb7, + 0x5043aec3, + 0x50442ecb, + 0x5044aede, + 0x50452eef, + 0x5045af05, + 0x50462f11, + 0x5046af25, + 0x50472f33, + 0x5047af47, + 0x50482f61, + 0x5048af75, + 0x50492f8b, + 0x5049afa2, + 0x504a2fb4, + 0x504aafc8, + 0x504b2fdd, + 0x504baff4, + 0x504c3008, + 0x504cb011, + 0x504d3019, + 0x504db028, + 0x504e3038, 0x68320f9d, 0x68328fae, 0x68330fbe, @@ -1219,6 +1221,7 @@ static const char kFunctionStringData[] = "ASN1_item_verify\0" "NETSCAPE_SPKI_b64_decode\0" "NETSCAPE_SPKI_b64_encode\0" + "PKCS7_get_CRLs\0" "PKCS7_get_certificates\0" "X509_ATTRIBUTE_create_by_NID\0" "X509_ATTRIBUTE_create_by_OBJ\0" @@ -1268,6 +1271,7 @@ static const char kFunctionStringData[] = "i2d_DSA_PUBKEY\0" "i2d_EC_PUBKEY\0" "i2d_RSA_PUBKEY\0" + "pkcs7_parse_header\0" "x509_name_encode\0" "x509_name_ex_d2i\0" "x509_name_ex_new\0" @@ -1480,19 +1484,20 @@ static const uint32_t kReasonValues[] = { 0x2c3c2af3, 0x2c3cab09, 0x2c3d2b22, - 0x2c3dab3f, - 0x2c3e2b4d, - 0x2c3eab65, - 0x2c3f2b7d, - 0x2c3fab8a, - 0x2c402bad, - 0x2c40abcc, + 0x2c3dab50, + 0x2c3e2b5e, + 0x2c3eab76, + 0x2c3f2b8e, + 0x2c3fab9b, + 0x2c402bbe, + 0x2c40abdd, 0x2c411151, - 0x2c41abdd, - 0x2c422bf0, + 0x2c41abee, + 0x2c422c01, 0x2c4290c3, - 0x2c432c01, + 0x2c432c12, 0x2c4386a2, + 0x2c442b3f, 0x30320000, 0x30328015, 0x3033001f, @@ -1856,69 +1861,69 @@ static const uint32_t kReasonValues[] = { 0x4c3d104b, 0x4c3d93d7, 0x4c3e13e4, - 0x50322c13, - 0x5032ac22, - 0x50332c2d, - 0x5033ac3d, - 0x50342c56, - 0x5034ac70, - 0x50352c7e, - 0x5035ac94, - 0x50362ca6, - 0x5036acbc, - 0x50372cd5, - 0x5037ace8, - 0x50382d00, - 0x5038ad11, - 0x50392d26, - 0x5039ad3a, - 0x503a2d5a, - 0x503aad70, - 0x503b2d88, - 0x503bad9a, - 0x503c2db6, - 0x503cadcd, - 0x503d2de6, - 0x503dadfc, - 0x503e2e09, - 0x503eae1f, - 0x503f2e31, + 0x50322c24, + 0x5032ac33, + 0x50332c3e, + 0x5033ac4e, + 0x50342c67, + 0x5034ac81, + 0x50352c8f, + 0x5035aca5, + 0x50362cb7, + 0x5036accd, + 0x50372ce6, + 0x5037acf9, + 0x50382d11, + 0x5038ad22, + 0x50392d37, + 0x5039ad4b, + 0x503a2d6b, + 0x503aad81, + 0x503b2d99, + 0x503badab, + 0x503c2dc7, + 0x503cadde, + 0x503d2df7, + 0x503dae0d, + 0x503e2e1a, + 0x503eae30, + 0x503f2e42, 0x503f8348, - 0x50402e44, - 0x5040ae54, - 0x50412e6e, - 0x5041ae7d, - 0x50422e97, - 0x5042aeb4, - 0x50432ec4, - 0x5043aed4, - 0x50442ee3, + 0x50402e55, + 0x5040ae65, + 0x50412e7f, + 0x5041ae8e, + 0x50422ea8, + 0x5042aec5, + 0x50432ed5, + 0x5043aee5, + 0x50442ef4, 0x50448414, - 0x50452ef7, - 0x5045af15, - 0x50462f28, - 0x5046af3e, - 0x50472f50, - 0x5047af65, - 0x50482f8b, - 0x5048af99, - 0x50492fac, - 0x5049afc1, - 0x504a2fd7, - 0x504aafe7, - 0x504b3007, - 0x504bb01a, - 0x504c303d, - 0x504cb06b, - 0x504d307d, - 0x504db09a, - 0x504e30b5, - 0x504eb0d1, - 0x504f30e3, - 0x504fb0fa, - 0x50503109, + 0x50452f08, + 0x5045af26, + 0x50462f39, + 0x5046af4f, + 0x50472f61, + 0x5047af76, + 0x50482f9c, + 0x5048afaa, + 0x50492fbd, + 0x5049afd2, + 0x504a2fe8, + 0x504aaff8, + 0x504b3018, + 0x504bb02b, + 0x504c304e, + 0x504cb07c, + 0x504d308e, + 0x504db0ab, + 0x504e30c6, + 0x504eb0e2, + 0x504f30f4, + 0x504fb10b, + 0x5050311a, 0x50508687, - 0x5051311c, + 0x5051312d, 0x58320dd6, 0x68320d98, 0x68328b7d, @@ -2473,6 +2478,7 @@ static const char kReasonStringData[] = "NOT_PKCS7_SIGNED_DATA\0" "NO_CERTIFICATES_INCLUDED\0" "NO_CERT_SET_FOR_US_TO_VERIFY\0" + "NO_CRLS_INCLUDED\0" "NO_CRL_NUMBER\0" "PUBLIC_KEY_DECODE_ERROR\0" "PUBLIC_KEY_ENCODE_ERROR\0" diff --git a/crypto/err/x509.errordata b/crypto/err/x509.errordata index f6fbf0ff..1b50e36f 100644 --- a/crypto/err/x509.errordata +++ b/crypto/err/x509.errordata @@ -3,6 +3,7 @@ X509,function,101,ASN1_item_sign_ctx X509,function,102,ASN1_item_verify X509,function,103,NETSCAPE_SPKI_b64_decode X509,function,104,NETSCAPE_SPKI_b64_encode +X509,function,158,PKCS7_get_CRLs X509,function,105,PKCS7_get_certificates X509,function,106,X509_ATTRIBUTE_create_by_NID X509,function,107,X509_ATTRIBUTE_create_by_OBJ @@ -52,6 +53,7 @@ X509,function,150,get_cert_by_subject X509,function,151,i2d_DSA_PUBKEY X509,function,152,i2d_EC_PUBKEY X509,function,153,i2d_RSA_PUBKEY +X509,function,157,pkcs7_parse_header X509,function,154,x509_name_encode X509,function,155,x509_name_ex_d2i X509,function,156,x509_name_ex_new @@ -78,6 +80,7 @@ X509,reason,119,NEWER_CRL_NOT_NEWER X509,reason,120,NOT_PKCS7_SIGNED_DATA X509,reason,121,NO_CERTIFICATES_INCLUDED X509,reason,122,NO_CERT_SET_FOR_US_TO_VERIFY +X509,reason,136,NO_CRLS_INCLUDED X509,reason,123,NO_CRL_NUMBER X509,reason,124,PUBLIC_KEY_DECODE_ERROR X509,reason,125,PUBLIC_KEY_ENCODE_ERROR -- cgit v1.2.3