From 6e19a0408070b1ef0127e7756ceedbadd28e330f Mon Sep 17 00:00:00 2001 From: Richard Levitte Date: Thu, 20 Dec 2001 09:43:59 +0000 Subject: [PATCH] merge from the 0.9.6 branch. --- CHANGES | 10 ++ Configure | 6 + TABLE | 45 ++++++- config | 5 +- crypto/bio/b_print.c | 4 +- crypto/objects/Makefile.ssl | 7 + crypto/objects/obj_dat.h | 251 ++++++++++++++++++------------------ crypto/objects/obj_dat.pl | 13 +- crypto/objects/obj_mac.h | 24 ++-- crypto/objects/objects.h | 34 ++--- crypto/objects/objects.pl | 13 +- crypto/objects/objects.txt | 2 +- crypto/pkcs7/pk7_doit.c | 14 +- doc/ssleay.txt | 16 +++ 14 files changed, 264 insertions(+), 180 deletions(-) diff --git a/CHANGES b/CHANGES index cf2cc178b5..cc1e6cac48 100644 --- a/CHANGES +++ b/CHANGES @@ -4,6 +4,16 @@ Changes between 0.9.6b and 0.9.6c [XX xxx XXXX] + *) Only add signing time to PKCS7 structures if it is not already + present. + [Steve Henson] + + *) Fix crypto/objects/objects.h: "ld-ce" should be "id-ce", + OBJ_ld_ce should be OBJ_id_ce. + Also some ip-pda OIDs in crypto/objects/objects.txt were + incorrect (cf. RFC 3039). + [Matt Cooper, Frederic Giudicelli, Bodo Moeller] + *) Release CRYPTO_LOCK_DYNLOCK when CRYPTO_destroy_dynlockid() returns early because it has nothing to do. [Andy Schneider ] diff --git a/Configure b/Configure index 6eaa3c43bd..fd3441dee5 100755 --- a/Configure +++ b/Configure @@ -258,6 +258,9 @@ my %table=( # If hpux-gcc fails, try this one: "hpux-brokengcc", "gcc:-DB_ENDIAN -DBN_DIV2W -O3::(unknown):-ldld:DES_PTR DES_UNROLL DES_RISC1::::::::::dl:hpux-shared:-fPIC:.sl.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", +# HPUX 9.X on Motorola 68k platforms with gcc +"hpux-m68k-gcc", "gcc:-DB_ENDIAN -DBN_DIV2W -O3::(unknown)::BN_LLONG DES_PTR DES_UNROLL:::", + # HPUX 10.X config. Supports threads. "hpux10-cc", "cc:-DB_ENDIAN -DBN_DIV2W -DMD32_XARRAY -Ae +ESlit +O3 -z::-D_REENTRANT:-ldld:BN_LLONG DES_PTR DES_UNROLL DES_RISC1::::::::::dl:hpux-shared:+Z:.sl.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", # If hpux10-cc fails, try this one (if still fails, try deleting BN_LLONG): @@ -359,6 +362,9 @@ my %table=( # QNX 4 "qnx4", "cc:-DL_ENDIAN -DTERMIO::(unknown)::${x86_gcc_des} ${x86_gcc_opts}:", +# QNX 6 +"qnx6", "cc:-DL_ENDIAN -DTERMIOS::(unknown):-lsocket:${x86_gcc_des} ${x86_gcc_opts}:", + # Linux on ARM "linux-elf-arm","gcc:-DL_ENDIAN -DTERMIO -O3 -fomit-frame-pointer -Wall::-D_REENTRANT::BN_LLONG::::::::::dlfcn:linux-shared:-fPIC:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", diff --git a/TABLE b/TABLE index 83e0c132fa..f1533e884e 100644 --- a/TABLE +++ b/TABLE @@ -1,4 +1,3 @@ -Output of `Configure TABLE': *** BC-16 $cc = bcc @@ -1562,6 +1561,28 @@ $shared_cflag = -fPIC $shared_extension = .sl.$(SHLIB_MAJOR).$(SHLIB_MINOR) $ranlib = +*** hpux-m68k-gcc +$cc = gcc +$cflags = -DB_ENDIAN -DBN_DIV2W -O3 +$unistd = +$thread_cflag = (unknown) +$lflags = +$bn_ops = BN_LLONG DES_PTR DES_UNROLL +$bn_obj = +$des_obj = +$bf_obj = +$md5_obj = +$sha1_obj = +$cast_obj = +$rc4_obj = +$rmd160_obj = +$rc5_obj = +$dso_scheme = +$shared_target= +$shared_cflag = +$shared_extension = +$ranlib = + *** hpux-parisc-cc $cc = cc $cflags = +O3 +Optrs_strongly_typed +Olibcalls -Ae +ESlit -DB_ENDIAN -DBN_DIV2W -DMD32_XARRAY @@ -2420,6 +2441,28 @@ $shared_cflag = $shared_extension = $ranlib = +*** qnx6 +$cc = cc +$cflags = -DL_ENDIAN -DTERMIOS +$unistd = +$thread_cflag = (unknown) +$lflags = -lsocket +$bn_ops = DES_PTR DES_RISC1 DES_UNROLL RC4_INDEX MD2_INT +$bn_obj = +$des_obj = +$bf_obj = +$md5_obj = +$sha1_obj = +$cast_obj = +$rc4_obj = +$rmd160_obj = +$rc5_obj = +$dso_scheme = +$shared_target= +$shared_cflag = +$shared_extension = +$ranlib = + *** rhapsody-ppc-cc $cc = cc $cflags = -O3 -DB_ENDIAN diff --git a/config b/config index d6c3dc4d42..9c0a9115b4 100755 --- a/config +++ b/config @@ -220,10 +220,13 @@ case "${SYSTEM}:${RELEASE}:${VERSION}:${MACHINE}" in ;; QNX:*) - case "$VERSION" in + case "$RELEASE" in 4*) echo "${MACHINE}-whatever-qnx4" ;; + 6*) + echo "${MACHINE}-whatever-qnx6" + ;; *) echo "${MACHINE}-whatever-qnx" ;; diff --git a/crypto/bio/b_print.c b/crypto/bio/b_print.c index 91a049406e..f0a50c29be 100644 --- a/crypto/bio/b_print.c +++ b/crypto/bio/b_print.c @@ -569,7 +569,7 @@ pow10(int exp) } static long -round(LDOUBLE value) +roundv(LDOUBLE value) { long intpart; intpart = (long) value; @@ -621,7 +621,7 @@ fmtfp( /* we "cheat" by converting the fractional part to integer by multiplying by a factor of 10 */ - fracpart = round((pow10(max)) * (ufvalue - intpart)); + fracpart = roundv((pow10(max)) * (ufvalue - intpart)); if (fracpart >= pow10(max)) { intpart++; diff --git a/crypto/objects/Makefile.ssl b/crypto/objects/Makefile.ssl index 1b43d8027b..c4cbc50f37 100644 --- a/crypto/objects/Makefile.ssl +++ b/crypto/objects/Makefile.ssl @@ -43,6 +43,13 @@ lib: $(LIBOBJ) - $(RANLIB) $(LIB) @touch lib +obj_dat.h: obj_dat.pl obj_mac.h + perl obj_dat.pl obj_mac.h obj_dat.h + +# objects.pl both reads and writes obj_mac.num +obj_mac.h: objects.pl objects.txt obj_mac.num + perl objects.pl objects.txt obj_mac.num obj_mac.h + files: $(PERL) $(TOP)/util/files.pl Makefile.ssl >> $(TOP)/MINFO diff --git a/crypto/objects/obj_dat.h b/crypto/objects/obj_dat.h index abaf181a63..47c6b9a072 100644 --- a/crypto/objects/obj_dat.h +++ b/crypto/objects/obj_dat.h @@ -1,4 +1,10 @@ -/* lib/obj/obj_dat.h */ +/* crypto/objects/obj_dat.h */ + +/* THIS FILE IS GENERATED FROM objects.h by obj_dat.pl via the + * following command: + * perl obj_dat.pl objects.h obj_dat.h + */ + /* Copyright (C) 1995-1997 Eric Young (eay@cryptsoft.com) * All rights reserved. * @@ -56,17 +62,12 @@ * [including the GNU Public Licence.] */ -/* THIS FILE IS GENERATED FROM Objects.h by obj_dat.pl via the - * following command: - * perl obj_dat.pl objects.h obj_dat.h - */ - #define NUM_NID 404 -#define NUM_SN 403 -#define NUM_LN 403 -#define NUM_OBJ 377 +#define NUM_SN 402 +#define NUM_LN 402 +#define NUM_OBJ 376 -static unsigned char lvalues[2949]={ +static unsigned char lvalues[2941]={ 0x00, /* [ 0] OBJ_undef */ 0x2A,0x86,0x48,0x86,0xF7,0x0D, /* [ 1] OBJ_rsadsi */ 0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01, /* [ 7] OBJ_pkcs */ @@ -390,60 +391,59 @@ static unsigned char lvalues[2949]={ 0x2B,0x06,0x01,0x05,0x05,0x07,0x08,0x01, /* [2583] OBJ_id_on_personalData */ 0x2B,0x06,0x01,0x05,0x05,0x07,0x09,0x01, /* [2591] OBJ_id_pda_dateOfBirth */ 0x2B,0x06,0x01,0x05,0x05,0x07,0x09,0x02, /* [2599] OBJ_id_pda_placeOfBirth */ -0x2B,0x06,0x01,0x05,0x05,0x07,0x09,0x03, /* [2607] OBJ_id_pda_pseudonym */ -0x2B,0x06,0x01,0x05,0x05,0x07,0x09,0x04, /* [2615] OBJ_id_pda_gender */ -0x2B,0x06,0x01,0x05,0x05,0x07,0x09,0x05, /* [2623] OBJ_id_pda_countryOfCitizenship */ -0x2B,0x06,0x01,0x05,0x05,0x07,0x09,0x06, /* [2631] OBJ_id_pda_countryOfResidence */ -0x2B,0x06,0x01,0x05,0x05,0x07,0x0A,0x01, /* [2639] OBJ_id_aca_authenticationInfo */ -0x2B,0x06,0x01,0x05,0x05,0x07,0x0A,0x02, /* [2647] OBJ_id_aca_accessIdentity */ -0x2B,0x06,0x01,0x05,0x05,0x07,0x0A,0x03, /* [2655] OBJ_id_aca_chargingIdentity */ -0x2B,0x06,0x01,0x05,0x05,0x07,0x0A,0x04, /* [2663] OBJ_id_aca_group */ -0x2B,0x06,0x01,0x05,0x05,0x07,0x0A,0x05, /* [2671] OBJ_id_aca_role */ -0x2B,0x06,0x01,0x05,0x05,0x07,0x0B,0x01, /* [2679] OBJ_id_qcs_pkixQCSyntax_v1 */ -0x2B,0x06,0x01,0x05,0x05,0x07,0x0C,0x01, /* [2687] OBJ_id_cct_crs */ -0x2B,0x06,0x01,0x05,0x05,0x07,0x0C,0x02, /* [2695] OBJ_id_cct_PKIData */ -0x2B,0x06,0x01,0x05,0x05,0x07,0x0C,0x03, /* [2703] OBJ_id_cct_PKIResponse */ -0x2B,0x06,0x01,0x05,0x05,0x07,0x30,0x03, /* [2711] OBJ_ad_timeStamping */ -0x2B,0x06,0x01,0x05,0x05,0x07,0x30,0x04, /* [2719] OBJ_ad_dvcs */ -0x2B,0x06,0x01,0x05,0x05,0x07,0x30,0x01,0x01,/* [2727] OBJ_id_pkix_OCSP_basic */ -0x2B,0x06,0x01,0x05,0x05,0x07,0x30,0x01,0x02,/* [2736] OBJ_id_pkix_OCSP_Nonce */ -0x2B,0x06,0x01,0x05,0x05,0x07,0x30,0x01,0x03,/* [2745] OBJ_id_pkix_OCSP_CrlID */ -0x2B,0x06,0x01,0x05,0x05,0x07,0x30,0x01,0x04,/* [2754] OBJ_id_pkix_OCSP_acceptableResponses */ -0x2B,0x06,0x01,0x05,0x05,0x07,0x30,0x01,0x05,/* [2763] OBJ_id_pkix_OCSP_noCheck */ -0x2B,0x06,0x01,0x05,0x05,0x07,0x30,0x01,0x06,/* [2772] OBJ_id_pkix_OCSP_archiveCutoff */ -0x2B,0x06,0x01,0x05,0x05,0x07,0x30,0x01,0x07,/* [2781] OBJ_id_pkix_OCSP_serviceLocator */ -0x2B,0x06,0x01,0x05,0x05,0x07,0x30,0x01,0x08,/* [2790] OBJ_id_pkix_OCSP_extendedStatus */ -0x2B,0x06,0x01,0x05,0x05,0x07,0x30,0x01,0x09,/* [2799] OBJ_id_pkix_OCSP_valid */ -0x2B,0x06,0x01,0x05,0x05,0x07,0x30,0x01,0x0A,/* [2808] OBJ_id_pkix_OCSP_path */ -0x2B,0x06,0x01,0x05,0x05,0x07,0x30,0x01,0x0B,/* [2817] OBJ_id_pkix_OCSP_trustRoot */ -0x2B,0x0E,0x03,0x02, /* [2826] OBJ_algorithm */ -0x2B,0x0E,0x03,0x02,0x0B, /* [2830] OBJ_rsaSignature */ -0x55,0x08, /* [2835] OBJ_X500algorithms */ -0x2B, /* [2837] OBJ_org */ -0x2B,0x06, /* [2838] OBJ_dod */ -0x2B,0x06,0x01, /* [2840] OBJ_iana */ -0x2B,0x06,0x01,0x01, /* [2843] OBJ_Directory */ -0x2B,0x06,0x01,0x02, /* [2847] OBJ_Management */ -0x2B,0x06,0x01,0x03, /* [2851] OBJ_Experimental */ -0x2B,0x06,0x01,0x04, /* [2855] OBJ_Private */ -0x2B,0x06,0x01,0x05, /* [2859] OBJ_Security */ -0x2B,0x06,0x01,0x06, /* [2863] OBJ_SNMPv2 */ -0x2B,0x06,0x01,0x07, /* [2867] OBJ_Mail */ -0x01, /* [2871] OBJ_Enterprises */ -0xBA,0x82,0x58, /* [2872] OBJ_dcObject */ -0x09,0x92,0x26,0x89,0x93,0xF2,0x2C,0x64,0x01,0x19,/* [2875] OBJ_domainComponent */ -0x09,0x92,0x26,0x89,0x93,0xF2,0x2C,0x64,0x04,0x0D,/* [2885] OBJ_Domain */ -0x50, /* [2895] OBJ_joint_iso_ccitt */ -0x55,0x01,0x05, /* [2896] OBJ_selected_attribute_types */ -0x55,0x01,0x05,0x37, /* [2899] OBJ_clearance */ -0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x01,0x03,/* [2903] OBJ_md4WithRSAEncryption */ -0x2B,0x06,0x01,0x05,0x05,0x07,0x01,0x0A, /* [2912] OBJ_ac_proxying */ -0x2B,0x06,0x01,0x05,0x05,0x07,0x01,0x0B, /* [2920] OBJ_sinfo_access */ -0x2B,0x06,0x01,0x05,0x05,0x07,0x0A,0x06, /* [2928] OBJ_id_aca_encAttrs */ -0x55,0x04,0x48, /* [2936] OBJ_role */ -0x55,0x1D,0x24, /* [2939] OBJ_policy_constraints */ -0x55,0x1D,0x37, /* [2942] OBJ_target_information */ -0x55,0x1D,0x38, /* [2945] OBJ_no_rev_avail */ +0x2B,0x06,0x01,0x05,0x05,0x07,0x09,0x03, /* [2607] OBJ_id_pda_gender */ +0x2B,0x06,0x01,0x05,0x05,0x07,0x09,0x04, /* [2615] OBJ_id_pda_countryOfCitizenship */ +0x2B,0x06,0x01,0x05,0x05,0x07,0x09,0x05, /* [2623] OBJ_id_pda_countryOfResidence */ +0x2B,0x06,0x01,0x05,0x05,0x07,0x0A,0x01, /* [2631] OBJ_id_aca_authenticationInfo */ +0x2B,0x06,0x01,0x05,0x05,0x07,0x0A,0x02, /* [2639] OBJ_id_aca_accessIdentity */ +0x2B,0x06,0x01,0x05,0x05,0x07,0x0A,0x03, /* [2647] OBJ_id_aca_chargingIdentity */ +0x2B,0x06,0x01,0x05,0x05,0x07,0x0A,0x04, /* [2655] OBJ_id_aca_group */ +0x2B,0x06,0x01,0x05,0x05,0x07,0x0A,0x05, /* [2663] OBJ_id_aca_role */ +0x2B,0x06,0x01,0x05,0x05,0x07,0x0B,0x01, /* [2671] OBJ_id_qcs_pkixQCSyntax_v1 */ +0x2B,0x06,0x01,0x05,0x05,0x07,0x0C,0x01, /* [2679] OBJ_id_cct_crs */ +0x2B,0x06,0x01,0x05,0x05,0x07,0x0C,0x02, /* [2687] OBJ_id_cct_PKIData */ +0x2B,0x06,0x01,0x05,0x05,0x07,0x0C,0x03, /* [2695] OBJ_id_cct_PKIResponse */ +0x2B,0x06,0x01,0x05,0x05,0x07,0x30,0x03, /* [2703] OBJ_ad_timeStamping */ +0x2B,0x06,0x01,0x05,0x05,0x07,0x30,0x04, /* [2711] OBJ_ad_dvcs */ +0x2B,0x06,0x01,0x05,0x05,0x07,0x30,0x01,0x01,/* [2719] OBJ_id_pkix_OCSP_basic */ +0x2B,0x06,0x01,0x05,0x05,0x07,0x30,0x01,0x02,/* [2728] OBJ_id_pkix_OCSP_Nonce */ +0x2B,0x06,0x01,0x05,0x05,0x07,0x30,0x01,0x03,/* [2737] OBJ_id_pkix_OCSP_CrlID */ +0x2B,0x06,0x01,0x05,0x05,0x07,0x30,0x01,0x04,/* [2746] OBJ_id_pkix_OCSP_acceptableResponses */ +0x2B,0x06,0x01,0x05,0x05,0x07,0x30,0x01,0x05,/* [2755] OBJ_id_pkix_OCSP_noCheck */ +0x2B,0x06,0x01,0x05,0x05,0x07,0x30,0x01,0x06,/* [2764] OBJ_id_pkix_OCSP_archiveCutoff */ +0x2B,0x06,0x01,0x05,0x05,0x07,0x30,0x01,0x07,/* [2773] OBJ_id_pkix_OCSP_serviceLocator */ +0x2B,0x06,0x01,0x05,0x05,0x07,0x30,0x01,0x08,/* [2782] OBJ_id_pkix_OCSP_extendedStatus */ +0x2B,0x06,0x01,0x05,0x05,0x07,0x30,0x01,0x09,/* [2791] OBJ_id_pkix_OCSP_valid */ +0x2B,0x06,0x01,0x05,0x05,0x07,0x30,0x01,0x0A,/* [2800] OBJ_id_pkix_OCSP_path */ +0x2B,0x06,0x01,0x05,0x05,0x07,0x30,0x01,0x0B,/* [2809] OBJ_id_pkix_OCSP_trustRoot */ +0x2B,0x0E,0x03,0x02, /* [2818] OBJ_algorithm */ +0x2B,0x0E,0x03,0x02,0x0B, /* [2822] OBJ_rsaSignature */ +0x55,0x08, /* [2827] OBJ_X500algorithms */ +0x2B, /* [2829] OBJ_org */ +0x2B,0x06, /* [2830] OBJ_dod */ +0x2B,0x06,0x01, /* [2832] OBJ_iana */ +0x2B,0x06,0x01,0x01, /* [2835] OBJ_Directory */ +0x2B,0x06,0x01,0x02, /* [2839] OBJ_Management */ +0x2B,0x06,0x01,0x03, /* [2843] OBJ_Experimental */ +0x2B,0x06,0x01,0x04, /* [2847] OBJ_Private */ +0x2B,0x06,0x01,0x05, /* [2851] OBJ_Security */ +0x2B,0x06,0x01,0x06, /* [2855] OBJ_SNMPv2 */ +0x2B,0x06,0x01,0x07, /* [2859] OBJ_Mail */ +0x01, /* [2863] OBJ_Enterprises */ +0xBA,0x82,0x58, /* [2864] OBJ_dcObject */ +0x09,0x92,0x26,0x89,0x93,0xF2,0x2C,0x64,0x01,0x19,/* [2867] OBJ_domainComponent */ +0x09,0x92,0x26,0x89,0x93,0xF2,0x2C,0x64,0x04,0x0D,/* [2877] OBJ_Domain */ +0x50, /* [2887] OBJ_joint_iso_ccitt */ +0x55,0x01,0x05, /* [2888] OBJ_selected_attribute_types */ +0x55,0x01,0x05,0x37, /* [2891] OBJ_clearance */ +0x2A,0x86,0x48,0x86,0xF7,0x0D,0x01,0x01,0x03,/* [2895] OBJ_md4WithRSAEncryption */ +0x2B,0x06,0x01,0x05,0x05,0x07,0x01,0x0A, /* [2904] OBJ_ac_proxying */ +0x2B,0x06,0x01,0x05,0x05,0x07,0x01,0x0B, /* [2912] OBJ_sinfo_access */ +0x2B,0x06,0x01,0x05,0x05,0x07,0x0A,0x06, /* [2920] OBJ_id_aca_encAttrs */ +0x55,0x04,0x48, /* [2928] OBJ_role */ +0x55,0x1D,0x24, /* [2931] OBJ_policy_constraints */ +0x55,0x1D,0x37, /* [2934] OBJ_target_information */ +0x55,0x1D,0x38, /* [2937] OBJ_no_rev_avail */ }; static ASN1_OBJECT nid_objs[NUM_NID]={ @@ -587,7 +587,8 @@ static ASN1_OBJECT nid_objs[NUM_NID]={ {"G","givenName",NID_givenName,3,&(lvalues[535]),0}, {"S","surname",NID_surname,3,&(lvalues[538]),0}, {"I","initials",NID_initials,3,&(lvalues[541]),0}, -{"UID","uniqueIdentifier",NID_uniqueIdentifier,3,&(lvalues[544]),0}, +{"uniqueIdentifier","uniqueIdentifier",NID_uniqueIdentifier,3, + &(lvalues[544]),0}, {"crlDistributionPoints","X509v3 CRL Distribution Points", NID_crl_distribution_points,3,&(lvalues[547]),0}, {"RSA-NP-MD5","md5WithRSA",NID_md5WithRSA,5,&(lvalues[550]),0}, @@ -996,85 +997,84 @@ static ASN1_OBJECT nid_objs[NUM_NID]={ &(lvalues[2591]),0}, {"id-pda-placeOfBirth","id-pda-placeOfBirth",NID_id_pda_placeOfBirth, 8,&(lvalues[2599]),0}, -{"id-pda-pseudonym","id-pda-pseudonym",NID_id_pda_pseudonym,8, - &(lvalues[2607]),0}, -{"id-pda-gender","id-pda-gender",NID_id_pda_gender,8,&(lvalues[2615]),0}, +{NULL,NULL,NID_undef,0,NULL}, +{"id-pda-gender","id-pda-gender",NID_id_pda_gender,8,&(lvalues[2607]),0}, {"id-pda-countryOfCitizenship","id-pda-countryOfCitizenship", - NID_id_pda_countryOfCitizenship,8,&(lvalues[2623]),0}, + NID_id_pda_countryOfCitizenship,8,&(lvalues[2615]),0}, {"id-pda-countryOfResidence","id-pda-countryOfResidence", - NID_id_pda_countryOfResidence,8,&(lvalues[2631]),0}, + NID_id_pda_countryOfResidence,8,&(lvalues[2623]),0}, {"id-aca-authenticationInfo","id-aca-authenticationInfo", - NID_id_aca_authenticationInfo,8,&(lvalues[2639]),0}, + NID_id_aca_authenticationInfo,8,&(lvalues[2631]),0}, {"id-aca-accessIdentity","id-aca-accessIdentity", - NID_id_aca_accessIdentity,8,&(lvalues[2647]),0}, + NID_id_aca_accessIdentity,8,&(lvalues[2639]),0}, {"id-aca-chargingIdentity","id-aca-chargingIdentity", - NID_id_aca_chargingIdentity,8,&(lvalues[2655]),0}, -{"id-aca-group","id-aca-group",NID_id_aca_group,8,&(lvalues[2663]),0}, -{"id-aca-role","id-aca-role",NID_id_aca_role,8,&(lvalues[2671]),0}, + NID_id_aca_chargingIdentity,8,&(lvalues[2647]),0}, +{"id-aca-group","id-aca-group",NID_id_aca_group,8,&(lvalues[2655]),0}, +{"id-aca-role","id-aca-role",NID_id_aca_role,8,&(lvalues[2663]),0}, {"id-qcs-pkixQCSyntax-v1","id-qcs-pkixQCSyntax-v1", - NID_id_qcs_pkixQCSyntax_v1,8,&(lvalues[2679]),0}, -{"id-cct-crs","id-cct-crs",NID_id_cct_crs,8,&(lvalues[2687]),0}, + NID_id_qcs_pkixQCSyntax_v1,8,&(lvalues[2671]),0}, +{"id-cct-crs","id-cct-crs",NID_id_cct_crs,8,&(lvalues[2679]),0}, {"id-cct-PKIData","id-cct-PKIData",NID_id_cct_PKIData,8, - &(lvalues[2695]),0}, + &(lvalues[2687]),0}, {"id-cct-PKIResponse","id-cct-PKIResponse",NID_id_cct_PKIResponse,8, - &(lvalues[2703]),0}, + &(lvalues[2695]),0}, {"ad_timestamping","AD Time Stamping",NID_ad_timeStamping,8, - &(lvalues[2711]),0}, -{"AD_DVCS","ad dvcs",NID_ad_dvcs,8,&(lvalues[2719]),0}, + &(lvalues[2703]),0}, +{"AD_DVCS","ad dvcs",NID_ad_dvcs,8,&(lvalues[2711]),0}, {"basicOCSPResponse","Basic OCSP Response",NID_id_pkix_OCSP_basic,9, - &(lvalues[2727]),0}, -{"Nonce","OCSP Nonce",NID_id_pkix_OCSP_Nonce,9,&(lvalues[2736]),0}, -{"CrlID","OCSP CRL ID",NID_id_pkix_OCSP_CrlID,9,&(lvalues[2745]),0}, + &(lvalues[2719]),0}, +{"Nonce","OCSP Nonce",NID_id_pkix_OCSP_Nonce,9,&(lvalues[2728]),0}, +{"CrlID","OCSP CRL ID",NID_id_pkix_OCSP_CrlID,9,&(lvalues[2737]),0}, {"acceptableResponses","Acceptable OCSP Responses", - NID_id_pkix_OCSP_acceptableResponses,9,&(lvalues[2754]),0}, -{"noCheck","noCheck",NID_id_pkix_OCSP_noCheck,9,&(lvalues[2763]),0}, + NID_id_pkix_OCSP_acceptableResponses,9,&(lvalues[2746]),0}, +{"noCheck","noCheck",NID_id_pkix_OCSP_noCheck,9,&(lvalues[2755]),0}, {"archiveCutoff","OCSP Archive Cutoff",NID_id_pkix_OCSP_archiveCutoff, - 9,&(lvalues[2772]),0}, + 9,&(lvalues[2764]),0}, {"serviceLocator","OCSP Service Locator", - NID_id_pkix_OCSP_serviceLocator,9,&(lvalues[2781]),0}, + NID_id_pkix_OCSP_serviceLocator,9,&(lvalues[2773]),0}, {"extendedStatus","Extended OCSP Status", - NID_id_pkix_OCSP_extendedStatus,9,&(lvalues[2790]),0}, -{"valid","valid",NID_id_pkix_OCSP_valid,9,&(lvalues[2799]),0}, -{"path","path",NID_id_pkix_OCSP_path,9,&(lvalues[2808]),0}, + NID_id_pkix_OCSP_extendedStatus,9,&(lvalues[2782]),0}, +{"valid","valid",NID_id_pkix_OCSP_valid,9,&(lvalues[2791]),0}, +{"path","path",NID_id_pkix_OCSP_path,9,&(lvalues[2800]),0}, {"trustRoot","Trust Root",NID_id_pkix_OCSP_trustRoot,9, - &(lvalues[2817]),0}, -{"algorithm","algorithm",NID_algorithm,4,&(lvalues[2826]),0}, -{"rsaSignature","rsaSignature",NID_rsaSignature,5,&(lvalues[2830]),0}, + &(lvalues[2809]),0}, +{"algorithm","algorithm",NID_algorithm,4,&(lvalues[2818]),0}, +{"rsaSignature","rsaSignature",NID_rsaSignature,5,&(lvalues[2822]),0}, {"X500algorithms","directory services - algorithms", - NID_X500algorithms,2,&(lvalues[2835]),0}, -{"ORG","org",NID_org,1,&(lvalues[2837]),0}, -{"DOD","dod",NID_dod,2,&(lvalues[2838]),0}, -{"IANA","iana",NID_iana,3,&(lvalues[2840]),0}, -{"directory","Directory",NID_Directory,4,&(lvalues[2843]),0}, -{"mgmt","Management",NID_Management,4,&(lvalues[2847]),0}, -{"experimental","Experimental",NID_Experimental,4,&(lvalues[2851]),0}, -{"private","Private",NID_Private,4,&(lvalues[2855]),0}, -{"security","Security",NID_Security,4,&(lvalues[2859]),0}, -{"snmpv2","SNMPv2",NID_SNMPv2,4,&(lvalues[2863]),0}, -{"mail","Mail",NID_Mail,4,&(lvalues[2867]),0}, -{"enterprises","Enterprises",NID_Enterprises,1,&(lvalues[2871]),0}, -{"dcobject","dcObject",NID_dcObject,3,&(lvalues[2872]),0}, -{"DC","domainComponent",NID_domainComponent,10,&(lvalues[2875]),0}, -{"domain","Domain",NID_Domain,10,&(lvalues[2885]),0}, + NID_X500algorithms,2,&(lvalues[2827]),0}, +{"ORG","org",NID_org,1,&(lvalues[2829]),0}, +{"DOD","dod",NID_dod,2,&(lvalues[2830]),0}, +{"IANA","iana",NID_iana,3,&(lvalues[2832]),0}, +{"directory","Directory",NID_Directory,4,&(lvalues[2835]),0}, +{"mgmt","Management",NID_Management,4,&(lvalues[2839]),0}, +{"experimental","Experimental",NID_Experimental,4,&(lvalues[2843]),0}, +{"private","Private",NID_Private,4,&(lvalues[2847]),0}, +{"security","Security",NID_Security,4,&(lvalues[2851]),0}, +{"snmpv2","SNMPv2",NID_SNMPv2,4,&(lvalues[2855]),0}, +{"mail","Mail",NID_Mail,4,&(lvalues[2859]),0}, +{"enterprises","Enterprises",NID_Enterprises,1,&(lvalues[2863]),0}, +{"dcobject","dcObject",NID_dcObject,3,&(lvalues[2864]),0}, +{"DC","domainComponent",NID_domainComponent,10,&(lvalues[2867]),0}, +{"domain","Domain",NID_Domain,10,&(lvalues[2877]),0}, {"JOINT-ISO-CCITT","joint-iso-ccitt",NID_joint_iso_ccitt,1, - &(lvalues[2895]),0}, + &(lvalues[2887]),0}, {"selected-attribute-types","Selected Attribute Types", - NID_selected_attribute_types,3,&(lvalues[2896]),0}, -{"clearance","clearance",NID_clearance,4,&(lvalues[2899]),0}, + NID_selected_attribute_types,3,&(lvalues[2888]),0}, +{"clearance","clearance",NID_clearance,4,&(lvalues[2891]),0}, {"RSA-MD4","md4WithRSAEncryption",NID_md4WithRSAEncryption,9, - &(lvalues[2903]),0}, -{"ac-proxying","ac-proxying",NID_ac_proxying,8,&(lvalues[2912]),0}, + &(lvalues[2895]),0}, +{"ac-proxying","ac-proxying",NID_ac_proxying,8,&(lvalues[2904]),0}, {"subjectInfoAccess","Subject Information Access",NID_sinfo_access,8, - &(lvalues[2920]),0}, + &(lvalues[2912]),0}, {"id-aca-encAttrs","id-aca-encAttrs",NID_id_aca_encAttrs,8, - &(lvalues[2928]),0}, -{"role","role",NID_role,3,&(lvalues[2936]),0}, + &(lvalues[2920]),0}, +{"role","role",NID_role,3,&(lvalues[2928]),0}, {"policyConstraints","X509v3 Policy Constraints", - NID_policy_constraints,3,&(lvalues[2939]),0}, + NID_policy_constraints,3,&(lvalues[2931]),0}, {"targetInformation","X509v3 AC Targeting",NID_target_information,3, - &(lvalues[2942]),0}, + &(lvalues[2934]),0}, {"noRevAvail","X509v3 No Revocation Available",NID_no_rev_avail,3, - &(lvalues[2945]),0}, + &(lvalues[2937]),0}, }; static ASN1_OBJECT *sn_objs[NUM_SN]={ @@ -1186,7 +1186,6 @@ static ASN1_OBJECT *sn_objs[NUM_SN]={ &(nid_objs[16]),/* "ST" */ &(nid_objs[143]),/* "SXNetID" */ &(nid_objs[106]),/* "T" */ -&(nid_objs[102]),/* "UID" */ &(nid_objs[ 0]),/* "UNDEF" */ &(nid_objs[11]),/* "X500" */ &(nid_objs[378]),/* "X500algorithms" */ @@ -1310,7 +1309,6 @@ static ASN1_OBJECT *sn_objs[NUM_SN]={ &(nid_objs[348]),/* "id-pda-dateOfBirth" */ &(nid_objs[351]),/* "id-pda-gender" */ &(nid_objs[349]),/* "id-pda-placeOfBirth" */ -&(nid_objs[350]),/* "id-pda-pseudonym" */ &(nid_objs[175]),/* "id-pe" */ &(nid_objs[261]),/* "id-pkip" */ &(nid_objs[258]),/* "id-pkix-mod" */ @@ -1476,6 +1474,7 @@ static ASN1_OBJECT *sn_objs[NUM_SN]={ &(nid_objs[293]),/* "textNotice" */ &(nid_objs[133]),/* "timeStamping" */ &(nid_objs[375]),/* "trustRoot" */ +&(nid_objs[102]),/* "uniqueIdentifier" */ &(nid_objs[55]),/* "unstructuredAddress" */ &(nid_objs[49]),/* "unstructuredName" */ &(nid_objs[373]),/* "valid" */ @@ -1701,7 +1700,6 @@ static ASN1_OBJECT *ln_objs[NUM_LN]={ &(nid_objs[348]),/* "id-pda-dateOfBirth" */ &(nid_objs[351]),/* "id-pda-gender" */ &(nid_objs[349]),/* "id-pda-placeOfBirth" */ -&(nid_objs[350]),/* "id-pda-pseudonym" */ &(nid_objs[175]),/* "id-pe" */ &(nid_objs[261]),/* "id-pkip" */ &(nid_objs[258]),/* "id-pkix-mod" */ @@ -2088,10 +2086,9 @@ static ASN1_OBJECT *obj_objs[NUM_OBJ]={ &(nid_objs[347]),/* OBJ_id_on_personalData 1 3 6 1 5 5 7 8 1 */ &(nid_objs[348]),/* OBJ_id_pda_dateOfBirth 1 3 6 1 5 5 7 9 1 */ &(nid_objs[349]),/* OBJ_id_pda_placeOfBirth 1 3 6 1 5 5 7 9 2 */ -&(nid_objs[350]),/* OBJ_id_pda_pseudonym 1 3 6 1 5 5 7 9 3 */ -&(nid_objs[351]),/* OBJ_id_pda_gender 1 3 6 1 5 5 7 9 4 */ -&(nid_objs[352]),/* OBJ_id_pda_countryOfCitizenship 1 3 6 1 5 5 7 9 5 */ -&(nid_objs[353]),/* OBJ_id_pda_countryOfResidence 1 3 6 1 5 5 7 9 6 */ +&(nid_objs[351]),/* OBJ_id_pda_gender 1 3 6 1 5 5 7 9 3 */ +&(nid_objs[352]),/* OBJ_id_pda_countryOfCitizenship 1 3 6 1 5 5 7 9 4 */ +&(nid_objs[353]),/* OBJ_id_pda_countryOfResidence 1 3 6 1 5 5 7 9 5 */ &(nid_objs[354]),/* OBJ_id_aca_authenticationInfo 1 3 6 1 5 5 7 10 1 */ &(nid_objs[355]),/* OBJ_id_aca_accessIdentity 1 3 6 1 5 5 7 10 2 */ &(nid_objs[356]),/* OBJ_id_aca_chargingIdentity 1 3 6 1 5 5 7 10 3 */ diff --git a/crypto/objects/obj_dat.pl b/crypto/objects/obj_dat.pl index 11066df680..be92f18470 100644 --- a/crypto/objects/obj_dat.pl +++ b/crypto/objects/obj_dat.pl @@ -164,7 +164,13 @@ foreach (sort obj_cmp @a) } print OUT <<'EOF'; -/* lib/obj/obj_dat.h */ +/* crypto/objects/obj_dat.h */ + +/* THIS FILE IS GENERATED FROM objects.h by obj_dat.pl via the + * following command: + * perl obj_dat.pl objects.h obj_dat.h + */ + /* Copyright (C) 1995-1997 Eric Young (eay@cryptsoft.com) * All rights reserved. * @@ -222,11 +228,6 @@ print OUT <<'EOF'; * [including the GNU Public Licence.] */ -/* THIS FILE IS GENERATED FROM Objects.h by obj_dat.pl via the - * following command: - * perl obj_dat.pl objects.h obj_dat.h - */ - EOF printf OUT "#define NUM_NID %d\n",$n; diff --git a/crypto/objects/obj_mac.h b/crypto/objects/obj_mac.h index 73b91bc6dc..ad2e4239e1 100644 --- a/crypto/objects/obj_mac.h +++ b/crypto/objects/obj_mac.h @@ -1,4 +1,10 @@ -/* lib/obj/obj_mac.h */ +/* crypto/objects/obj_mac.h */ + +/* THIS FILE IS GENERATED FROM objects.txt by objects.pl via the + * following command: + * perl objects.pl objects.txt obj_mac.num obj_mac.h + */ + /* Copyright (C) 1995-1997 Eric Young (eay@cryptsoft.com) * All rights reserved. * @@ -56,11 +62,6 @@ * [including the GNU Public Licence.] */ -/* THIS FILE IS GENERATED FROM objects.txt by objects.pl via the - * following command: - * perl objects.pl objects.txt obj_mac.num obj_mac.h - */ - #define SN_undef "UNDEF" #define LN_undef "undefined" #define NID_undef 0 @@ -1256,21 +1257,17 @@ #define NID_id_pda_placeOfBirth 349 #define OBJ_id_pda_placeOfBirth OBJ_id_pda,2L -#define SN_id_pda_pseudonym "id-pda-pseudonym" -#define NID_id_pda_pseudonym 350 -#define OBJ_id_pda_pseudonym OBJ_id_pda,3L - #define SN_id_pda_gender "id-pda-gender" #define NID_id_pda_gender 351 -#define OBJ_id_pda_gender OBJ_id_pda,4L +#define OBJ_id_pda_gender OBJ_id_pda,3L #define SN_id_pda_countryOfCitizenship "id-pda-countryOfCitizenship" #define NID_id_pda_countryOfCitizenship 352 -#define OBJ_id_pda_countryOfCitizenship OBJ_id_pda,5L +#define OBJ_id_pda_countryOfCitizenship OBJ_id_pda,4L #define SN_id_pda_countryOfResidence "id-pda-countryOfResidence" #define NID_id_pda_countryOfResidence 353 -#define OBJ_id_pda_countryOfResidence OBJ_id_pda,6L +#define OBJ_id_pda_countryOfResidence OBJ_id_pda,5L #define SN_id_aca_authenticationInfo "id-aca-authenticationInfo" #define NID_id_aca_authenticationInfo 354 @@ -1577,7 +1574,6 @@ #define NID_initials 101 #define OBJ_initials OBJ_X509,43L -#define SN_uniqueIdentifier "UID" #define LN_uniqueIdentifier "uniqueIdentifier" #define NID_uniqueIdentifier 102 #define OBJ_uniqueIdentifier OBJ_X509,45L diff --git a/crypto/objects/objects.h b/crypto/objects/objects.h index 96b8cc9ae8..3980cbc8cb 100644 --- a/crypto/objects/objects.h +++ b/crypto/objects/objects.h @@ -452,54 +452,54 @@ #define LN_desx_cbc "desx-cbc" #define NID_desx_cbc 80 -#define SN_ld_ce "ld-ce" -#define NID_ld_ce 81 -#define OBJ_ld_ce 2L,5L,29L +#define SN_id_ce "id-ce" +#define NID_id_ce 81 +#define OBJ_id_ce 2L,5L,29L #define SN_subject_key_identifier "subjectKeyIdentifier" #define LN_subject_key_identifier "X509v3 Subject Key Identifier" #define NID_subject_key_identifier 82 -#define OBJ_subject_key_identifier OBJ_ld_ce,14L +#define OBJ_subject_key_identifier OBJ_id_ce,14L #define SN_key_usage "keyUsage" #define LN_key_usage "X509v3 Key Usage" #define NID_key_usage 83 -#define OBJ_key_usage OBJ_ld_ce,15L +#define OBJ_key_usage OBJ_id_ce,15L #define SN_private_key_usage_period "privateKeyUsagePeriod" #define LN_private_key_usage_period "X509v3 Private Key Usage Period" #define NID_private_key_usage_period 84 -#define OBJ_private_key_usage_period OBJ_ld_ce,16L +#define OBJ_private_key_usage_period OBJ_id_ce,16L #define SN_subject_alt_name "subjectAltName" #define LN_subject_alt_name "X509v3 Subject Alternative Name" #define NID_subject_alt_name 85 -#define OBJ_subject_alt_name OBJ_ld_ce,17L +#define OBJ_subject_alt_name OBJ_id_ce,17L #define SN_issuer_alt_name "issuerAltName" #define LN_issuer_alt_name "X509v3 Issuer Alternative Name" #define NID_issuer_alt_name 86 -#define OBJ_issuer_alt_name OBJ_ld_ce,18L +#define OBJ_issuer_alt_name OBJ_id_ce,18L #define SN_basic_constraints "basicConstraints" #define LN_basic_constraints "X509v3 Basic Constraints" #define NID_basic_constraints 87 -#define OBJ_basic_constraints OBJ_ld_ce,19L +#define OBJ_basic_constraints OBJ_id_ce,19L #define SN_crl_number "crlNumber" #define LN_crl_number "X509v3 CRL Number" #define NID_crl_number 88 -#define OBJ_crl_number OBJ_ld_ce,20L +#define OBJ_crl_number OBJ_id_ce,20L #define SN_certificate_policies "certificatePolicies" #define LN_certificate_policies "X509v3 Certificate Policies" #define NID_certificate_policies 89 -#define OBJ_certificate_policies OBJ_ld_ce,32L +#define OBJ_certificate_policies OBJ_id_ce,32L #define SN_authority_key_identifier "authorityKeyIdentifier" #define LN_authority_key_identifier "X509v3 Authority Key Identifier" #define NID_authority_key_identifier 90 -#define OBJ_authority_key_identifier OBJ_ld_ce,35L +#define OBJ_authority_key_identifier OBJ_id_ce,35L #define SN_bf_cbc "BF-CBC" #define LN_bf_cbc "bf-cbc" @@ -560,7 +560,7 @@ #define SN_crl_distribution_points "crlDistributionPoints" #define LN_crl_distribution_points "X509v3 CRL Distribution Points" #define NID_crl_distribution_points 103 -#define OBJ_crl_distribution_points OBJ_ld_ce,31L +#define OBJ_crl_distribution_points OBJ_id_ce,31L #define SN_md5WithRSA "RSA-NP-MD5" #define LN_md5WithRSA "md5WithRSA" @@ -677,7 +677,7 @@ #define SN_ext_key_usage "extendedKeyUsage" #define LN_ext_key_usage "X509v3 Extended Key Usage" #define NID_ext_key_usage 126 -#define OBJ_ext_key_usage OBJ_ld_ce,37 +#define OBJ_ext_key_usage OBJ_id_ce,37 #define SN_id_pkix "PKIX" #define NID_id_pkix 127 @@ -751,17 +751,17 @@ #define SN_delta_crl "deltaCRL" #define LN_delta_crl "X509v3 Delta CRL Indicator" #define NID_delta_crl 140 -#define OBJ_delta_crl OBJ_ld_ce,27L +#define OBJ_delta_crl OBJ_id_ce,27L #define SN_crl_reason "CRLReason" #define LN_crl_reason "CRL Reason Code" #define NID_crl_reason 141 -#define OBJ_crl_reason OBJ_ld_ce,21L +#define OBJ_crl_reason OBJ_id_ce,21L #define SN_invalidity_date "invalidityDate" #define LN_invalidity_date "Invalidity Date" #define NID_invalidity_date 142 -#define OBJ_invalidity_date OBJ_ld_ce,24L +#define OBJ_invalidity_date OBJ_id_ce,24L #define SN_sxnet "SXNetID" #define LN_sxnet "Strong Extranet ID" diff --git a/crypto/objects/objects.pl b/crypto/objects/objects.pl index c956bbb841..2b8106eb99 100644 --- a/crypto/objects/objects.pl +++ b/crypto/objects/objects.pl @@ -114,7 +114,13 @@ close NUMOUT; open (OUT,">$ARGV[2]") || die "Can't open output file $ARGV[2]"; print OUT <<'EOF'; -/* lib/obj/obj_mac.h */ +/* crypto/objects/obj_mac.h */ + +/* THIS FILE IS GENERATED FROM objects.txt by objects.pl via the + * following command: + * perl objects.pl objects.txt obj_mac.num obj_mac.h + */ + /* Copyright (C) 1995-1997 Eric Young (eay@cryptsoft.com) * All rights reserved. * @@ -172,11 +178,6 @@ print OUT <<'EOF'; * [including the GNU Public Licence.] */ -/* THIS FILE IS GENERATED FROM objects.txt by objects.pl via the - * following command: - * perl objects.pl objects.txt obj_mac.num obj_mac.h - */ - #define SN_undef "UNDEF" #define LN_undef "undefined" #define NID_undef 0 diff --git a/crypto/objects/objects.txt b/crypto/objects/objects.txt index 5741ef5fc4..5f179a5f4c 100644 --- a/crypto/objects/objects.txt +++ b/crypto/objects/objects.txt @@ -508,7 +508,7 @@ X509 13 : D : description X509 41 : name : name X509 42 : G : givenName X509 43 : I : initials -X509 45 : UID : uniqueIdentifier +X509 45 : : uniqueIdentifier X509 46 : dnQualifier : dnQualifier X509 72 : role : role diff --git a/crypto/pkcs7/pk7_doit.c b/crypto/pkcs7/pk7_doit.c index bf43d030ad..2b60cab4af 100644 --- a/crypto/pkcs7/pk7_doit.c +++ b/crypto/pkcs7/pk7_doit.c @@ -558,11 +558,15 @@ int PKCS7_dataFinal(PKCS7 *p7, BIO *bio) ASN1_UTCTIME *sign_time; const EVP_MD *md_tmp; - /* Add signing time */ - sign_time=X509_gmtime_adj(NULL,0); - PKCS7_add_signed_attribute(si, - NID_pkcs9_signingTime, - V_ASN1_UTCTIME,sign_time); + /* Add signing time if not already present */ + if (!PKCS7_get_signed_attribute(si, + NID_pkcs9_signingTime)) + { + sign_time=X509_gmtime_adj(NULL,0); + PKCS7_add_signed_attribute(si, + NID_pkcs9_signingTime, + V_ASN1_UTCTIME,sign_time); + } /* Add digest */ md_tmp=EVP_MD_CTX_md(&ctx_tmp); diff --git a/doc/ssleay.txt b/doc/ssleay.txt index fab8d42c42..c6049d5e53 100644 --- a/doc/ssleay.txt +++ b/doc/ssleay.txt @@ -1,6 +1,22 @@ Bundle of old SSLeay documentation files [OBSOLETE!] +*** WARNING! WARNING! WARNING! WARNING! WARNING! WARNING! WARNING! *** + +OBSOLETE means that nothing in this document should be trusted. This +document is provided mostly for historical purposes (it wasn't even up +to date at the time SSLeay 0.8.1 was released) and as inspiration. If +you copy some snippet of code from this document, please _check_ that +it really is correct from all points of view. For example, you can +check with the other documents in this directory tree, or by comparing +with relevant parts of the include files. + +People have done the mistake of trusting what's written here. Please +don't do that. + +*** WARNING! WARNING! WARNING! WARNING! WARNING! WARNING! WARNING! *** + + ==== readme ======================================================== This is the old 0.6.6 docuementation. Most of the cipher stuff is still -- 2.25.1