Loading CHANGES +4 −1 Original line number Diff line number Diff line Loading @@ -2,7 +2,7 @@ OpenSSL CHANGES _______________ Changes between 0.9.8g and 0.9.9 [xx XXX xxxx] Changes between 0.9.8i and 0.9.9 [xx XXX xxxx] *) Removed effectively defunct crypto/store from the build. [Ben Laurie] Loading Loading @@ -702,6 +702,9 @@ Changes between 0.9.8h and 0.9.8i [xx XXX xxxx] *) Add support for Local Machine Keyset attribute in PKCS#12 files. [Steve Henson] *) Fix BN_GF2m_mod_arr() top-bit cleanup code. [Huang Ying] Loading apps/pkcs12.c +8 −2 Original line number Diff line number Diff line Loading @@ -101,6 +101,7 @@ int MAIN(int argc, char **argv) char **args; char *name = NULL; char *csp_name = NULL; int add_lmk = 0; PKCS12 *p12 = NULL; char pass[50], macpass[50]; int export_cert = 0; Loading Loading @@ -211,7 +212,9 @@ int MAIN(int argc, char **argv) args++; name = *args; } else badarg = 1; } else if (!strcmp (*args, "-CSP")) { } else if (!strcmp (*args, "-LMK")) add_lmk = 1; else if (!strcmp (*args, "-CSP")) { if (args[1]) { args++; csp_name = *args; Loading Loading @@ -329,6 +332,7 @@ int MAIN(int argc, char **argv) BIO_printf(bio_err, " load the file (or the files in the directory) into\n"); BIO_printf(bio_err, " the random number generator\n"); BIO_printf(bio_err, "-CSP name Microsoft CSP name\n"); BIO_printf(bio_err, "-LMK Add local machine keyset attribute to private key\n"); goto end; } Loading Loading @@ -555,6 +559,8 @@ int MAIN(int argc, char **argv) EVP_PKEY_add1_attr_by_NID(key, NID_ms_csp_name, MBSTRING_ASC, (unsigned char *)csp_name, -1); if (add_lmk && key) EVP_PKEY_add1_attr_by_NID(key, NID_LocalKeySet, 0, NULL, -1); #ifdef CRYPTO_MDEBUG CRYPTO_pop_info(); Loading crypto/objects/obj_dat.h +11 −5 Original line number Diff line number Diff line Loading @@ -62,12 +62,12 @@ * [including the GNU Public Licence.] */ #define NUM_NID 856 #define NUM_SN 849 #define NUM_LN 849 #define NUM_OBJ 803 #define NUM_NID 857 #define NUM_SN 850 #define NUM_LN 850 #define NUM_OBJ 804 static const unsigned char lvalues[5702]={ static const unsigned char lvalues[5711]={ 0x00, /* [ 0] OBJ_undef */ 0x2A,0x86,0x48,0x86,0xF7,0x0D, /* [ 1] OBJ_rsadsi */ 0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01, /* [ 7] OBJ_pkcs */ Loading Loading @@ -871,6 +871,7 @@ static const unsigned char lvalues[5702]={ 0x2A,0x85,0x03,0x02,0x09,0x01,0x03,0x03, /* [5677] OBJ_id_GostR3411_94_with_GostR3410_94_cc */ 0x2A,0x85,0x03,0x02,0x09,0x01,0x03,0x04, /* [5685] OBJ_id_GostR3411_94_with_GostR3410_2001_cc */ 0x2A,0x85,0x03,0x02,0x09,0x01,0x08,0x01, /* [5693] OBJ_id_GostR3410_2001_ParamSet_cc */ 0x2B,0x06,0x01,0x04,0x01,0x82,0x37,0x11,0x02,/* [5701] OBJ_LocalKeySet */ }; static const ASN1_OBJECT nid_objs[NUM_NID]={ Loading Loading @@ -2253,6 +2254,8 @@ static const ASN1_OBJECT nid_objs[NUM_NID]={ "GOST R 3410-2001 Parameter Set Cryptocom", NID_id_GostR3410_2001_ParamSet_cc,8,&(lvalues[5693]),0}, {"HMAC","hmac",NID_hmac,0,NULL,0}, {"LocalKeySet","Microsoft Local Key set",NID_LocalKeySet,9, &(lvalues[5701]),0}, }; static const unsigned int sn_objs[NUM_SN]={ Loading Loading @@ -2347,6 +2350,7 @@ static const unsigned int sn_objs[NUM_SN]={ 646, /* "JOINT-ISO-ITU-T" */ 773, /* "KISA" */ 15, /* "L" */ 856, /* "LocalKeySet" */ 3, /* "MD2" */ 257, /* "MD4" */ 4, /* "MD5" */ Loading Loading @@ -3165,6 +3169,7 @@ static const unsigned int ln_objs[NUM_LN]={ 138, /* "Microsoft Encrypted File System" */ 171, /* "Microsoft Extension Request" */ 134, /* "Microsoft Individual Code Signing" */ 856, /* "Microsoft Local Key set" */ 137, /* "Microsoft Server Gated Crypto" */ 648, /* "Microsoft Smartcardlogin" */ 136, /* "Microsoft Trust List Signing" */ Loading Loading @@ -4550,6 +4555,7 @@ static const unsigned int obj_objs[NUM_OBJ]={ 682, /* OBJ_X9_62_tpBasis 1 2 840 10045 1 2 3 2 */ 683, /* OBJ_X9_62_ppBasis 1 2 840 10045 1 2 3 3 */ 417, /* OBJ_ms_csp_name 1 3 6 1 4 1 311 17 1 */ 856, /* OBJ_LocalKeySet 1 3 6 1 4 1 311 17 2 */ 390, /* OBJ_dcObject 1 3 6 1 4 1 1466 344 */ 91, /* OBJ_bf_cbc 1 3 6 1 4 1 3029 1 2 */ 315, /* OBJ_id_regCtrl_regToken 1 3 6 1 5 5 7 5 1 1 */ Loading crypto/objects/obj_mac.h +5 −0 Original line number Diff line number Diff line Loading @@ -1030,6 +1030,11 @@ #define NID_ms_csp_name 417 #define OBJ_ms_csp_name 1L,3L,6L,1L,4L,1L,311L,17L,1L #define SN_LocalKeySet "LocalKeySet" #define LN_LocalKeySet "Microsoft Local Key set" #define NID_LocalKeySet 856 #define OBJ_LocalKeySet 1L,3L,6L,1L,4L,1L,311L,17L,2L #define OBJ_certTypes OBJ_pkcs9,22L #define LN_x509Certificate "x509Certificate" Loading crypto/objects/obj_mac.num +1 −0 Original line number Diff line number Diff line Loading @@ -853,3 +853,4 @@ id_GostR3411_94_with_GostR3410_94_cc 852 id_GostR3411_94_with_GostR3410_2001_cc 853 id_GostR3410_2001_ParamSet_cc 854 hmac 855 LocalKeySet 856 Loading
CHANGES +4 −1 Original line number Diff line number Diff line Loading @@ -2,7 +2,7 @@ OpenSSL CHANGES _______________ Changes between 0.9.8g and 0.9.9 [xx XXX xxxx] Changes between 0.9.8i and 0.9.9 [xx XXX xxxx] *) Removed effectively defunct crypto/store from the build. [Ben Laurie] Loading Loading @@ -702,6 +702,9 @@ Changes between 0.9.8h and 0.9.8i [xx XXX xxxx] *) Add support for Local Machine Keyset attribute in PKCS#12 files. [Steve Henson] *) Fix BN_GF2m_mod_arr() top-bit cleanup code. [Huang Ying] Loading
apps/pkcs12.c +8 −2 Original line number Diff line number Diff line Loading @@ -101,6 +101,7 @@ int MAIN(int argc, char **argv) char **args; char *name = NULL; char *csp_name = NULL; int add_lmk = 0; PKCS12 *p12 = NULL; char pass[50], macpass[50]; int export_cert = 0; Loading Loading @@ -211,7 +212,9 @@ int MAIN(int argc, char **argv) args++; name = *args; } else badarg = 1; } else if (!strcmp (*args, "-CSP")) { } else if (!strcmp (*args, "-LMK")) add_lmk = 1; else if (!strcmp (*args, "-CSP")) { if (args[1]) { args++; csp_name = *args; Loading Loading @@ -329,6 +332,7 @@ int MAIN(int argc, char **argv) BIO_printf(bio_err, " load the file (or the files in the directory) into\n"); BIO_printf(bio_err, " the random number generator\n"); BIO_printf(bio_err, "-CSP name Microsoft CSP name\n"); BIO_printf(bio_err, "-LMK Add local machine keyset attribute to private key\n"); goto end; } Loading Loading @@ -555,6 +559,8 @@ int MAIN(int argc, char **argv) EVP_PKEY_add1_attr_by_NID(key, NID_ms_csp_name, MBSTRING_ASC, (unsigned char *)csp_name, -1); if (add_lmk && key) EVP_PKEY_add1_attr_by_NID(key, NID_LocalKeySet, 0, NULL, -1); #ifdef CRYPTO_MDEBUG CRYPTO_pop_info(); Loading
crypto/objects/obj_dat.h +11 −5 Original line number Diff line number Diff line Loading @@ -62,12 +62,12 @@ * [including the GNU Public Licence.] */ #define NUM_NID 856 #define NUM_SN 849 #define NUM_LN 849 #define NUM_OBJ 803 #define NUM_NID 857 #define NUM_SN 850 #define NUM_LN 850 #define NUM_OBJ 804 static const unsigned char lvalues[5702]={ static const unsigned char lvalues[5711]={ 0x00, /* [ 0] OBJ_undef */ 0x2A,0x86,0x48,0x86,0xF7,0x0D, /* [ 1] OBJ_rsadsi */ 0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01, /* [ 7] OBJ_pkcs */ Loading Loading @@ -871,6 +871,7 @@ static const unsigned char lvalues[5702]={ 0x2A,0x85,0x03,0x02,0x09,0x01,0x03,0x03, /* [5677] OBJ_id_GostR3411_94_with_GostR3410_94_cc */ 0x2A,0x85,0x03,0x02,0x09,0x01,0x03,0x04, /* [5685] OBJ_id_GostR3411_94_with_GostR3410_2001_cc */ 0x2A,0x85,0x03,0x02,0x09,0x01,0x08,0x01, /* [5693] OBJ_id_GostR3410_2001_ParamSet_cc */ 0x2B,0x06,0x01,0x04,0x01,0x82,0x37,0x11,0x02,/* [5701] OBJ_LocalKeySet */ }; static const ASN1_OBJECT nid_objs[NUM_NID]={ Loading Loading @@ -2253,6 +2254,8 @@ static const ASN1_OBJECT nid_objs[NUM_NID]={ "GOST R 3410-2001 Parameter Set Cryptocom", NID_id_GostR3410_2001_ParamSet_cc,8,&(lvalues[5693]),0}, {"HMAC","hmac",NID_hmac,0,NULL,0}, {"LocalKeySet","Microsoft Local Key set",NID_LocalKeySet,9, &(lvalues[5701]),0}, }; static const unsigned int sn_objs[NUM_SN]={ Loading Loading @@ -2347,6 +2350,7 @@ static const unsigned int sn_objs[NUM_SN]={ 646, /* "JOINT-ISO-ITU-T" */ 773, /* "KISA" */ 15, /* "L" */ 856, /* "LocalKeySet" */ 3, /* "MD2" */ 257, /* "MD4" */ 4, /* "MD5" */ Loading Loading @@ -3165,6 +3169,7 @@ static const unsigned int ln_objs[NUM_LN]={ 138, /* "Microsoft Encrypted File System" */ 171, /* "Microsoft Extension Request" */ 134, /* "Microsoft Individual Code Signing" */ 856, /* "Microsoft Local Key set" */ 137, /* "Microsoft Server Gated Crypto" */ 648, /* "Microsoft Smartcardlogin" */ 136, /* "Microsoft Trust List Signing" */ Loading Loading @@ -4550,6 +4555,7 @@ static const unsigned int obj_objs[NUM_OBJ]={ 682, /* OBJ_X9_62_tpBasis 1 2 840 10045 1 2 3 2 */ 683, /* OBJ_X9_62_ppBasis 1 2 840 10045 1 2 3 3 */ 417, /* OBJ_ms_csp_name 1 3 6 1 4 1 311 17 1 */ 856, /* OBJ_LocalKeySet 1 3 6 1 4 1 311 17 2 */ 390, /* OBJ_dcObject 1 3 6 1 4 1 1466 344 */ 91, /* OBJ_bf_cbc 1 3 6 1 4 1 3029 1 2 */ 315, /* OBJ_id_regCtrl_regToken 1 3 6 1 5 5 7 5 1 1 */ Loading
crypto/objects/obj_mac.h +5 −0 Original line number Diff line number Diff line Loading @@ -1030,6 +1030,11 @@ #define NID_ms_csp_name 417 #define OBJ_ms_csp_name 1L,3L,6L,1L,4L,1L,311L,17L,1L #define SN_LocalKeySet "LocalKeySet" #define LN_LocalKeySet "Microsoft Local Key set" #define NID_LocalKeySet 856 #define OBJ_LocalKeySet 1L,3L,6L,1L,4L,1L,311L,17L,2L #define OBJ_certTypes OBJ_pkcs9,22L #define LN_x509Certificate "x509Certificate" Loading
crypto/objects/obj_mac.num +1 −0 Original line number Diff line number Diff line Loading @@ -853,3 +853,4 @@ id_GostR3411_94_with_GostR3410_94_cc 852 id_GostR3411_94_with_GostR3410_2001_cc 853 id_GostR3410_2001_ParamSet_cc 854 hmac 855 LocalKeySet 856