Home | History | Annotate | Line # | Download | only in hx509
      1  1.1     elric 2008-07-14  Love Hrnquist strand  <lha (a] kth.se>
      2  1.1     elric 
      3  1.1     elric 	* hxtool.c: Break out print_eval_types().
      4  1.1     elric 	
      5  1.1     elric 2008-06-21  Love Hrnquist strand  <lha (a] kth.se>
      6  1.1     elric 
      7  1.1     elric 	* ks_p12.c: pass in time_now to unevelope
      8  1.1     elric 
      9  1.1     elric 	* cms.c: Pass in time_now to unevelope, us verify context time in
     10  1.1     elric 	verify_signed.
     11  1.1     elric 
     12  1.1     elric 2008-05-23  Love Hrnquist strand  <lha (a] kth.se>
     13  1.1     elric 	
     14  1.1     elric 	* hx_locl.h: Include <limits.h> for TYPE_MAX defines.
     15  1.1     elric 
     16  1.1     elric 2008-04-29  Love Hrnquist strand  <lha (a] it.su.se>
     17  1.1     elric 
     18  1.1     elric 	* sel-lex.l: Use _hx509_sel_yyerror() instead of error_message().
     19  1.1     elric 	
     20  1.1     elric 2008-04-20  Love Hrnquist strand  <lha (a] it.su.se>
     21  1.1     elric 	
     22  1.1     elric 	* sel-lex.l: Include <config.h>
     23  1.1     elric 
     24  1.1     elric 2008-04-17  Love Hrnquist strand  <lha (a] it.su.se>
     25  1.1     elric 
     26  1.1     elric 	* Makefile.am: Update make-proto usage.
     27  1.1     elric 
     28  1.1     elric 2008-04-15  Love Hrnquist strand  <lha (a] it.su.se>
     29  1.1     elric 
     30  1.1     elric 	* ca.c: BasicConstraints.pathLenConstraint unsigned int.
     31  1.1     elric 
     32  1.1     elric 	* sel-lex.l: Prefix sel_error with _hx509_ since its global on
     33  1.1     elric 	platforms w/o symbol versioning.
     34  1.1     elric 	
     35  1.1     elric 	* sel.h: rename yyerror to sel_yyerror in the whole library, not
     36  1.1     elric 	just the lexer
     37  1.1     elric 
     38  1.1     elric 	* sel-lex.l: rename yyerror to sel_yyerror in the whole library,
     39  1.1     elric 	not just the lexer
     40  1.1     elric 	
     41  1.1     elric 2008-04-14  Love Hrnquist strand  <lha (a] it.su.se>
     42  1.1     elric 
     43  1.1     elric 	* sel-lex.l: Rename yyerror to sel_yyerror and make it static.
     44  1.1     elric 
     45  1.1     elric 2008-04-08  Love Hrnquist strand  <lha (a] it.su.se>
     46  1.1     elric 
     47  1.1     elric 	* hx509.h: Make self-standing by including missing files.
     48  1.1     elric 
     49  1.1     elric 2008-04-07  Love Hrnquist strand  <lha (a] it.su.se>
     50  1.1     elric 
     51  1.1     elric 	* ks_p11.c: Use unsigned where appropriate.
     52  1.1     elric 
     53  1.1     elric 	* softp11.c: call va_start before using vsnprintf.
     54  1.1     elric 
     55  1.1     elric 	* crypto.c: make refcount slightly more sane.
     56  1.1     elric 
     57  1.1     elric 	* keyset.c: make refcount slightly more sane.
     58  1.1     elric 
     59  1.1     elric 	* cert.c: make refcount slightly more sane.
     60  1.1     elric 
     61  1.1     elric 2008-03-19  Love Hrnquist strand  <lha (a] it.su.se>
     62  1.1     elric 
     63  1.1     elric 	* test_nist2.in: Try to find unzip.
     64  1.1     elric 
     65  1.1     elric 2008-03-16  Love Hrnquist strand  <lha (a] it.su.se>
     66  1.1     elric 
     67  1.1     elric 	* version-script.map: add missing symbols
     68  1.1     elric 
     69  1.1     elric 	* spnego: Make delegated credentials delegated directly, Oleg
     70  1.1     elric 	Sharoiko pointed out that it always didnt work with the old
     71  1.1     elric 	code. Also add som missing cred and context pass-thou functions in
     72  1.1     elric 	the SPNEGO layer.
     73  1.1     elric 	
     74  1.1     elric 2008-03-14  Love Hrnquist strand  <lha (a] it.su.se>
     75  1.1     elric 
     76  1.1     elric 	* rename to be more consistent, export for teting
     77  1.1     elric 
     78  1.1     elric 	* Add language to support querying certificates to find a
     79  1.1     elric 	match. Support constructs like "1.3.6.1.5.2.3.5" IN
     80  1.1     elric 	%{certificate.eku} AND %{certificate.subject} TAILMATCH "C=SE".
     81  1.1     elric 
     82  1.1     elric 2008-02-26  Love Hrnquist strand  <lha (a] it.su.se>
     83  1.1     elric 
     84  1.1     elric 	* version-script.map: add hx509_pem_read
     85  1.1     elric 
     86  1.1     elric 	* hxtool-commands.in: Add --pem to cms-verify-sd.
     87  1.1     elric 
     88  1.1     elric 	* test_cms.in: Test verifying PEM signature files.
     89  1.1     elric 
     90  1.1     elric 	* hxtool.c: Support verifying PEM signature files.
     91  1.1     elric 
     92  1.1     elric 2008-02-25  Love Hrnquist strand  <lha (a] it.su.se>
     93  1.1     elric 
     94  1.1     elric 	* Makefile.am: libhx509_la_OBJECTS depends on hx_locl.h
     95  1.1     elric 
     96  1.1     elric 2008-02-11  Love Hrnquist strand  <lha (a] it.su.se>
     97  1.1     elric 
     98  1.1     elric 	* Use ldap-prep (with libwind) to compare names
     99  1.1     elric 
    100  1.1     elric 2008-01-27  Love Hrnquist strand  <lha (a] it.su.se>
    101  1.1     elric 
    102  1.1     elric 	* cert.c (hx509_query_match_eku): update to support the NULL
    103  1.1     elric 	eku (reset), clearify the old behaivor with regards repetitive
    104  1.1     elric 	calls.
    105  1.1     elric 
    106  1.1     elric 	* Add matching on EKU, validate EKUs, add hxtool matching glue,
    107  1.1     elric 	add check. Adapted from pach from Tim Miller of Mitre
    108  1.1     elric 
    109  1.1     elric 2008-01-21  Love Hrnquist strand  <lha (a] it.su.se>
    110  1.1     elric 
    111  1.1     elric 	* test_soft_pkcs11.c: use func for more C_ functions.
    112  1.1     elric 	
    113  1.1     elric 2008-01-18  Love Hrnquist strand  <lha (a] it.su.se>
    114  1.1     elric 
    115  1.1     elric 	* version-script.map: Export hx509_free_error_string().
    116  1.1     elric 
    117  1.1     elric 2008-01-17  Love Hrnquist strand  <lha (a] it.su.se>
    118  1.1     elric 
    119  1.1     elric 	* version-script.map: only export C_GetFunctionList
    120  1.1     elric 
    121  1.1     elric 	* test_soft_pkcs11.c: use C_GetFunctionList
    122  1.1     elric 
    123  1.1     elric 	* softp11.c: fix comment, remove label.
    124  1.1     elric 
    125  1.1     elric 	* softp11.c: Add option app-fatal to control if softtoken should
    126  1.1     elric 	abort() on erroneous input from applications.
    127  1.1     elric 
    128  1.1     elric 2008-01-16  Love Hrnquist strand  <lha (a] it.su.se>
    129  1.1     elric 
    130  1.1     elric 	* test_pkcs11.in: Test password less certificates too
    131  1.1     elric 
    132  1.1     elric 	* keyset.c: document HX509_CERTS_UNPROTECT_ALL
    133  1.1     elric 
    134  1.1     elric 	* ks_file.c: Support HX509_CERTS_UNPROTECT_ALL.
    135  1.1     elric 
    136  1.1     elric 	* hx509.h: Add HX509_CERTS_UNPROTECT_ALL.
    137  1.1     elric 
    138  1.1     elric 	* test_soft_pkcs11.c: Only log in if needed.
    139  1.1     elric 
    140  1.1     elric 2008-01-15  Love Hrnquist strand  <lha (a] it.su.se>
    141  1.1     elric 
    142  1.1     elric 	* softp11.c: Support PINs to login to the store.
    143  1.1     elric 
    144  1.1     elric 	* Makefile.am: add java pkcs11 test
    145  1.1     elric 
    146  1.1     elric 	* test_java_pkcs11.in: first version of disable java test
    147  1.1     elric 
    148  1.1     elric 	* softp11.c: Drop unused stuff.
    149  1.1     elric 
    150  1.1     elric 	* cert.c: Spelling, Add hx509_cert_get_SPKI_AlgorithmIdentifier,
    151  1.1     elric 	remove unused stuff, add hx509_context to some functions.
    152  1.1     elric 	
    153  1.1     elric 	* softp11.c: Add more glue to figure out what keytype this
    154  1.1     elric 	certificate is using.
    155  1.1     elric 
    156  1.1     elric 2008-01-14  Love Hrnquist strand  <lha (a] it.su.se>
    157  1.1     elric 
    158  1.1     elric 	* test_pkcs11.in: test debug
    159  1.1     elric 
    160  1.1     elric 	* Add a PKCS11 provider supporting signing and verifing sigatures.
    161  1.1     elric 
    162  1.1     elric 2008-01-13  Love Hrnquist strand  <lha (a] it.su.se>
    163  1.1     elric 
    164  1.1     elric 	* version-script.map: Replace hx509_name_to_der_name with
    165  1.1     elric 	hx509_name_binary.
    166  1.1     elric 
    167  1.1     elric 	* print.c: make print_func static
    168  1.1     elric 
    169  1.1     elric 2007-12-26  Love Hrnquist strand  <lha (a] it.su.se>
    170  1.1     elric 
    171  1.1     elric 	* print.c: doxygen
    172  1.1     elric 
    173  1.1     elric 	* env.c: doxygen
    174  1.1     elric 
    175  1.1     elric 	* doxygen.c: add more groups
    176  1.1     elric 
    177  1.1     elric 	* ca.c: doxygen.
    178  1.1     elric 
    179  1.1     elric 2007-12-17  Love Hrnquist strand  <lha (a] it.su.se>
    180  1.1     elric 
    181  1.1     elric 	* ca.c: doxygen
    182  1.1     elric 
    183  1.1     elric 2007-12-16  Love Hrnquist strand  <lha (a] it.su.se>
    184  1.1     elric 
    185  1.1     elric 	* error.c: doxygen
    186  1.1     elric 	
    187  1.1     elric 2007-12-15  Love Hrnquist strand  <lha (a] it.su.se>
    188  1.1     elric 
    189  1.1     elric 	* More documentation
    190  1.1     elric 	
    191  1.1     elric 	* lock.c: Add page referance
    192  1.1     elric 
    193  1.1     elric 	* keyset.c: some more documentation.
    194  1.1     elric 
    195  1.1     elric 	* cms.c: Doxygen documentation.
    196  1.1     elric 
    197  1.1     elric 2007-12-11  Love Hrnquist strand  <lha (a] it.su.se>
    198  1.1     elric 
    199  1.1     elric 	* *.[ch]: More documentation
    200  1.1     elric 
    201  1.1     elric 2007-12-09  Love Hrnquist strand  <lha (a] it.su.se>
    202  1.1     elric 
    203  1.1     elric 	* handle refcount on NULL.
    204  1.1     elric 
    205  1.1     elric 	* test_nist_pkcs12.in: drop echo -n, doesn't work with posix sh
    206  1.1     elric 
    207  1.1     elric 2007-12-08  Love Hrnquist strand  <lha (a] it.su.se>
    208  1.1     elric 
    209  1.1     elric 	* test_nist2.in: Print that this is version 2 of the tests
    210  1.1     elric 
    211  1.1     elric 	* test_nist.in: Drop printing of $id.
    212  1.1     elric 
    213  1.1     elric 	* hx509.h: Add HX509_VHN_F_ALLOW_NO_MATCH.
    214  1.1     elric 
    215  1.1     elric 	* name.c: spelling.
    216  1.1     elric 
    217  1.1     elric 	* cert.c: make work the doxygen.
    218  1.1     elric 
    219  1.1     elric 	* name.c: fix doxygen compiling.
    220  1.1     elric 
    221  1.1     elric 	* Makefile.am: add doxygen.c
    222  1.1     elric 
    223  1.1     elric 	* doxygen.c: Add doxygen main page.
    224  1.1     elric 
    225  1.1     elric 	* cert.c: Add doxygen.
    226  1.1     elric 
    227  1.1     elric 	* revoke.c (_hx509_revoke_ref): new function.
    228  1.1     elric 
    229  1.1     elric 2007-11-16  Love Hrnquist strand  <lha (a] it.su.se>
    230  1.1     elric 
    231  1.1     elric 	* ks_keychain.c: Check if SecKeyGetCSPHandle needs prototype.
    232  1.1     elric 
    233  1.1     elric 2007-08-16  Love Hrnquist strand  <lha (a] it.su.se>
    234  1.1     elric 	
    235  1.1     elric 	* data/nist-data: Make work on case senstive filesystems too.
    236  1.1     elric 	
    237  1.1     elric 2007-08-09  Love Hrnquist strand  <lha (a] it.su.se>
    238  1.1     elric 
    239  1.1     elric 	* cert.c: match rfc822 contrains better, provide better error
    240  1.1     elric 	strings.
    241  1.1     elric 
    242  1.1     elric 2007-08-08  Love Hrnquist strand  <lha (a] it.su.se>
    243  1.1     elric 
    244  1.1     elric 	* cert.c: "self-signed doesn't count" doesn't apply to trust
    245  1.1     elric 	anchor certificate.  make trust anchor check consistant.
    246  1.1     elric 
    247  1.1     elric 	* revoke.c: make compile.
    248  1.1     elric 
    249  1.1     elric 	* revoke.c (verify_crl): set error strings.
    250  1.1     elric 	
    251  1.1     elric 	* revoke.c (verify_crl): handle with the signer is the
    252  1.1     elric 	CRLsigner (shortcut).
    253  1.1     elric 
    254  1.1     elric 	* cert.c: Fix NC, comment on how to use _hx509_check_key_usage.
    255  1.1     elric 
    256  1.1     elric 2007-08-03  Love Hrnquist strand  <lha (a] it.su.se>
    257  1.1     elric 
    258  1.1     elric 	* test_nist2.in, Makefile, test/nist*: Add nist pkits tests. 
    259  1.1     elric 
    260  1.1     elric 	* revoke.c: Update to use CERT_REVOKED error, shortcut out of OCSP
    261  1.1     elric 	checking when OCSP reply is a revocation reply.
    262  1.1     elric 
    263  1.1     elric 	* hx509_err.et: Make CERT_REVOKED error OCSP/CRL agnostic.
    264  1.1     elric 
    265  1.1     elric 	* name.c (_hx509_Name_to_string): make printableString handle
    266  1.1     elric 	space (0x20) diffrences as required by rfc3280.
    267  1.1     elric 
    268  1.1     elric 	* revoke.c: Search for the right issuer when looking for the
    269  1.1     elric 	issuer of the CRL signer.
    270  1.1     elric 
    271  1.1     elric 2007-08-02  Love Hrnquist strand  <lha (a] it.su.se>
    272  1.1     elric 
    273  1.1     elric 	* revoke.c: Handle CRL signing certificate better, try to not
    274  1.1     elric 	revalidate invalid CRLs over and over.
    275  1.1     elric 
    276  1.1     elric 2007-08-01  Love Hrnquist strand  <lha (a] it.su.se>
    277  1.1     elric 
    278  1.1     elric 	* cms.c: remove stale comment.
    279  1.1     elric 
    280  1.1     elric 	* test_nist.in: Unpack PKITS_data.zip and run tests.
    281  1.1     elric 	
    282  1.1     elric 	* test_nist_cert.in: Adapt to new nist pkits framework.
    283  1.1     elric 
    284  1.1     elric 	* test_nist_pkcs12.in: Adapt to new nist pkits framework.
    285  1.1     elric 
    286  1.1     elric 	* Makefile.am: clean PKITS_data
    287  1.1     elric 
    288  1.1     elric 2007-07-16  Love Hrnquist strand  <lha (a] it.su.se>
    289  1.1     elric 
    290  1.1     elric 	* Makefile.am: Add version-script.map to EXTRA_DIST
    291  1.1     elric 
    292  1.1     elric 2007-07-12  Love Hrnquist strand  <lha (a] it.su.se>
    293  1.1     elric 
    294  1.1     elric 	* Makefile.am: Add depenency on asn1_compile for asn1 built files.
    295  1.1     elric 	
    296  1.1     elric 2007-07-10  Love Hrnquist strand  <lha (a] it.su.se>
    297  1.1     elric 
    298  1.1     elric 	* peer.c: update (c), indent.
    299  1.1     elric 
    300  1.1     elric 	* Makefile.am: New library version.
    301  1.1     elric 
    302  1.1     elric 2007-06-28  Love Hrnquist strand  <lha (a] it.su.se>
    303  1.1     elric 
    304  1.1     elric 	* ks_p11.c: Add sha2 types.
    305  1.1     elric 
    306  1.1     elric 	* ref/pkcs11.h: Sync with scute.
    307  1.1     elric 
    308  1.1     elric 	* ref/pkcs11.h: Add sha2 CKM's.
    309  1.1     elric 
    310  1.1     elric 	* print.c: Print authorityInfoAccess.
    311  1.1     elric 
    312  1.1     elric 	* cert.c: Rename proxyCertInfo oid.
    313  1.1     elric 
    314  1.1     elric 	* ca.c: Rename proxyCertInfo oid.
    315  1.1     elric 
    316  1.1     elric 	* print.c: Rename proxyCertInfo oid.
    317  1.1     elric 	
    318  1.1     elric 2007-06-26  Love Hrnquist strand  <lha (a] it.su.se>
    319  1.1     elric 
    320  1.1     elric 	* test_ca.in: Adapt to new request handling.
    321  1.1     elric 
    322  1.1     elric 	* req.c: Allow export some of the request parameters.
    323  1.1     elric 
    324  1.1     elric 	* hxtool-commands.in: Adapt to new request handling.
    325  1.1     elric 
    326  1.1     elric 	* hxtool.c: Adapt to new request handling.
    327  1.1     elric 
    328  1.1     elric 	* test_req.in: Adapt to new request handling.
    329  1.1     elric 
    330  1.1     elric 	* version-script.map: Add initialize_hx_error_table_r.
    331  1.1     elric 
    332  1.1     elric 	* req.c: Move _hx509_request_print here.
    333  1.1     elric 
    334  1.1     elric 	* hxtool.c: use _hx509_request_print
    335  1.1     elric 
    336  1.1     elric 	* version-script.map: Export more crap^W semiprivate functions.
    337  1.1     elric 
    338  1.1     elric 	* hxtool.c: don't _hx509_abort
    339  1.1     elric 
    340  1.1     elric 	* version-script.map: add missing ;
    341  1.1     elric 
    342  1.1     elric 2007-06-25  Love Hrnquist strand  <lha (a] it.su.se>
    343  1.1     elric 
    344  1.1     elric 	* cms.c: Use hx509_crypto_random_iv.
    345  1.1     elric 
    346  1.1     elric 	* crypto.c: Split out the iv creation from hx509_crypto_encrypt
    347  1.1     elric 	since _hx509_pbe_encrypt needs to use the iv from the s2k
    348  1.1     elric 	function.
    349  1.1     elric 
    350  1.1     elric 	* test_cert.in: Test PEM and DER FILE writing functionallity.
    351  1.1     elric 
    352  1.1     elric 	* ks_file.c: Add writing DER certificates.
    353  1.1     elric 
    354  1.1     elric 	* hxtool.c: Update to new hx509_pem_write().
    355  1.1     elric 
    356  1.1     elric 	* test_cms.in: test creation of PEM signeddata.
    357  1.1     elric 
    358  1.1     elric 	* hx509.h: PEM struct/function declarations.
    359  1.1     elric 
    360  1.1     elric 	* ks_file.c: Use PEM encoding/decoding functions.
    361  1.1     elric 
    362  1.1     elric 	* file.c: PEM encode/decoding functions.
    363  1.1     elric 
    364  1.1     elric 	* ks_file.c: Use hx509_pem_write.
    365  1.1     elric 
    366  1.1     elric 	* version-script.map: Export some semi-private functions.
    367  1.1     elric 
    368  1.1     elric 	* hxtool.c: Enable writing out signed data as a pem attachment.
    369  1.1     elric 
    370  1.1     elric 	* hxtool-commands.in (cms-create-signed): add --pem
    371  1.1     elric 
    372  1.1     elric 	* file.c (hx509_pem_write): Add.
    373  1.1     elric 
    374  1.1     elric 	* test_ca.in: Issue and test null subject cert.
    375  1.1     elric 
    376  1.1     elric 	* cert.c: Match is first component is in a CN=.
    377  1.1     elric 
    378  1.1     elric 	* test_ca.in: Test hostname if first CN.
    379  1.1     elric 
    380  1.1     elric 	* Makefile.am: Add version script.
    381  1.1     elric 
    382  1.1     elric 	* version-script.map: Limited exported symbols.
    383  1.1     elric 
    384  1.1     elric 	* test_ca.in: test --hostname.
    385  1.1     elric 
    386  1.1     elric 	* test_chain.in: test max-depth
    387  1.1     elric 
    388  1.1     elric 	* hx509.h: fixate HX509_HN_HOSTNAME at 0.
    389  1.1     elric 
    390  1.1     elric 	* hxtool-commands.in: add --hostname add --max-depth
    391  1.1     elric 
    392  1.1     elric 	* cert.c: Verify hostname and max-depth.
    393  1.1     elric 
    394  1.1     elric 	* hxtool.c: Verify hostname and test max-depth.
    395  1.1     elric 
    396  1.1     elric 2007-06-24  Love Hrnquist strand  <lha (a] it.su.se>
    397  1.1     elric 
    398  1.1     elric 	* test_cms.in: Test --id-by-name.
    399  1.1     elric 
    400  1.1     elric 	* hxtool-commands.in: add cms-create-sd --id-by-name
    401  1.1     elric 
    402  1.1     elric 	* hxtool.c: Use HX509_CMS_SIGATURE_ID_NAME.
    403  1.1     elric 
    404  1.1     elric 	* cms.c: Implement and use HX509_CMS_SIGATURE_ID_NAME.
    405  1.1     elric 
    406  1.1     elric 	* hx509.h: Add HX509_CMS_SIGATURE_ID_NAME, use subject name for
    407  1.1     elric 	CMS.Identifier.  hx509_hostname_type: add hostname type for
    408  1.1     elric 	matching.
    409  1.1     elric 
    410  1.1     elric 	* cert.c (match_general_name): more strict rfc822Name matching.
    411  1.1     elric 	(hx509_verify_hostname): add hostname type for matching.
    412  1.1     elric 
    413  1.1     elric 2007-06-19  Love Hrnquist strand  <lha (a] it.su.se>
    414  1.1     elric 
    415  1.1     elric 	* hxtool.c: Make compile again.
    416  1.1     elric 
    417  1.1     elric 	* hxtool.c: Added peap-server for to make windows peap clients
    418  1.1     elric 	happy.
    419  1.1     elric 
    420  1.1     elric 	* hxtool.c: Unify parse_oid code.
    421  1.1     elric 
    422  1.1     elric 	* hxtool.c: Implement --content-type.
    423  1.1     elric 
    424  1.1     elric 	* hxtool-commands.in: Add content-type.
    425  1.1     elric 
    426  1.1     elric 	* test_cert.in: more cert and keyset tests.
    427  1.1     elric 
    428  1.1     elric 2007-06-18  Love Hrnquist strand  <lha (a] it.su.se>
    429  1.1     elric 
    430  1.1     elric 	* revoke.c: Avoid stomping on NULL.
    431  1.1     elric 
    432  1.1     elric 	* revoke.c: Avoid reusing i.
    433  1.1     elric 
    434  1.1     elric 	* cert.c: Provide __attribute__ for _hx509_abort.
    435  1.1     elric 
    436  1.1     elric 	* ks_file.c: Fail if not finding iv.
    437  1.1     elric 
    438  1.1     elric 	* keyset.c: Avoid useing freed memory.
    439  1.1     elric 
    440  1.1     elric 	* crypto.c: Free memory in failure case.
    441  1.1     elric 
    442  1.1     elric 	* crypto.c: Free memory in failure case.
    443  1.1     elric 
    444  1.1     elric 2007-06-12  Love Hrnquist strand  <lha (a] it.su.se>
    445  1.1     elric 
    446  1.1     elric 	* *.c: Add hx509_cert_init_data and use everywhere
    447  1.1     elric 
    448  1.1     elric 	* hx_locl.h: Now that KEYCHAIN:system-anchors is fast again, use
    449  1.1     elric 	that.
    450  1.1     elric 
    451  1.1     elric 	* ks_keychain.c: Implement trust anchor support with
    452  1.1     elric 	SecTrustCopyAnchorCertificates.
    453  1.1     elric 
    454  1.1     elric 	* keyset.c: Set ref to 1 for the new object.
    455  1.1     elric 
    456  1.1     elric 	* cert.c: Fix logic for allow_default_trust_anchors
    457  1.1     elric 
    458  1.1     elric 	* keyset.c: Add refcounting to keystores.
    459  1.1     elric 
    460  1.1     elric 	* cert.c: Change logic for default trust anchors, make it be
    461  1.1     elric 	either default trust anchor, the user supplied, or non at all.
    462  1.1     elric 
    463  1.1     elric 2007-06-08  Love Hrnquist strand  <lha (a] it.su.se>
    464  1.1     elric 
    465  1.1     elric 	* Makefile.am: Add data/j.pem.
    466  1.1     elric 
    467  1.1     elric 	* Makefile.am: Add test_windows.in.
    468  1.1     elric 	
    469  1.1     elric 2007-06-06  Love Hrnquist strand  <lha (a] it.su.se>
    470  1.1     elric 
    471  1.1     elric 	* ks_keychain.c: rename functions, leaks less memory and more
    472  1.1     elric 	paranoia.
    473  1.1     elric 
    474  1.1     elric 	* test_cms.in: Test cms peer-alg.
    475  1.1     elric 
    476  1.1     elric 	* crypto.c (rsa_create_signature): make oid_id_pkcs1_rsaEncryption
    477  1.1     elric 	mean rsa-with-sha1 but oid oid_id_pkcs1_rsaEncryption in algorithm
    478  1.1     elric 	field.  XXX should probably use another algorithmIdentifier for
    479  1.1     elric 	this.
    480  1.1     elric 
    481  1.1     elric 	* peer.c: Make free function return void.
    482  1.1     elric 
    483  1.1     elric 	* cms.c (hx509_cms_create_signed_1): Use hx509_peer_info to select
    484  1.1     elric 	the signature algorithm too.
    485  1.1     elric 
    486  1.1     elric 	* hxtool-commands.in: Add cms-create-sd --peer-alg.
    487  1.1     elric 
    488  1.1     elric 	* req.c: Use _hx509_crypto_default_sig_alg.
    489  1.1     elric 
    490  1.1     elric 	* test_windows.in: Create crl, because everyone needs one.
    491  1.1     elric 
    492  1.1     elric 	* Makefile.am: add wcrl.crl
    493  1.1     elric 	
    494  1.1     elric 2007-06-05  Love Hrnquist strand  <lha (a] it.su.se>
    495  1.1     elric 
    496  1.1     elric 	* hx_locl.h: Disable KEYCHAIN for now, its slow.
    497  1.1     elric 
    498  1.1     elric 	* cms.c: When we are not using pkcs7-data, avoid seing
    499  1.1     elric 	signedAttributes since some clients get upset by that (pkcs7 based
    500  1.1     elric 	or just plain broken).
    501  1.1     elric 
    502  1.1     elric 	* ks_keychain.c: Provide rsa signatures.
    503  1.1     elric 
    504  1.1     elric 	* ks_keychain.c: Limit the searches to the selected keychain.
    505  1.1     elric 
    506  1.1     elric 	* ks_keychain.c: include -framework Security specific header files
    507  1.1     elric 	after #ifdef
    508  1.1     elric 
    509  1.1     elric 	* ks_keychain.c: Find and attach private key (does not provide
    510  1.1     elric 	operations yet though).
    511  1.1     elric 
    512  1.1     elric 	* ks_p11.c: Prefix rsa method with p11_
    513  1.1     elric 
    514  1.1     elric 	* ks_keychain.c: Allow opening a specific chain, making "system"
    515  1.1     elric 	special and be the system X509Anchors file. By not specifing any
    516  1.1     elric 	keychain ("KEYCHAIN:"), all keychains are probed.
    517  1.1     elric 	
    518  1.1     elric 2007-06-04  Love Hrnquist strand  <lha (a] it.su.se>
    519  1.1     elric 
    520  1.1     elric 	* hxtool.c (verify): Friendlier error message.
    521  1.1     elric 
    522  1.1     elric 	* cert.c: Read in and use default trust anchors if they exists.
    523  1.1     elric 
    524  1.1     elric 	* hx_locl.h: Add concept of default_trust_anchors.
    525  1.1     elric 
    526  1.1     elric 	* ks_keychain.c: Remove err(), remove extra empty comment, fix
    527  1.1     elric 	_iter function.
    528  1.1     elric 
    529  1.1     elric 	* error.c (hx509_get_error_string): if the error code is not the
    530  1.1     elric 	one we expect, punt and use the default com_err/strerror string
    531  1.1     elric 	instead.
    532  1.1     elric 
    533  1.1     elric 	* keyset.c (hx509_certs_merge): its ok to merge in the NULL set of
    534  1.1     elric 	certs.
    535  1.1     elric 
    536  1.1     elric 	* test_windows.in: Fix status string.
    537  1.1     elric 
    538  1.1     elric 	* ks_p12.c (store_func): free whole CertBag, not just the data
    539  1.1     elric 	part.
    540  1.1     elric 	
    541  1.1     elric 	* print.c: Check that the self-signed cert is really self-signed.
    542  1.1     elric 
    543  1.1     elric 	* print.c: Use selfsigned for CRL DP whine, tell if its a
    544  1.1     elric 	self-signed.
    545  1.1     elric 
    546  1.1     elric 	* print.c: Whine if its a non CA/proxy and doesn't have CRL DP.
    547  1.1     elric 
    548  1.1     elric 	* ca.c: Add cRLSign to CA certs.
    549  1.1     elric 
    550  1.1     elric 	* cert.c: Register NULL and KEYCHAIN.
    551  1.1     elric 
    552  1.1     elric 	* ks_null.c: register the NULL keystore.
    553  1.1     elric 
    554  1.1     elric 	* Makefile.am: Add ks_keychain.c and related libs.
    555  1.1     elric 
    556  1.1     elric 	* test_crypto.in: Print certificate with utf8.
    557  1.1     elric 
    558  1.1     elric 	* print.c: Leak less memory.
    559  1.1     elric 
    560  1.1     elric 	* hxtool.c: Leak less memory.
    561  1.1     elric 
    562  1.1     elric 	* print.c: Leak less memory, use functions that does same but
    563  1.1     elric 	more.
    564  1.1     elric 
    565  1.1     elric 	* name.c (quote_string): don't sign extend the (signed) char to
    566  1.1     elric 	avoid printing too much, add an assert to check that we didn't
    567  1.1     elric 	overrun the buffer.
    568  1.1     elric 
    569  1.1     elric 	* name.c: Use right element out of the CHOICE for printableString
    570  1.1     elric 	and utf8String
    571  1.1     elric 
    572  1.1     elric 	* ks_keychain.c: Certificate only KeyChain backend.
    573  1.1     elric 
    574  1.1     elric 	* name.c: Reset name before parsing it.
    575  1.1     elric 	
    576  1.1     elric 2007-06-03  Love Hrnquist strand  <lha (a] it.su.se>
    577  1.1     elric 	
    578  1.1     elric 	* revoke.c (hx509_crl_*): fix sizeof() mistakes to fix memory
    579  1.1     elric 	corruption.
    580  1.1     elric 
    581  1.1     elric 	* hxtool.c: Add lifetime to crls.
    582  1.1     elric 
    583  1.1     elric 	* hxtool-commands.in: Add lifetime to crls.
    584  1.1     elric 
    585  1.1     elric 	* revoke.c: Add lifetime to crls.
    586  1.1     elric 
    587  1.1     elric 	* test_ca.in: More crl checks.
    588  1.1     elric 
    589  1.1     elric 	* revoke.c: Add revoking certs.
    590  1.1     elric 
    591  1.1     elric 	* hxtool-commands.in: argument is certificates.. for crl-sign
    592  1.1     elric 
    593  1.1     elric 	* hxtool.c (certificate_copy): free lock
    594  1.1     elric 
    595  1.1     elric 	* revoke.c: Fix hx509_set_error_string calls, add
    596  1.1     elric 	hx509_crl_add_revoked_certs(), implement hx509_crl_{alloc,free}.
    597  1.1     elric 
    598  1.1     elric 	* hxtool.c (crl_sign): free lock
    599  1.1     elric 
    600  1.1     elric 	* cert.c (hx509_context_free): free querystat
    601  1.1     elric 	
    602  1.1     elric 2007-06-02  Love Hrnquist strand  <lha (a] it.su.se>
    603  1.1     elric 
    604  1.1     elric 	* test_chain.in: test ocsp-verify
    605  1.1     elric 	
    606  1.1     elric 	* revoke.c (hx509_ocsp_verify): explain what its useful for and
    607  1.1     elric 	provide sane error message.
    608  1.1     elric 
    609  1.1     elric 	* hx509_err.et: New error code, CERT_NOT_IN_OCSP
    610  1.1     elric 
    611  1.1     elric 	* hxtool.c: New command ocsp-verify, check if ocsp contains all
    612  1.1     elric 	certs and are valid (exist and non expired).
    613  1.1     elric 
    614  1.1     elric 	* hxtool-commands.in: New command ocsp-verify.
    615  1.1     elric 	
    616  1.1     elric 2007-06-01  Love Hrnquist strand  <lha (a] it.su.se>
    617  1.1     elric 
    618  1.1     elric 	* test_ca.in: Create crl and verify that is works.
    619  1.1     elric 
    620  1.1     elric 	* hxtool.c: Sign CRL command.
    621  1.1     elric 
    622  1.1     elric 	* hx509.h: Add hx509_crl.
    623  1.1     elric 
    624  1.1     elric 	* hxtool-commands.in: Add crl-sign commands.
    625  1.1     elric 
    626  1.1     elric 	* revoke.c: Support to generate an empty CRL.
    627  1.1     elric 
    628  1.1     elric 	* tst-crypto-select2: Switched default types.
    629  1.1     elric 
    630  1.1     elric 	* tst-crypto-select1: Switched default types.
    631  1.1     elric 
    632  1.1     elric 	* ca.c: Use default AlgorithmIdentifier.
    633  1.1     elric 
    634  1.1     elric 	* cms.c: Use default AlgorithmIdentifier.
    635  1.1     elric 
    636  1.1     elric 	* crypto.c: Provide default AlgorithmIdentifier and use them.
    637  1.1     elric 
    638  1.1     elric 	* hx_locl.h: Provide default AlgorithmIdentifier.
    639  1.1     elric 
    640  1.1     elric 	* keyset.c (hx509_certs_find): collects stats for queries.
    641  1.1     elric 
    642  1.1     elric 	* cert.c: Sort and print more info.
    643  1.1     elric 
    644  1.1     elric 	* hx_locl.h: Add querystat to hx509_context.
    645  1.1     elric 
    646  1.1     elric 	* test_*.in: sprinle stat saveing
    647  1.1     elric 
    648  1.1     elric 	* Makefile.am: Add stat and objdir.
    649  1.1     elric 
    650  1.1     elric 	* collector.c (_hx509_collector_alloc): return error code instead
    651  1.1     elric 	of pointer.
    652  1.1     elric 
    653  1.1     elric 	* hxtool.c: Add statistic hook.
    654  1.1     elric 
    655  1.1     elric 	* ks_file.c: Update _hx509_collector_alloc prototype.
    656  1.1     elric 
    657  1.1     elric 	* ks_p12.c: Update _hx509_collector_alloc prototype.
    658  1.1     elric 
    659  1.1     elric 	* ks_p11.c: Update _hx509_collector_alloc prototype.
    660  1.1     elric 
    661  1.1     elric 	* hxtool-commands.in: Add statistics hook.
    662  1.1     elric 
    663  1.1     elric 	* cert.c: Statistics printing.
    664  1.1     elric 
    665  1.1     elric 	* ks_p12.c: plug memory leak
    666  1.1     elric 
    667  1.1     elric 	* ca.c (hx509_ca_tbs_add_crl_dp_uri): plug memory leak
    668  1.1     elric 	
    669  1.1     elric 2007-05-31  Love Hrnquist strand  <lha (a] it.su.se>
    670  1.1     elric 
    671  1.1     elric 	* print.c: print utf8 type SAN's
    672  1.1     elric 
    673  1.1     elric 	* Makefile.am: Fix windows client cert name.
    674  1.1     elric 
    675  1.1     elric 	* test_windows.in: Add crl-uri for the ee certs.
    676  1.1     elric 
    677  1.1     elric 	* print.c: Printf formating.
    678  1.1     elric 
    679  1.1     elric 	* ca.c: Add glue for adding CRL dps.
    680  1.1     elric 
    681  1.1     elric 	* test_ca.in: Readd the crl adding code, it works (somewhat) now.
    682  1.1     elric 
    683  1.1     elric 	* print.c: Fix printing of CRL DPnames (I hate IMPLICIT encoded
    684  1.1     elric 	structures).
    685  1.1     elric 
    686  1.1     elric 	* hxtool-commands.in: make ca and alias of certificate-sign
    687  1.1     elric 	
    688  1.1     elric 2007-05-30  Love Hrnquist strand  <lha (a] it.su.se>
    689  1.1     elric 
    690  1.1     elric 	* crypto.c (hx509_crypto_select): copy AI to the right place.
    691  1.1     elric 
    692  1.1     elric 	* hxtool-commands.in: Add ca --ms-upn.
    693  1.1     elric 
    694  1.1     elric 	* hxtool.c: add --ms-upn and add more EKU's for pk-init client.
    695  1.1     elric 
    696  1.1     elric 	* ca.c: Add hx509_ca_tbs_add_san_ms_upn and refactor code.
    697  1.1     elric 
    698  1.1     elric 	* test_crypto.in: Resurect killed e.
    699  1.1     elric 
    700  1.1     elric 	* test_crypto.in: check for aes256-cbc
    701  1.1     elric 
    702  1.1     elric 	* tst-crypto-select7: check for aes256-cbc
    703  1.1     elric 
    704  1.1     elric 	* test_windows.in: test windows stuff
    705  1.1     elric 
    706  1.1     elric 	* hxtool.c: add ca --domain-controller option, add secret key
    707  1.1     elric 	option to avaible.
    708  1.1     elric 
    709  1.1     elric 	* ca.c: Add hx509_ca_tbs_set_domaincontroller.
    710  1.1     elric 
    711  1.1     elric 	* hxtool-commands.in: add ca --domain-controller
    712  1.1     elric 
    713  1.1     elric 	* hxtool.c: hook for testing secrety key algs
    714  1.1     elric 
    715  1.1     elric 	* crypto.c: Add selection code for secret key crypto.
    716  1.1     elric 
    717  1.1     elric 	* hx509.h: Add HX509_SELECT_SECRET_ENC.
    718  1.1     elric 	
    719  1.1     elric 2007-05-13  Love Hrnquist strand  <lha (a] it.su.se>
    720  1.1     elric 	
    721  1.1     elric 	* ks_p11.c: add more mechtypes
    722  1.1     elric 	
    723  1.1     elric 2007-05-10  Love Hrnquist strand  <lha (a] it.su.se>
    724  1.1     elric 	
    725  1.1     elric 	* print.c: Indent.
    726  1.1     elric 
    727  1.1     elric 	* hxtool-commands.in: add test-crypto command
    728  1.1     elric 
    729  1.1     elric 	* hxtool.c: test crypto command
    730  1.1     elric 
    731  1.1     elric 	* cms.c (hx509_cms_create_signed_1): if no eContentType is given,
    732  1.1     elric 	use pkcs7-data.
    733  1.1     elric 
    734  1.1     elric 	* print.c: add Netscape cert comment
    735  1.1     elric 
    736  1.1     elric 	* crypto.c: Try both the empty password and the NULL
    737  1.1     elric 	password (nothing vs the octet string \x00\x00).
    738  1.1     elric 
    739  1.1     elric 	* print.c: Add some US Fed PKI oids.
    740  1.1     elric 
    741  1.1     elric 	* ks_p11.c: Add some more hashes.
    742  1.1     elric 	
    743  1.1     elric 2007-04-24  Love Hrnquist strand  <lha (a] it.su.se>
    744  1.1     elric 
    745  1.1     elric 	* hxtool.c (crypto_select): stop memory leak
    746  1.1     elric 	
    747  1.1     elric 2007-04-19  Love Hrnquist strand  <lha (a] it.su.se>
    748  1.1     elric 
    749  1.1     elric 	* peer.c (hx509_peer_info_free): free memory used too
    750  1.1     elric 
    751  1.1     elric 	* hxtool.c (crypto_select): only free peer if it was used.
    752  1.1     elric 	
    753  1.1     elric 2007-04-18  Love Hrnquist strand  <lha (a] it.su.se>
    754  1.1     elric 
    755  1.1     elric 	* hxtool.c: free template
    756  1.1     elric 
    757  1.1     elric 	* ks_mem.c (mem_free): free key array too
    758  1.1     elric 
    759  1.1     elric 	* hxtool.c: free private key and tbs
    760  1.1     elric 
    761  1.1     elric 	* hxtool.c (hxtool_ca): free signer
    762  1.1     elric 
    763  1.1     elric 	* hxtool.c (crypto_available): free peer too.
    764  1.1     elric 
    765  1.1     elric 	* ca.c (get_AuthorityKeyIdentifier): leak less memory
    766  1.1     elric 
    767  1.1     elric 	* hxtool.c (hxtool_ca): free SPKI
    768  1.1     elric 
    769  1.1     elric 	* hxtool.c (hxtool_ca): free cert
    770  1.1     elric 
    771  1.1     elric 	* ks_mem.c (mem_getkeys): allocate one more the we have elements
    772  1.1     elric 	so its possible to store the NULL pointer at the end.
    773  1.1     elric 	
    774  1.1     elric 2007-04-16  Love Hrnquist strand  <lha (a] it.su.se>
    775  1.1     elric 	
    776  1.1     elric 	* Makefile.am: CLEANFILES += cert-null.pem cert-sub-ca2.pem
    777  1.1     elric 	
    778  1.1     elric 2007-02-05  Love Hrnquist strand  <lha (a] it.su.se>
    779  1.1     elric 	
    780  1.1     elric 	* ca.c: Disable CRLDistributionPoints for now, its IMPLICIT code
    781  1.1     elric 	in the asn1 parser.
    782  1.1     elric 
    783  1.1     elric 	* print.c: Add some more \n's.
    784  1.1     elric 	
    785  1.1     elric 2007-02-03  Love Hrnquist strand  <lha (a] it.su.se>
    786  1.1     elric 	
    787  1.1     elric 	* file.c: Allow mapping using heim_octet_string.
    788  1.1     elric 
    789  1.1     elric 	* hxtool.c: Add options to generate detached signatures.
    790  1.1     elric 
    791  1.1     elric 	* cms.c: Add flags to generate detached signatures.
    792  1.1     elric 
    793  1.1     elric 	* hx509.h: Flag to generate detached signatures.
    794  1.1     elric 
    795  1.1     elric 	* test_cms.in: Support detached sigatures.
    796  1.1     elric 
    797  1.1     elric 	* name.c (hx509_general_name_unparse): unparse the other
    798  1.1     elric 	GeneralName nametypes.
    799  1.1     elric 
    800  1.1     elric 	* print.c: Use less printf. Use hx509_general_name_unparse.
    801  1.1     elric 
    802  1.1     elric 	* cert.c: Fix printing and plug leak-on-error.
    803  1.1     elric 	
    804  1.1     elric 2007-01-31  Love Hrnquist strand  <lha (a] it.su.se>
    805  1.1     elric 	
    806  1.1     elric 	* test_ca.in: Add test for ca --crl-uri.
    807  1.1     elric 
    808  1.1     elric 	* hxtool.c: Add ca --crl-uri.
    809  1.1     elric 
    810  1.1     elric 	* hxtool-commands.in: add ca --crl-uri
    811  1.1     elric 
    812  1.1     elric 	* ca.c: Code to set CRLDistributionPoints in certificates.
    813  1.1     elric 
    814  1.1     elric 	* print.c: Check CRLDistributionPointNames.
    815  1.1     elric 
    816  1.1     elric 	* name.c (hx509_general_name_unparse): function for unparsing
    817  1.1     elric 	GeneralName, only supports GeneralName.URI
    818  1.1     elric 
    819  1.1     elric 	* cert.c (is_proxy_cert): free info if we wont return it.
    820  1.1     elric 	
    821  1.1     elric 2007-01-30  Love Hrnquist strand  <lha (a] it.su.se>
    822  1.1     elric 	
    823  1.1     elric 	* hxtool.c: Try to help how to use this command.
    824  1.1     elric 	
    825  1.1     elric 2007-01-21  Love Hrnquist strand  <lha (a] it.su.se>
    826  1.1     elric 	
    827  1.1     elric 	* switch to sha256 as default digest for signing
    828  1.1     elric 
    829  1.1     elric 2007-01-20  Love Hrnquist strand  <lha (a] it.su.se>
    830  1.1     elric 
    831  1.1     elric 	* test_ca.in: Really test sub-ca code, add basic constraints tests
    832  1.1     elric 	
    833  1.1     elric 2007-01-17  Love Hrnquist strand  <lha (a] it.su.se>
    834  1.1     elric 	
    835  1.1     elric 	* Makefile.am: Fix makefile problem.
    836  1.1     elric 	
    837  1.1     elric 2007-01-16  Love Hrnquist strand  <lha (a] it.su.se>
    838  1.1     elric 
    839  1.1     elric 	* hxtool.c: Set num of bits before we generate the key.
    840  1.1     elric 	
    841  1.1     elric 2007-01-15  Love Hrnquist strand  <lha (a] it.su.se>
    842  1.1     elric 	
    843  1.1     elric 	* cms.c (hx509_cms_create_signed_1): use hx509_cert_binary
    844  1.1     elric 
    845  1.1     elric 	* ks_p12.c (store_func): use hx509_cert_binary
    846  1.1     elric 
    847  1.1     elric 	* ks_file.c (store_func): use hx509_cert_binary
    848  1.1     elric 
    849  1.1     elric 	* cert.c (hx509_cert_binary): return binary encoded
    850  1.1     elric 	certificate (DER format)
    851  1.1     elric 	
    852  1.1     elric 2007-01-14  Love Hrnquist strand  <lha (a] it.su.se>
    853  1.1     elric 	
    854  1.1     elric 	* ca.c (hx509_ca_tbs_subject_expand): new function.
    855  1.1     elric 
    856  1.1     elric 	* name.c (hx509_name_expand): if env is NULL, return directly
    857  1.1     elric 
    858  1.1     elric 	* test_ca.in: test template handling
    859  1.1     elric 
    860  1.1     elric 	* hx509.h: Add template flags.
    861  1.1     elric 
    862  1.1     elric 	* Makefile.am: clean out new files
    863  1.1     elric 
    864  1.1     elric 	* hxtool.c: Add certificate template processing, fix hx509_err
    865  1.1     elric 	usage.
    866  1.1     elric 
    867  1.1     elric 	* hxtool-commands.in: Add certificate template processing.
    868  1.1     elric 
    869  1.1     elric 	* ca.c: Add certificate template processing. Fix return messages
    870  1.1     elric 	from hx509_ca_tbs_add_eku.
    871  1.1     elric 
    872  1.1     elric 	* cert.c: Export more stuff from certificate.
    873  1.1     elric 	
    874  1.1     elric 2007-01-13  Love Hrnquist strand  <lha (a] it.su.se>
    875  1.1     elric 
    876  1.1     elric 	* ca.c: update (c)
    877  1.1     elric 
    878  1.1     elric 	* ca.c: (hx509_ca_tbs_add_eku): filter out dups.
    879  1.1     elric 	
    880  1.1     elric 	* hxtool.c: Add type email and add email eku when using option
    881  1.1     elric 	--email.
    882  1.1     elric 
    883  1.1     elric 	* Makefile.am: add env.c
    884  1.1     elric 
    885  1.1     elric 	* name.c: Remove abort, add error handling.
    886  1.1     elric 
    887  1.1     elric 	* test_name.c: test name expansion
    888  1.1     elric 
    889  1.1     elric 	* name.c: add hx509_name_expand
    890  1.1     elric 
    891  1.1     elric 	* env.c: key-value pair help functions
    892  1.1     elric 	
    893  1.1     elric 2007-01-12  Love Hrnquist strand  <lha (a] it.su.se>
    894  1.1     elric 	
    895  1.1     elric 	* ca.c: Don't issue certs with subject DN that is NULL and have no
    896  1.1     elric 	SANs
    897  1.1     elric 
    898  1.1     elric 	* print.c: Fix previous test.
    899  1.1     elric 
    900  1.1     elric 	* print.c: Check there is a SAN if subject DN is NULL.
    901  1.1     elric 
    902  1.1     elric 	* test_ca.in: test email, null subject dn
    903  1.1     elric 
    904  1.1     elric 	* hxtool.c: Allow setting parameters to private key generation.
    905  1.1     elric 
    906  1.1     elric 	* hx_locl.h: Allow setting parameters to private key generation.
    907  1.1     elric 
    908  1.1     elric 	* crypto.c: Allow setting parameters to private key generation.
    909  1.1     elric 
    910  1.1     elric 	* hxtool.c (eval_types): add jid if user gave one
    911  1.1     elric 
    912  1.1     elric 	* hxtool-commands.in (certificate-sign): add --jid
    913  1.1     elric 
    914  1.1     elric 	* ca.c (hx509_ca_tbs_add_san_jid): Allow adding
    915  1.1     elric 	id-pkix-on-xmppAddr OtherName.
    916  1.1     elric 
    917  1.1     elric 	* print.c: Print id-pkix-on-xmppAddr OtherName.
    918  1.1     elric 	
    919  1.1     elric 2007-01-11  Love Hrnquist strand  <lha (a] it.su.se>
    920  1.1     elric 	
    921  1.1     elric 	* no random, no RSA/DH tests
    922  1.1     elric 
    923  1.1     elric 	* hxtool.c (info): print status of random generator
    924  1.1     elric 
    925  1.1     elric 	* Makefile.am: remove files created by tests
    926  1.1     elric 
    927  1.1     elric 	* error.c: constify
    928  1.1     elric 
    929  1.1     elric 	* name.c: constify
    930  1.1     elric 
    931  1.1     elric 	* revoke.c: constify
    932  1.1     elric 
    933  1.1     elric 	* hx_locl.h: constify
    934  1.1     elric 
    935  1.1     elric 	* keyset.c: constify
    936  1.1     elric 
    937  1.1     elric 	* ks_p11.c: constify
    938  1.1     elric 
    939  1.1     elric 	* hx_locl.h: make printinfo char * argument const.
    940  1.1     elric 
    941  1.1     elric 	* cms.c: move _hx509_set_digest_alg from cms.c to crypto.c since
    942  1.1     elric 	its only used there.
    943  1.1     elric 
    944  1.1     elric 	* crypto.c: remove no longer used stuff, move set_digest_alg here
    945  1.1     elric 	from cms.c since its only used here.
    946  1.1     elric 
    947  1.1     elric 	* Makefile.am: add data/test-nopw.p12 to EXTRA_DIST
    948  1.1     elric 	
    949  1.1     elric 2007-01-10  Love Hrnquist strand  <lha (a] it.su.se>
    950  1.1     elric 	
    951  1.1     elric 	* print.c: BasicConstraints vs criticality bit is complicated and
    952  1.1     elric 	not really possible to evaluate on its own, silly RFC3280.
    953  1.1     elric 
    954  1.1     elric 	* ca.c: Make basicConstraints critical if this is a CA.
    955  1.1     elric 
    956  1.1     elric 	* print.c: fix the version vs extension test
    957  1.1     elric 
    958  1.1     elric 	* print.c: More validation checks.
    959  1.1     elric 
    960  1.1     elric 	* name.c (hx509_name_cmp): add
    961  1.1     elric 	
    962  1.1     elric 2007-01-09  Love Hrnquist strand  <lha (a] it.su.se>
    963  1.1     elric 
    964  1.1     elric 	* ks_p11.c (collect_private_key): Missing CKA_MODULUS is ok
    965  1.1     elric 	too (XXX why should these be fetched given they are not used).
    966  1.1     elric 
    967  1.1     elric 	* test_ca.in: rename all files to PEM files, since that is what
    968  1.1     elric 	they are.
    969  1.1     elric 
    970  1.1     elric 	* hxtool.c: copy out the key with the self signed CA cert
    971  1.1     elric 
    972  1.1     elric 	* Factor out private key operation out of the signing, operations,
    973  1.1     elric 	support import, export, and generation of private keys. Add
    974  1.1     elric 	support for writing PEM and PKCS12 files with private keys in them.
    975  1.1     elric  
    976  1.1     elric 	* data/gen-req.sh: Generate a no password pkcs12 file.
    977  1.1     elric 	
    978  1.1     elric 2007-01-08  Love Hrnquist strand  <lha (a] it.su.se>
    979  1.1     elric 
    980  1.1     elric 	* cms.c: Check for internal ASN1 encoder error.
    981  1.1     elric 	
    982  1.1     elric 2007-01-05  Love Hrnquist strand  <lha (a] it.su.se>
    983  1.1     elric 	
    984  1.1     elric 	* Makefile.am: Drop most of the pkcs11 files.
    985  1.1     elric 
    986  1.1     elric 	* test_ca.in: test reissueing ca certificate (xxx time
    987  1.1     elric 	validAfter).
    988  1.1     elric 
    989  1.1     elric 	* hxtool.c: Allow setting serialNumber (needed for reissuing
    990  1.1     elric 	certificates) Change --key argument to --out-key.
    991  1.1     elric 
    992  1.1     elric 	* hxtool-commands.in (issue-certificate): Allow setting
    993  1.1     elric 	serialNumber (needed for reissuing certificates), Change --key
    994  1.1     elric 	argument to --out-key.
    995  1.1     elric 
    996  1.1     elric 	* ref: Replace with Marcus Brinkmann of g10 Code GmbH pkcs11
    997  1.1     elric 	headerfile that is compatible with GPL (file taken from scute)
    998  1.1     elric 
    999  1.1     elric 2007-01-04  Love Hrnquist strand  <lha (a] it.su.se>
   1000  1.1     elric 
   1001  1.1     elric 	* test_ca.in: Test to generate key and use them.
   1002  1.1     elric 
   1003  1.1     elric 	* hxtool.c: handle other keys the pkcs10 requested keys
   1004  1.1     elric 
   1005  1.1     elric 	* hxtool-commands.in: add generate key commands
   1006  1.1     elric 
   1007  1.1     elric 	* req.c (_hx509_request_to_pkcs10): PKCS10 needs to have a subject
   1008  1.1     elric 
   1009  1.1     elric 	* hxtool-commands.in: Spelling.
   1010  1.1     elric 
   1011  1.1     elric 	* ca.c (hx509_ca_tbs_set_proxy): allow negative pathLenConstraint
   1012  1.1     elric 	to signal no limit
   1013  1.1     elric 
   1014  1.1     elric 	* ks_file.c: Try all formats on the binary file before giving up,
   1015  1.1     elric 	this way we can handle binary rsa keys too.
   1016  1.1     elric 
   1017  1.1     elric 	* data/key2.der: new test key
   1018  1.1     elric 
   1019  1.1     elric 2007-01-04  David Love  <fx (a] gnu.org>
   1020  1.1     elric 
   1021  1.1     elric 	* Makefile.am (hxtool_LDADD): Add libasn1.la
   1022  1.1     elric 
   1023  1.1     elric 	* hxtool.c (pcert_verify): Fix format string.
   1024  1.1     elric 
   1025  1.1     elric 2006-12-31  Love Hrnquist strand  <lha (a] it.su.se>
   1026  1.1     elric 
   1027  1.1     elric 	* hxtool.c: Allow setting path length
   1028  1.1     elric 
   1029  1.1     elric 	* cert.c: Fix test for proxy certs chain length, it was too
   1030  1.1     elric 	restrictive.
   1031  1.1     elric 	
   1032  1.1     elric 	* data: regen
   1033  1.1     elric 	
   1034  1.1     elric 	* data/openssl.cnf: (proxy_cert) make length 0
   1035  1.1     elric 
   1036  1.1     elric 	* test_ca.in: Issue a long living cert.
   1037  1.1     elric 
   1038  1.1     elric 	* hxtool.c: add --lifetime to ca command.
   1039  1.1     elric 
   1040  1.1     elric 	* hxtool-commands.in: add --lifetime to ca command.
   1041  1.1     elric 
   1042  1.1     elric 	* ca.c: allow setting notBefore and notAfter.
   1043  1.1     elric 
   1044  1.1     elric 	* test_ca.in: Test generation of proxy certificates.
   1045  1.1     elric 
   1046  1.1     elric 	* ca.c: Allow generation of proxy certificates, always include
   1047  1.1     elric 	BasicConstraints, fix error codes.
   1048  1.1     elric 
   1049  1.1     elric 	* hxtool.c: Allow generation of proxy certificates.
   1050  1.1     elric 
   1051  1.1     elric 	* test_name.c: make hx509_parse_name take a hx509_context.
   1052  1.1     elric 
   1053  1.1     elric 	* name.c: Split building RDN to a separate function.
   1054  1.1     elric 	
   1055  1.1     elric 2006-12-30  Love Hrnquist strand  <lha (a] it.su.se>
   1056  1.1     elric 	
   1057  1.1     elric 	* Makefile.am: clean test_ca files.
   1058  1.1     elric 
   1059  1.1     elric 	* test_ca.in: test issuing self-signed and CA certificates.
   1060  1.1     elric 
   1061  1.1     elric 	* hxtool.c: Add bits to allow issuing self-signed and CA
   1062  1.1     elric 	certificates.
   1063  1.1     elric 
   1064  1.1     elric 	* hxtool-commands.in: Add bits to allow issuing self-signed and CA
   1065  1.1     elric 	certificates.
   1066  1.1     elric 
   1067  1.1     elric 	* ca.c: Add bits to allow issuing CA certificates.
   1068  1.1     elric 
   1069  1.1     elric 	* revoke.c: use new OCSPSigning.
   1070  1.1     elric 
   1071  1.1     elric 	* ca.c: Add Subject Key Identifier.
   1072  1.1     elric 
   1073  1.1     elric 	* ca.c: Add Authority Key Identifier.
   1074  1.1     elric 	
   1075  1.1     elric 	* cert.c: Locally export _hx509_find_extension_subject_key_id.
   1076  1.1     elric 	Handle AuthorityKeyIdentifier where only authorityCertSerialNumber
   1077  1.1     elric 	and authorityCertSerialNumber is set.
   1078  1.1     elric 
   1079  1.1     elric 	* hxtool-commands.in: Add dnsname and rfc822 SANs.
   1080  1.1     elric 
   1081  1.1     elric 	* test_ca.in: Test dnsname and rfc822 SANs.
   1082  1.1     elric 
   1083  1.1     elric 	* ca.c: Add dnsname and rfc822 SANs.
   1084  1.1     elric 
   1085  1.1     elric 	* hxtool.c: Add dnsname and rfc822 SANs.
   1086  1.1     elric 
   1087  1.1     elric 	* test_ca.in: test adding eku, ku and san to the
   1088  1.1     elric 	certificate (https and pk-init)
   1089  1.1     elric 
   1090  1.1     elric 	* hxtool.c: Add eku, ku and san to the certificate.
   1091  1.1     elric 
   1092  1.1     elric 	* ca.c: Add eku, ku and san to the certificate.
   1093  1.1     elric 
   1094  1.1     elric 	* hxtool-commands.in: Add --type and --pk-init-principal
   1095  1.1     elric 
   1096  1.1     elric 	* ocsp.asn1: remove id-kp-OCSPSigning, its in rfc2459.asn1 now
   1097  1.1     elric 	
   1098  1.1     elric 2006-12-29  Love Hrnquist strand  <lha (a] it.su.se>
   1099  1.1     elric 
   1100  1.1     elric 	* ca.c: Add KeyUsage extension.
   1101  1.1     elric 
   1102  1.1     elric 	* Makefile.am: add ca.c, add sign-certificate tests.
   1103  1.1     elric 
   1104  1.1     elric 	* crypto.c: Add _hx509_create_signature_bitstring.
   1105  1.1     elric 
   1106  1.1     elric 	* hxtool-commands.in: Add the sign-certificate tool.
   1107  1.1     elric 
   1108  1.1     elric 	* hxtool.c: Add the sign-certificate tool.
   1109  1.1     elric 
   1110  1.1     elric 	* cert.c: Add HX509_QUERY_OPTION_KU_KEYCERTSIGN.
   1111  1.1     elric 
   1112  1.1     elric 	* hx509.h: Add hx509_ca_tbs and HX509_QUERY_OPTION_KU_KEYCERTSIGN.
   1113  1.1     elric 
   1114  1.1     elric 	* test_ca.in: Basic test of generating a pkcs10 request, signing
   1115  1.1     elric 	it and verifying the chain.
   1116  1.1     elric 
   1117  1.1     elric 	* ca.c: Naive certificate signer.
   1118  1.1     elric 	
   1119  1.1     elric 2006-12-28  Love Hrnquist strand  <lha (a] it.su.se>
   1120  1.1     elric 	
   1121  1.1     elric 	* hxtool.c: add hxtool_hex
   1122  1.1     elric 	
   1123  1.1     elric 2006-12-22  Love Hrnquist strand  <lha (a] it.su.se>
   1124  1.1     elric 	
   1125  1.1     elric 	* Makefile.am: use top_builddir for libasn1.la
   1126  1.1     elric 	
   1127  1.1     elric 2006-12-11  Love Hrnquist strand  <lha (a] it.su.se>
   1128  1.1     elric 	
   1129  1.1     elric 	* hxtool.c (print_certificate): print serial number.
   1130  1.1     elric 
   1131  1.1     elric 	* name.c (no): add S=stateOrProvinceName
   1132  1.1     elric 	
   1133  1.1     elric 2006-12-09  Love Hrnquist strand  <lha (a] it.su.se>
   1134  1.1     elric 	
   1135  1.1     elric 	* crypto.c (_hx509_private_key_assign_rsa): set a default sig alg
   1136  1.1     elric 
   1137  1.1     elric 	* ks_file.c (try_decrypt): pass down AlgorithmIdentifier that key
   1138  1.1     elric 	uses to do sigatures so there is no need to hardcode RSA into this
   1139  1.1     elric 	function.
   1140  1.1     elric 	
   1141  1.1     elric 2006-12-08  Love Hrnquist strand  <lha (a] it.su.se>
   1142  1.1     elric 
   1143  1.1     elric 	* ks_file.c: Pass filename to the parse functions and use it in
   1144  1.1     elric 	the error messages
   1145  1.1     elric 
   1146  1.1     elric 	* test_chain.in: test proxy cert (third level)
   1147  1.1     elric 	
   1148  1.1     elric 	* hx509_err.et: fix errorstring for PROXY_CERT_NAME_WRONG
   1149  1.1     elric 
   1150  1.1     elric 	* data: regen
   1151  1.1     elric 
   1152  1.1     elric 	* Makefile.am: EXTRA_DIST: add
   1153  1.1     elric 	data/proxy10-child-child-test.{key,crt}
   1154  1.1     elric 
   1155  1.1     elric 	* data/gen-req.sh: Fix names and restrictions on the proxy
   1156  1.1     elric 	certificates
   1157  1.1     elric 
   1158  1.1     elric 	* cert.c: Clairfy and make proxy cert handling work for multiple
   1159  1.1     elric 	levels, before it was too restrictive. More helpful error message.
   1160  1.1     elric 	
   1161  1.1     elric 2006-12-07  Love Hrnquist strand  <lha (a] it.su.se>
   1162  1.1     elric 	
   1163  1.1     elric 	* cert.c (check_key_usage): tell what keyusages are missing
   1164  1.1     elric 
   1165  1.1     elric 	* print.c: Split OtherName printing code to a oid lookup and print
   1166  1.1     elric 	function.
   1167  1.1     elric 
   1168  1.1     elric 	* print.c (Time2string): print hour as hour not min
   1169  1.1     elric 
   1170  1.1     elric 	* Makefile.am: CLEANFILES += test
   1171  1.1     elric 	
   1172  1.1     elric 2006-12-06  Love Hrnquist strand  <lha (a] it.su.se>
   1173  1.1     elric 
   1174  1.1     elric 	* Makefile.am (EXTRA_DIST): add data/pkinit-proxy* files
   1175  1.1     elric 
   1176  1.1     elric 	* Makefile.am (EXTRA_DIST): add tst-crypto* files
   1177  1.1     elric 
   1178  1.1     elric 	* cert.c (hx509_query_match_issuer_serial): make a copy of the
   1179  1.1     elric 	data
   1180  1.1     elric 
   1181  1.1     elric 	* cert.c (hx509_query_match_issuer_serial): allow matching on
   1182  1.1     elric 	issuer and serial num
   1183  1.1     elric 
   1184  1.1     elric 	* cert.c (_hx509_calculate_path): add flag to allow leaving out
   1185  1.1     elric 	trust anchor
   1186  1.1     elric 
   1187  1.1     elric 	* cms.c (hx509_cms_create_signed_1): when building the path, omit
   1188  1.1     elric 	the trust anchors.
   1189  1.1     elric 
   1190  1.1     elric 	* crypto.c (rsa_create_signature): Abort when signature is longer,
   1191  1.1     elric 	not shorter.
   1192  1.1     elric 
   1193  1.1     elric 	* cms.c: Provide time to _hx509_calculate_path so we don't send no
   1194  1.1     elric 	longer valid certs to our peer.
   1195  1.1     elric 
   1196  1.1     elric 	* cert.c (find_parent): when checking for certs and its not a
   1197  1.1     elric 	trust anchor, require time be in range.
   1198  1.1     elric 	(_hx509_query_match_cert): Add time validity-testing to query mask
   1199  1.1     elric 
   1200  1.1     elric 	* hx_locl.h: add time validity-testing to query mask
   1201  1.1     elric 
   1202  1.1     elric 	* test_cms.in: Tests for CMS SignedData with incomplete chain from
   1203  1.1     elric 	the signer.
   1204  1.1     elric 	
   1205  1.1     elric 2006-11-28  Love Hrnquist strand  <lha (a] it.su.se>
   1206  1.1     elric 
   1207  1.1     elric 	* cms.c (hx509_cms_verify_signed): specify what signature we
   1208  1.1     elric 	failed to verify
   1209  1.1     elric 	
   1210  1.1     elric 	* Makefile.am: Depend on LIB_com_err for AIX.
   1211  1.1     elric 
   1212  1.1     elric 	* keyset.c: Remove anther strndup that causes AIX to fall over.
   1213  1.1     elric 
   1214  1.1     elric 	* cert.c: Don't check the trust anchors expiration time since they
   1215  1.1     elric 	are transported out of band, from RFC3820.
   1216  1.1     elric 
   1217  1.1     elric 	* cms.c: sprinkle more error strings
   1218  1.1     elric 
   1219  1.1     elric 	* crypto.c: sprinkle more error strings
   1220  1.1     elric 
   1221  1.1     elric 	* hxtool.c: use unsigned int as counter to fit better with the
   1222  1.1     elric 	asn1 compiler
   1223  1.1     elric 
   1224  1.1     elric 	* crypto.c: use unsigned int as counter to fit better with the
   1225  1.1     elric 	asn1 compiler
   1226  1.1     elric 	
   1227  1.1     elric 2006-11-27  Love Hrnquist strand  <lha (a] it.su.se>
   1228  1.1     elric 	
   1229  1.1     elric 	* cms.c: Remove trailing white space.
   1230  1.1     elric 
   1231  1.1     elric 	* crypto.c: rewrite comment to make more sense
   1232  1.1     elric 
   1233  1.1     elric 	* crypto.c (hx509_crypto_select): check sig_algs[j]->key_oid
   1234  1.1     elric 
   1235  1.1     elric 	* hxtool-commands.in (crypto-available): add --type
   1236  1.1     elric 
   1237  1.1     elric 	* crypto.c (hx509_crypto_available): let alg pass if its keyless
   1238  1.1     elric 
   1239  1.1     elric 	* hxtool-commands.in: Expand crypto-select
   1240  1.1     elric 
   1241  1.1     elric 	* cms.c: Rename hx509_select to hx509_crypto_select.
   1242  1.1     elric 
   1243  1.1     elric 	* hxtool-commands.in: Add crypto-select and crypto-available.
   1244  1.1     elric 
   1245  1.1     elric 	* hxtool.c: Add crypto-select and crypto-available.
   1246  1.1     elric 
   1247  1.1     elric 	* crypto.c (hx509_crypto_available): use right index.
   1248  1.1     elric 	(hx509_crypto_free_algs): new function
   1249  1.1     elric 
   1250  1.1     elric 	* crypto.c (hx509_crypto_select): improve
   1251  1.1     elric 	(hx509_crypto_available): new function
   1252  1.1     elric 	
   1253  1.1     elric 2006-11-26  Love Hrnquist strand  <lha (a] it.su.se>
   1254  1.1     elric 	
   1255  1.1     elric 	* cert.c: Sprinkle more error string and hx509_contexts.
   1256  1.1     elric 
   1257  1.1     elric 	* cms.c: Sprinkle more error strings.
   1258  1.1     elric 
   1259  1.1     elric 	* crypto.c: Sprinkle error string and hx509_contexts.
   1260  1.1     elric 
   1261  1.1     elric 	* crypto.c: Add some more comments about how this works.
   1262  1.1     elric 
   1263  1.1     elric 	* crypto.c (hx509_select): new function.
   1264  1.1     elric 	
   1265  1.1     elric 	* Makefile.am: add peer.c
   1266  1.1     elric 
   1267  1.1     elric 	* hxtool.c: Update hx509_cms_create_signed_1.
   1268  1.1     elric 
   1269  1.1     elric 	* hx_locl.h: add struct hx509_peer_info
   1270  1.1     elric 
   1271  1.1     elric 	* peer.c: Allow selection of digest/sig-alg
   1272  1.1     elric 
   1273  1.1     elric 	* cms.c: Allow selection of a better digest using hx509_peer_info.
   1274  1.1     elric 
   1275  1.1     elric 	* revoke.c: Handle that _hx509_verify_signature takes a context.
   1276  1.1     elric 	
   1277  1.1     elric 	* cert.c: Handle that _hx509_verify_signature takes a context.
   1278  1.1     elric 	
   1279  1.1     elric 2006-11-25  Love Hrnquist strand  <lha (a] it.su.se>
   1280  1.1     elric 
   1281  1.1     elric 	* cms.c: Sprinkle error strings.
   1282  1.1     elric 
   1283  1.1     elric 	* crypto.c: Sprinkle context and error strings.
   1284  1.1     elric 	
   1285  1.1     elric 2006-11-24  Love Hrnquist strand  <lha (a] it.su.se>
   1286  1.1     elric 
   1287  1.1     elric 	* name.c: Handle printing and parsing raw oids in name.
   1288  1.1     elric 
   1289  1.1     elric 2006-11-23  Love Hrnquist strand  <lha (a] it.su.se>
   1290  1.1     elric 
   1291  1.1     elric 	* cert.c (_hx509_calculate_path): allow to calculate optimistic
   1292  1.1     elric 	path when we don't know the trust anchors, just follow the chain
   1293  1.1     elric 	upward until we no longer find a parent or we hit the max limit.
   1294  1.1     elric 
   1295  1.1     elric 	* cms.c (hx509_cms_create_signed_1): provide a best effort path to
   1296  1.1     elric 	the trust anchors to be stored in the SignedData packet, if find
   1297  1.1     elric 	parents until trust anchor or max length.
   1298  1.1     elric 
   1299  1.1     elric 	* data: regen
   1300  1.1     elric 
   1301  1.1     elric 	* data/gen-req.sh: Build pk-init proxy cert.
   1302  1.1     elric 	
   1303  1.1     elric 2006-11-16  Love Hrnquist strand  <lha (a] it.su.se>
   1304  1.1     elric 	
   1305  1.1     elric 	* error.c (hx509_get_error_string): Put ", " between strings in
   1306  1.1     elric 	error message.
   1307  1.1     elric 	
   1308  1.1     elric 2006-11-13  Love Hrnquist strand  <lha (a] it.su.se>
   1309  1.1     elric 
   1310  1.1     elric 	* data/openssl.cnf: Change realm to TEST.H5L.SE
   1311  1.1     elric 	
   1312  1.1     elric 2006-11-07  Love Hrnquist strand  <lha (a] it.su.se>
   1313  1.1     elric 
   1314  1.1     elric 	* revoke.c: Sprinkle error strings.
   1315  1.1     elric 	
   1316  1.1     elric 2006-11-04  Love Hrnquist strand  <lha (a] it.su.se>
   1317  1.1     elric 	
   1318  1.1     elric 	* hx_locl.h: add context variable to cmp function.
   1319  1.1     elric 
   1320  1.1     elric 	* cert.c (hx509_query_match_cmp_func): allow setting the match
   1321  1.1     elric 	function.
   1322  1.1     elric 	
   1323  1.1     elric 2006-10-24  Love Hrnquist strand  <lha (a] it.su.se>
   1324  1.1     elric 
   1325  1.1     elric 	* ks_p11.c: Return less EINVAL.
   1326  1.1     elric 
   1327  1.1     elric 	* hx509_err.et: add more pkcs11 errors
   1328  1.1     elric 
   1329  1.1     elric 	* hx509_err.et: more error-codes
   1330  1.1     elric 
   1331  1.1     elric 	* revoke.c: Return less EINVAL.
   1332  1.1     elric 
   1333  1.1     elric 	* ks_dir.c: sprinkel more hx509_set_error_string
   1334  1.1     elric 
   1335  1.1     elric 	* ks_file.c: Return less EINVAL.
   1336  1.1     elric 
   1337  1.1     elric 	* hxtool.c: Pass in context to _hx509_parse_private_key.
   1338  1.1     elric 
   1339  1.1     elric 	* ks_file.c: Sprinkle more hx509_context so we can return propper
   1340  1.1     elric 	errors.
   1341  1.1     elric 
   1342  1.1     elric 	* hx509_err.et: add HX509_PARSING_KEY_FAILED
   1343  1.1     elric 
   1344  1.1     elric 	* crypto.c: Sprinkle more hx509_context so we can return propper
   1345  1.1     elric 	errors.
   1346  1.1     elric 
   1347  1.1     elric 	* collector.c: No more EINVAL.
   1348  1.1     elric 
   1349  1.1     elric 	* hx509_err.et: add HX509_LOCAL_ATTRIBUTE_MISSING
   1350  1.1     elric 
   1351  1.1     elric 	* cert.c (hx509_cert_get_base_subject): one less EINVAL
   1352  1.1     elric 	(_hx509_cert_private_decrypt): one less EINVAL
   1353  1.1     elric 	
   1354  1.1     elric 2006-10-22  Love Hrnquist strand  <lha (a] it.su.se>
   1355  1.1     elric 
   1356  1.1     elric 	* collector.c: indent
   1357  1.1     elric 
   1358  1.1     elric 	* hxtool.c: Try to not leak memory.
   1359  1.1     elric 
   1360  1.1     elric 	* req.c: clean memory before free
   1361  1.1     elric 
   1362  1.1     elric 	* crypto.c (_hx509_private_key2SPKI): indent
   1363  1.1     elric 
   1364  1.1     elric 	* req.c: Try to not leak memory.
   1365  1.1     elric 	
   1366  1.1     elric 2006-10-21  Love Hrnquist strand  <lha (a] it.su.se>
   1367  1.1     elric 
   1368  1.1     elric 	* test_crypto.in: Read 50 kilobyte random data
   1369  1.1     elric 	
   1370  1.1     elric 	* revoke.c: Try to not leak memory.
   1371  1.1     elric 
   1372  1.1     elric 	* hxtool.c: Try to not leak memory.
   1373  1.1     elric 
   1374  1.1     elric 	* crypto.c (hx509_crypto_destroy): free oid.
   1375  1.1     elric 
   1376  1.1     elric 	* error.c: Clean error string on failure just to make sure.
   1377  1.1     elric 
   1378  1.1     elric 	* cms.c: Try to not leak memory (again).
   1379  1.1     elric 
   1380  1.1     elric 	* hxtool.c: use a sensable content type
   1381  1.1     elric 
   1382  1.1     elric 	* cms.c: Try harder to free certificate.
   1383  1.1     elric 	
   1384  1.1     elric 2006-10-20  Love Hrnquist strand  <lha (a] it.su.se>
   1385  1.1     elric 
   1386  1.1     elric 	* Makefile.am: Add make check data.
   1387  1.1     elric 	
   1388  1.1     elric 2006-10-19  Love Hrnquist strand  <lha (a] it.su.se>
   1389  1.1     elric 	
   1390  1.1     elric 	* ks_p11.c (p11_list_keys): make element of search_data[0]
   1391  1.1     elric 	constants and set them later
   1392  1.1     elric 
   1393  1.1     elric 	* Makefile.am: Add more files.
   1394  1.1     elric 	
   1395  1.1     elric 2006-10-17  Love Hrnquist strand  <lha (a] it.su.se>
   1396  1.1     elric 	
   1397  1.1     elric 	* ks_file.c: set ret, remember to free ivdata
   1398  1.1     elric 	
   1399  1.1     elric 2006-10-16  Love Hrnquist strand  <lha (a] it.su.se>
   1400  1.1     elric 
   1401  1.1     elric 	* hx_locl.h: Include <parse_bytes.h>.
   1402  1.1     elric 
   1403  1.1     elric 	* test_crypto.in: Test random-data.
   1404  1.1     elric 
   1405  1.1     elric 	* hxtool.c: RAND_bytes() return 1 for cryptographic strong data,
   1406  1.1     elric 	check for that.
   1407  1.1     elric 
   1408  1.1     elric 	* Makefile.am: clean random-data
   1409  1.1     elric 
   1410  1.1     elric 	* hxtool.c: Add random-data command, use sl_slc_help.
   1411  1.1     elric 
   1412  1.1     elric 	* hxtool-commands.in: Add random-data.
   1413  1.1     elric 
   1414  1.1     elric 	* ks_p12.c: Remember to release certs.
   1415  1.1     elric 
   1416  1.1     elric 	* ks_p11.c: Remember to release certs.
   1417  1.1     elric 	
   1418  1.1     elric 2006-10-14  Love Hrnquist strand  <lha (a] it.su.se>
   1419  1.1     elric 	
   1420  1.1     elric 	* prefix der primitives with der_
   1421  1.1     elric 
   1422  1.1     elric 	* lock.c: Match the prompt type PROMPT exact.
   1423  1.1     elric 
   1424  1.1     elric 	* hx_locl.h: Drop heim_any.h
   1425  1.1     elric 	
   1426  1.1     elric 2006-10-11  Love Hrnquist strand  <lha (a] it.su.se>
   1427  1.1     elric 	
   1428  1.1     elric 	* ks_p11.c (p11_release_module): j needs to be used as inter loop
   1429  1.1     elric 	index. From Douglas Engert.
   1430  1.1     elric 
   1431  1.1     elric 	* ks_file.c (parse_rsa_private_key): try all passwords and
   1432  1.1     elric 	prompter.
   1433  1.1     elric 	
   1434  1.1     elric 2006-10-10  Love Hrnquist strand  <lha (a] it.su.se>
   1435  1.1     elric 	
   1436  1.1     elric 	* test_*.in: Parameterise the invocation of hxtool, so we can make
   1437  1.1     elric 	it run under TESTS_ENVIRONMENT. From Andrew Bartlett
   1438  1.1     elric 
   1439  1.1     elric 2006-10-08  Love Hrnquist strand  <lha (a] it.su.se>
   1440  1.1     elric 
   1441  1.1     elric 	* test_crypto.in: Put all test stuck at 2006-09-25 since all their
   1442  1.1     elric 	chains where valied then.
   1443  1.1     elric 
   1444  1.1     elric 	* hxtool.c: Implement --time= option.
   1445  1.1     elric 
   1446  1.1     elric 	* hxtool-commands.in: Add option time.
   1447  1.1     elric 
   1448  1.1     elric 	* Makefile.am: test_name is a PROGRAM_TESTS
   1449  1.1     elric 
   1450  1.1     elric 	* ks_p11.c: Return HX509_PKCS11_NO_SLOT when there are no slots
   1451  1.1     elric 	and HX509_PKCS11_NO_TOKEN when there are no token. For use in PAM
   1452  1.1     elric 	modules that want to detect when to use smartcard login and when
   1453  1.1     elric 	not to. Patched based on code from Douglas Engert.
   1454  1.1     elric 
   1455  1.1     elric 	* hx509_err.et: Add new pkcs11 related errors in a new section:
   1456  1.1     elric 	keystore related error.  Patched based on code from Douglas
   1457  1.1     elric 	Engert.
   1458  1.1     elric 	
   1459  1.1     elric 2006-10-07  Love Hrnquist strand  <lha (a] it.su.se>
   1460  1.1     elric 
   1461  1.1     elric 	* Makefile.am: Make depenency for slc built files just like
   1462  1.1     elric 	everywhere else.
   1463  1.1     elric 
   1464  1.1     elric 	* cert.c: Add all openssl algs and init asn1 et
   1465  1.1     elric 	
   1466  1.1     elric 2006-10-06  Love Hrnquist strand  <lha (a] it.su.se>
   1467  1.1     elric 
   1468  1.1     elric 	* ks_file.c (parse_rsa_private_key): free type earlier.
   1469  1.1     elric 
   1470  1.1     elric 	* ks_file.c (parse_rsa_private_key): free type after use
   1471  1.1     elric 
   1472  1.1     elric 	* name.c (_hx509_Name_to_string): remove dup const
   1473  1.1     elric 	
   1474  1.1     elric 2006-10-02  Love Hrnquist strand  <lha (a] it.su.se>
   1475  1.1     elric 	
   1476  1.1     elric 	* Makefile.am: Add more libs to libhx509
   1477  1.1     elric 	
   1478  1.1     elric 2006-10-01  Love Hrnquist strand  <lha (a] it.su.se>
   1479  1.1     elric 
   1480  1.1     elric 	* ks_p11.c: Fix double free's, NULL ptr de-reference, and conform
   1481  1.1     elric 	better to pkcs11.  From Douglas Engert.
   1482  1.1     elric 
   1483  1.1     elric 	* ref: remove ^M, it breaks solaris 10s cc. From Harald Barth
   1484  1.1     elric 
   1485  1.1     elric 2006-09-19  Love Hrnquist strand  <lha (a] it.su.se>
   1486  1.1     elric 
   1487  1.1     elric 	* test_crypto.in: Bleichenbacher bad cert from Ralf-Philipp
   1488  1.1     elric 	Weinmann and Andrew Pyshkin, pad right.
   1489  1.1     elric 
   1490  1.1     elric 	* data: starfield test root cert and Ralf-Philipp and Andreis
   1491  1.1     elric 	correctly padded bad cert
   1492  1.1     elric 
   1493  1.1     elric 2006-09-15  Love Hrnquist strand  <lha (a] it.su.se>
   1494  1.1     elric 
   1495  1.1     elric 	* test_crypto.in: Add test for yutaka certs.
   1496  1.1     elric 
   1497  1.1     elric 	* cert.c: Add a strict rfc3280 verification flag. rfc3280 requires
   1498  1.1     elric 	certificates to have KeyUsage.keyCertSign if they are to be used
   1499  1.1     elric 	for signing of certificates, but the step in the verifiation is
   1500  1.1     elric 	optional.
   1501  1.1     elric 
   1502  1.1     elric 	* hxtool.c: Improve printing and error reporting.
   1503  1.1     elric 	
   1504  1.1     elric 2006-09-13  Love Hrnquist strand  <lha (a] it.su.se>
   1505  1.1     elric 
   1506  1.1     elric 	* test_crypto.in,Makefile.am,data/bleichenbacher-{bad,good}.pem:
   1507  1.1     elric 	test bleichenbacher from eay
   1508  1.1     elric 
   1509  1.1     elric 2006-09-12  Love Hrnquist strand  <lha (a] it.su.se>
   1510  1.1     elric 
   1511  1.1     elric 	* hxtool.c: Make common function for all getarg_strings and
   1512  1.1     elric 	hx509_certs_append commonly used.
   1513  1.1     elric 
   1514  1.1     elric 	* cms.c: HX509_CMS_UE_DONT_REQUIRE_KU_ENCIPHERMENT is a negative
   1515  1.1     elric 	flag, treat it was such.
   1516  1.1     elric 	
   1517  1.1     elric 2006-09-11  Love Hrnquist strand  <lha (a] it.su.se>
   1518  1.1     elric 
   1519  1.1     elric 	* req.c: Use the new add_GeneralNames function.
   1520  1.1     elric 
   1521  1.1     elric 	* hx509.h: Add HX509_CMS_UE_DONT_REQUIRE_KU_ENCIPHERMENT.
   1522  1.1     elric 
   1523  1.1     elric 	* ks_p12.c: Adapt to new signature of hx509_cms_unenvelope.
   1524  1.1     elric 
   1525  1.1     elric 	* hxtool.c: Adapt to new signature of hx509_cms_unenvelope.
   1526  1.1     elric 
   1527  1.1     elric 	* cms.c: Allow passing in encryptedContent and flag.  Add new flag
   1528  1.1     elric 	HX509_CMS_UE_DONT_REQUIRE_KU_ENCIPHERMENT.
   1529  1.1     elric 	
   1530  1.1     elric 2006-09-08  Love Hrnquist strand  <lha (a] it.su.se>
   1531  1.1     elric 	
   1532  1.1     elric 	* ks_p11.c: cast void * to char * when using it for %s formating
   1533  1.1     elric 	in printf.
   1534  1.1     elric 
   1535  1.1     elric 	* name.c: New function _hx509_Name_to_string.
   1536  1.1     elric 	
   1537  1.1     elric 2006-09-07  Love Hrnquist strand  <lha (a] it.su.se>
   1538  1.1     elric 
   1539  1.1     elric 	* ks_file.c: Sprinkle error messages.
   1540  1.1     elric 
   1541  1.1     elric 	* cms.c: Sprinkle even more error messages.
   1542  1.1     elric 	
   1543  1.1     elric 	* cms.c: Sprinkle some error messages.
   1544  1.1     elric 
   1545  1.1     elric 	* cms.c (find_CMSIdentifier): only free string when we allocated
   1546  1.1     elric 	one.
   1547  1.1     elric 
   1548  1.1     elric 	* ks_p11.c: Don't build most of the pkcs11 module if there are no
   1549  1.1     elric 	dlopen().
   1550  1.1     elric 	
   1551  1.1     elric 2006-09-06  Love Hrnquist strand  <lha (a] it.su.se>
   1552  1.1     elric 
   1553  1.1     elric 	* cms.c (hx509_cms_unenvelope): try to save the error string from
   1554  1.1     elric 	find_CMSIdentifier so we have one more bit of information what
   1555  1.1     elric 	went wrong.
   1556  1.1     elric 
   1557  1.1     elric 	* hxtool.c: More pretty printing, make verify_signed return the
   1558  1.1     elric 	error string from the library.
   1559  1.1     elric 
   1560  1.1     elric 	* cms.c: Try returning what certificates failed to parse or be
   1561  1.1     elric 	found.
   1562  1.1     elric 
   1563  1.1     elric 	* ks_p11.c (p11_list_keys): fetch CKA_LABEL and use it to set the
   1564  1.1     elric 	friendlyname for the certificate.
   1565  1.1     elric 	
   1566  1.1     elric 2006-09-05  Love Hrnquist strand  <lha (a] it.su.se>
   1567  1.1     elric 	
   1568  1.1     elric 	* crypto.c: check that there are no extra bytes in the checksum
   1569  1.1     elric 	and that the parameters are NULL or the NULL-type. All to avoid
   1570  1.1     elric 	having excess data that can be used to fake the signature.
   1571  1.1     elric 
   1572  1.1     elric 	* hxtool.c: print keyusage
   1573  1.1     elric 
   1574  1.1     elric 	* print.c: add hx509_cert_keyusage_print, simplify oid printing
   1575  1.1     elric 
   1576  1.1     elric 	* cert.c: add _hx509_cert_get_keyusage
   1577  1.1     elric 
   1578  1.1     elric 	* ks_p11.c: keep one session around for the whole life of the keyset
   1579  1.1     elric 
   1580  1.1     elric 	* test_query.in: tests more selection
   1581  1.1     elric 
   1582  1.1     elric 	* hxtool.c: improve pretty printing in print and query
   1583  1.1     elric 
   1584  1.1     elric 	* hxtool{.c,-commands.in}: add selection on KU and printing to query
   1585  1.1     elric 
   1586  1.1     elric 	* test_cms.in: Add cms test for digitalSignature and
   1587  1.1     elric 	keyEncipherment certs.
   1588  1.1     elric 
   1589  1.1     elric 	* name.c (no): Add serialNumber
   1590  1.1     elric 
   1591  1.1     elric 	* ks_p11.c (p11_get_session): return better error messages
   1592  1.1     elric 	
   1593  1.1     elric 2006-09-04  Love Hrnquist strand  <lha (a] it.su.se>
   1594  1.1     elric 
   1595  1.1     elric 	* ref: update to pkcs11 reference files 2.20
   1596  1.1     elric 
   1597  1.1     elric 	* ks_p11.c: add more mechflags
   1598  1.1     elric 
   1599  1.1     elric 	* name.c (no): add OU and sort
   1600  1.1     elric 
   1601  1.1     elric 	* revoke.c: pass context to _hx509_create_signature
   1602  1.1     elric 
   1603  1.1     elric 	* ks_p11.c (p11_printinfo): print proper plural s
   1604  1.1     elric 
   1605  1.1     elric 	* ks_p11.c: save the mechs supported when initing the token, print
   1606  1.1     elric 	them in printinfo.
   1607  1.1     elric 
   1608  1.1     elric 	* hx_locl.h: Include <parse_units.h>.
   1609  1.1     elric 
   1610  1.1     elric 	* cms.c: pass context to _hx509_create_signature
   1611  1.1     elric 
   1612  1.1     elric 	* req.c: pass context to _hx509_create_signature
   1613  1.1     elric 
   1614  1.1     elric 	* keyset.c (hx509_certs_info): print information about the keyset.
   1615  1.1     elric 
   1616  1.1     elric 	* hxtool.c (pcert_print) print keystore info when --info flag is
   1617  1.1     elric 	given.
   1618  1.1     elric 
   1619  1.1     elric 	* hxtool-commands.in: Add hxtool print --info.
   1620  1.1     elric 
   1621  1.1     elric 	* test_query.in: Test hxtool print --info.
   1622  1.1     elric 
   1623  1.1     elric 	* hx_locl.h (hx509_keyset_ops): add printinfo
   1624  1.1     elric 
   1625  1.1     elric 	* crypto.c: Start to hang the private key operations of the
   1626  1.1     elric 	private key, pass hx509_context to create_checksum.
   1627  1.1     elric 	
   1628  1.1     elric 2006-05-29  Love Hrnquist strand  <lha (a] it.su.se>
   1629  1.1     elric 
   1630  1.1     elric 	* ks_p11.c: Iterate over all slots, not just the first/selected
   1631  1.1     elric 	one.
   1632  1.1     elric 	
   1633  1.1     elric 2006-05-27  Love Hrnquist strand  <lha (a] it.su.se>
   1634  1.1     elric 
   1635  1.1     elric 	* cert.c: Add release function for certifiates so backend knowns
   1636  1.1     elric 	when its no longer used.
   1637  1.1     elric 
   1638  1.1     elric 	* ks_p11.c: Add reference counting on certifiates, push out
   1639  1.1     elric 	CK_SESSION_HANDLE from slot.
   1640  1.1     elric 
   1641  1.1     elric 	* cms.c: sprinkle more hx509_clear_error_string
   1642  1.1     elric 
   1643  1.1     elric 2006-05-22  Love Hrnquist strand  <lha (a] it.su.se>
   1644  1.1     elric 
   1645  1.1     elric 	* ks_p11.c: Sprinkle some hx509_set_error_strings
   1646  1.1     elric 	
   1647  1.1     elric 2006-05-13  Love Hrnquist strand  <lha (a] it.su.se>
   1648  1.1     elric 	
   1649  1.1     elric 	* hxtool.c: Avoid shadowing.
   1650  1.1     elric 
   1651  1.1     elric 	* revoke.c: Avoid shadowing.
   1652  1.1     elric 
   1653  1.1     elric 	* ks_file.c: Avoid shadowing.
   1654  1.1     elric 
   1655  1.1     elric 	* cert.c: Avoid shadowing.
   1656  1.1     elric 	
   1657  1.1     elric 2006-05-12  Love Hrnquist strand  <lha (a] it.su.se>
   1658  1.1     elric 
   1659  1.1     elric 	* lock.c (hx509_prompt_hidden): reshuffle to avoid gcc warning
   1660  1.1     elric 	
   1661  1.1     elric 	* hx509.h: Reshuffle the prompter types, remove the hidden field.
   1662  1.1     elric 
   1663  1.1     elric 	* lock.c (hx509_prompt_hidden): return if the prompt should be
   1664  1.1     elric 	hidden or not
   1665  1.1     elric 
   1666  1.1     elric 	* revoke.c (hx509_revoke_free): allow free of NULL.
   1667  1.1     elric 	
   1668  1.1     elric 2006-05-11  Love Hrnquist strand  <lha (a] it.su.se>
   1669  1.1     elric 
   1670  1.1     elric 	* ks_file.c (file_init): Avoid shadowing ret (and thus avoiding
   1671  1.1     elric 	crashing).
   1672  1.1     elric 
   1673  1.1     elric 	* ks_dir.c: Implement DIR: caches useing FILE: caches.
   1674  1.1     elric 
   1675  1.1     elric 	* ks_p11.c: Catch more errors.
   1676  1.1     elric 	
   1677  1.1     elric 2006-05-08  Love Hrnquist strand  <lha (a] it.su.se>
   1678  1.1     elric 	
   1679  1.1     elric 	* crypto.c (hx509_crypto_encrypt): free correctly in error
   1680  1.1     elric 	path. From Andrew Bartlett.
   1681  1.1     elric 
   1682  1.1     elric 	* crypto.c: If RAND_bytes fails, then we will attempt to
   1683  1.1     elric 	double-free crypt->key.data.  From Andrew Bartlett.
   1684  1.1     elric 	
   1685  1.1     elric 2006-05-05  Love Hrnquist strand  <lha (a] it.su.se>
   1686  1.1     elric 	
   1687  1.1     elric 	* name.c: Rename u_intXX_t to uintXX_t
   1688  1.1     elric 	
   1689  1.1     elric 2006-05-03  Love Hrnquist strand  <lha (a] it.su.se>
   1690  1.1     elric 
   1691  1.1     elric 	* TODO: More to do about the about the PKCS11 code.
   1692  1.1     elric 
   1693  1.1     elric 	* ks_p11.c: Use the prompter from the lock function.
   1694  1.1     elric 
   1695  1.1     elric 	* lock.c: Deal with that hx509_prompt.reply is no longer a
   1696  1.1     elric 	pointer.
   1697  1.1     elric 
   1698  1.1     elric 	* hx509.h: Make hx509_prompt.reply not a pointer.
   1699  1.1     elric 	
   1700  1.1     elric 2006-05-02  Love Hrnquist strand  <lha (a] it.su.se>
   1701  1.1     elric 
   1702  1.1     elric 	* keyset.c: Sprinkle setting error strings.
   1703  1.1     elric 
   1704  1.1     elric 	* crypto.c: Sprinkle setting error strings.
   1705  1.1     elric 
   1706  1.1     elric 	* collector.c: Sprinkle setting error strings.
   1707  1.1     elric 
   1708  1.1     elric 	* cms.c: Sprinkle setting error strings.
   1709  1.1     elric 	
   1710  1.1     elric 2006-05-01  Love Hrnquist strand  <lha (a] it.su.se>
   1711  1.1     elric 	
   1712  1.1     elric 	* test_name.c: renamed one error code
   1713  1.1     elric 
   1714  1.1     elric 	* name.c: renamed one error code
   1715  1.1     elric 
   1716  1.1     elric 	* ks_p11.c: _hx509_set_cert_attribute changed signature
   1717  1.1     elric 
   1718  1.1     elric 	* hxtool.c (pcert_print): use hx509_err so I can test it
   1719  1.1     elric 
   1720  1.1     elric 	* error.c (hx509_set_error_stringv): clear errors on malloc
   1721  1.1     elric 	failure
   1722  1.1     elric 
   1723  1.1     elric 	* hx509_err.et: Add some more errors
   1724  1.1     elric 
   1725  1.1     elric 	* cert.c: Sprinkle setting error strings.
   1726  1.1     elric 
   1727  1.1     elric 	* cms.c: _hx509_path_append changed signature.
   1728  1.1     elric 
   1729  1.1     elric 	* revoke.c: changed signature of _hx509_check_key_usage
   1730  1.1     elric 
   1731  1.1     elric 	* keyset.c: changed signature of _hx509_query_match_cert
   1732  1.1     elric 
   1733  1.1     elric 	* hx509.h: Add support for error strings.
   1734  1.1     elric 
   1735  1.1     elric 	* cms.c: changed signature of _hx509_check_key_usage
   1736  1.1     elric 
   1737  1.1     elric 	* Makefile.am: ibhx509_la_files += error.c
   1738  1.1     elric 
   1739  1.1     elric 	* ks_file.c: Sprinkel setting error strings.
   1740  1.1     elric 
   1741  1.1     elric 	* cert.c: Sprinkel setting error strings.
   1742  1.1     elric 
   1743  1.1     elric 	* hx_locl.h: Add support for error strings.
   1744  1.1     elric 
   1745  1.1     elric 	* error.c: Add string error handling functions.
   1746  1.1     elric 
   1747  1.1     elric 	* keyset.c (hx509_certs_init): pass the right error code back
   1748  1.1     elric 	
   1749  1.1     elric 2006-04-30  Love Hrnquist strand  <lha (a] it.su.se>
   1750  1.1     elric 
   1751  1.1     elric 	* revoke.c: Revert previous patch.
   1752  1.1     elric 	(hx509_ocsp_verify): new function that returns the expiration of
   1753  1.1     elric 	certificate in ocsp data-blob
   1754  1.1     elric 
   1755  1.1     elric 	* cert.c: Reverse previous patch, lets do it another way.
   1756  1.1     elric 
   1757  1.1     elric 	* cert.c (hx509_revoke_verify): update usage
   1758  1.1     elric 
   1759  1.1     elric 	* revoke.c: Make compile.
   1760  1.1     elric 
   1761  1.1     elric 	* revoke.c: Add the expiration time the crl/ocsp info expire
   1762  1.1     elric 
   1763  1.1     elric 	* name.c: Add hx509_name_is_null_p
   1764  1.1     elric 
   1765  1.1     elric 	* cert.c: remove _hx509_cert_private_sigature
   1766  1.1     elric 	
   1767  1.1     elric 2006-04-29  Love Hrnquist strand  <lha (a] it.su.se>
   1768  1.1     elric 	
   1769  1.1     elric 	* name.c: Expose more of Name.
   1770  1.1     elric 
   1771  1.1     elric 	* hxtool.c (main): add missing argument to printf
   1772  1.1     elric 
   1773  1.1     elric 	* data/openssl.cnf: Add EKU for the KDC certificate
   1774  1.1     elric 
   1775  1.1     elric 	* cert.c (hx509_cert_get_base_subject): reject un-canon proxy
   1776  1.1     elric 	certs, not the reverse
   1777  1.1     elric 	(add_to_list): constify and fix argument order to
   1778  1.1     elric 	copy_octet_string
   1779  1.1     elric 	(hx509_cert_find_subjectAltName_otherName): make work
   1780  1.1     elric 	
   1781  1.1     elric 2006-04-28  Love Hrnquist strand  <lha (a] it.su.se>
   1782  1.1     elric 
   1783  1.1     elric 	* data/{pkinit,kdc}.{crt,key}: pkinit certificates
   1784  1.1     elric 
   1785  1.1     elric 	* data/gen-req.sh: Generate pkinit certificates.
   1786  1.1     elric 
   1787  1.1     elric 	* data/openssl.cnf: Add pkinit glue.
   1788  1.1     elric 
   1789  1.1     elric 	* cert.c (hx509_verify_hostname): implement stub function
   1790  1.1     elric 	
   1791  1.1     elric 2006-04-27  Love Hrnquist strand  <lha (a] it.su.se>
   1792  1.1     elric 
   1793  1.1     elric 	* TODO: CRL delta support
   1794  1.1     elric 
   1795  1.1     elric 2006-04-26 Love Hrnquist strand <lha (a] it.su.se>
   1796  1.1     elric 	
   1797  1.1     elric 	* data/.cvsignore: ignore leftover from OpenSSL cert generation
   1798  1.1     elric 
   1799  1.1     elric 	* hx509_err.et: Add name malformated error
   1800  1.1     elric 
   1801  1.1     elric 	* name.c (hx509_parse_name): don't abort on error, rather return
   1802  1.1     elric 	error
   1803  1.1     elric 
   1804  1.1     elric 	* test_name.c: Test failure parsing name.
   1805  1.1     elric 
   1806  1.1     elric 	* cert.c: When verifying certificates, store subject basename for
   1807  1.1     elric 	later consumption.
   1808  1.1     elric 
   1809  1.1     elric 	* test_name.c: test to parse and print name and check that they
   1810  1.1     elric 	are the same.
   1811  1.1     elric 
   1812  1.1     elric 	* name.c (hx509_parse_name): fix length argument to printf string
   1813  1.1     elric 
   1814  1.1     elric 	* name.c (hx509_parse_name): fix length argument to stringtooid, 1
   1815  1.1     elric 	too short.
   1816  1.1     elric 
   1817  1.1     elric 	* cert.c: remove debug printf's
   1818  1.1     elric 
   1819  1.1     elric 	* name.c (hx509_parse_name): make compile pre c99
   1820  1.1     elric 
   1821  1.1     elric 	* data/gen-req.sh: OpenSSL have a serious issue of user confusion
   1822  1.1     elric 	-subj in -ca takes the arguments in LDAP order. -subj for x509
   1823  1.1     elric 	takes it in x509 order.
   1824  1.1     elric 
   1825  1.1     elric 	* cert.c (hx509_verify_path): handle the case where the where two
   1826  1.1     elric 	proxy certs in a chain.
   1827  1.1     elric 
   1828  1.1     elric 	* test_chain.in: enable two proxy certificates in a chain test
   1829  1.1     elric 
   1830  1.1     elric 	* test_chain.in: tests proxy certificates
   1831  1.1     elric 
   1832  1.1     elric 	* data: re-gen
   1833  1.1     elric 
   1834  1.1     elric 	* data/gen-req.sh: build proxy certificates
   1835  1.1     elric 	
   1836  1.1     elric 	* data/openssl.cnf: add def for proxy10_cert
   1837  1.1     elric 
   1838  1.1     elric 	* hx509_err.et: Add another proxy certificate error.
   1839  1.1     elric 
   1840  1.1     elric 	* cert.c (hx509_verify_path): Need to mangle name to remove the CN
   1841  1.1     elric 	of the subject, copying issuer only works for one level but is
   1842  1.1     elric 	better then doing no checking at all.
   1843  1.1     elric 
   1844  1.1     elric 	* hxtool.c: Add verify --allow-proxy-certificate.
   1845  1.1     elric 
   1846  1.1     elric 	* hxtool-commands.in: add verify --allow-proxy-certificate
   1847  1.1     elric 
   1848  1.1     elric 	* hx509_err.et: Add proxy certificate errors.
   1849  1.1     elric 
   1850  1.1     elric 	* cert.c: Fix comment about subject name of proxy certificate.
   1851  1.1     elric 
   1852  1.1     elric 	* test_chain.in: tests for proxy certs
   1853  1.1     elric 
   1854  1.1     elric 	* data/gen-req.sh: gen proxy and non-proxy tests certificates
   1855  1.1     elric 
   1856  1.1     elric 	* data/openssl.cnf: Add definition for proxy certs
   1857  1.1     elric 
   1858  1.1     elric 	* data/*proxy-test.*: Add proxy certificates
   1859  1.1     elric 
   1860  1.1     elric 	* cert.c (hx509_verify_path): verify proxy certificate have no san
   1861  1.1     elric 	or ian
   1862  1.1     elric 
   1863  1.1     elric 	* cert.c (hx509_verify_set_proxy_certificate): Add
   1864  1.1     elric 	(*): rename policy cert to proxy cert
   1865  1.1     elric 
   1866  1.1     elric 	* cert.c: Initial support for proxy certificates.
   1867  1.1     elric 	
   1868  1.1     elric 2006-04-24  Love Hrnquist strand  <lha (a] it.su.se>
   1869  1.1     elric 
   1870  1.1     elric 	* hxtool.c: some error checking
   1871  1.1     elric 
   1872  1.1     elric 	* name.c: Switch over to asn1 generaed oids.
   1873  1.1     elric 
   1874  1.1     elric 	* TODO: merge with old todo file
   1875  1.1     elric 	
   1876  1.1     elric 2006-04-23 Love Hrnquist strand <lha (a] it.su.se>
   1877  1.1     elric 
   1878  1.1     elric 	* test_query.in: make quiet
   1879  1.1     elric 
   1880  1.1     elric 	* test_req.in: SKIP test if there is no RSA support.
   1881  1.1     elric 
   1882  1.1     elric 	* hxtool.c: print dh method too
   1883  1.1     elric 
   1884  1.1     elric 	* test_chain.in: SKIP test if there is no RSA support.
   1885  1.1     elric 	
   1886  1.1     elric 	* test_cms.in: SKIP test if there is no RSA support.
   1887  1.1     elric 
   1888  1.1     elric 	* test_nist.in: SKIP test if there is no RSA support.
   1889  1.1     elric 	
   1890  1.1     elric 2006-04-22  Love Hrnquist strand  <lha (a] it.su.se>
   1891  1.1     elric 
   1892  1.1     elric 	* hxtool-commands.in: Allow passing in pool and anchor to
   1893  1.1     elric 	signedData
   1894  1.1     elric 
   1895  1.1     elric 	* hxtool.c: Allow passing in pool and anchor to signedData
   1896  1.1     elric 
   1897  1.1     elric 	* test_cms.in: Test that certs in signed data is picked up.
   1898  1.1     elric 
   1899  1.1     elric 	* hx_locl.h: Expose the path building function to internal
   1900  1.1     elric 	functions.
   1901  1.1     elric 
   1902  1.1     elric 	* cert.c: Expose the path building function to internal functions.
   1903  1.1     elric 
   1904  1.1     elric 	* hxtool-commands.in: cms-envelope: Add support for choosing the
   1905  1.1     elric 	encryption type
   1906  1.1     elric 
   1907  1.1     elric 	* hxtool.c (cms_create_enveloped): Add support for choosing the
   1908  1.1     elric 	encryption type
   1909  1.1     elric 
   1910  1.1     elric 	* test_cms.in: Test generating des-ede3 aes-128 aes-256 enveloped
   1911  1.1     elric 	data
   1912  1.1     elric 
   1913  1.1     elric 	* crypto.c: Add names to cipher types.
   1914  1.1     elric 
   1915  1.1     elric 	* cert.c (hx509_query_match_friendly_name): fix return value
   1916  1.1     elric 
   1917  1.1     elric 	* data/gen-req.sh: generate tests for enveloped data using
   1918  1.1     elric 	des-ede3 and aes256
   1919  1.1     elric 
   1920  1.1     elric 	* test_cms.in: add tests for enveloped data using des-ede3 and
   1921  1.1     elric 	aes256
   1922  1.1     elric 
   1923  1.1     elric 	* cert.c (hx509_query_match_friendly_name): New function.
   1924  1.1     elric 	
   1925  1.1     elric 2006-04-21  Love Hrnquist strand  <lha (a] it.su.se>
   1926  1.1     elric 	
   1927  1.1     elric 	* ks_p11.c: Add support for parsing slot-number.
   1928  1.1     elric 
   1929  1.1     elric 	* crypto.c (oid_private_rc2_40): simply
   1930  1.1     elric 
   1931  1.1     elric 	* crypto.c: Use oids from asn1 generator.
   1932  1.1     elric 
   1933  1.1     elric 	* ks_file.c (file_init): reset length when done with a part
   1934  1.1     elric 
   1935  1.1     elric 	* test_cms.in: check with test.combined.crt.
   1936  1.1     elric 
   1937  1.1     elric 	* data/gen-req.sh: Create test.combined.crt.
   1938  1.1     elric 
   1939  1.1     elric 	* test_cms.in: Test signed data using keyfile that is encrypted.
   1940  1.1     elric 
   1941  1.1     elric 	* ks_file.c: Remove (commented out) debug printf
   1942  1.1     elric 
   1943  1.1     elric 	* ks_file.c (parse_rsa_private_key): use EVP_get_cipherbyname
   1944  1.1     elric 
   1945  1.1     elric 	* ks_file.c (parse_rsa_private_key): make working for one
   1946  1.1     elric 	password.
   1947  1.1     elric 
   1948  1.1     elric 	* ks_file.c (parse_rsa_private_key): Implement enought for
   1949  1.1     elric 	testing.
   1950  1.1     elric 
   1951  1.1     elric 	* hx_locl.h: Add <ctype.h>
   1952  1.1     elric 
   1953  1.1     elric 	* ks_file.c: Add glue code for PEM encrypted password files.
   1954  1.1     elric 
   1955  1.1     elric 	* test_cms.in: Add commeted out password protected PEM file,
   1956  1.1     elric 	remove password for those tests that doesn't need it.
   1957  1.1     elric 
   1958  1.1     elric 	* test_cms.in: adapt test now that we can use any certificate and
   1959  1.1     elric 	trust anchor
   1960  1.1     elric 
   1961  1.1     elric 	* collector.c: handle PEM RSA PRIVATE KEY files
   1962  1.1     elric 
   1963  1.1     elric 	* cert.c: Remove unused function.
   1964  1.1     elric 
   1965  1.1     elric 	* ks_dir.c: move code here from ks_file.c now that its no longer
   1966  1.1     elric 	used.
   1967  1.1     elric 
   1968  1.1     elric 	* ks_file.c: Add support for parsing unencrypted RSA PRIVATE KEY
   1969  1.1     elric 
   1970  1.1     elric 	* crypto.c: Handle rsa private keys better.
   1971  1.1     elric 	
   1972  1.1     elric 2006-04-20  Love Hrnquist strand <lha (a] it.su.se>
   1973  1.1     elric 
   1974  1.1     elric 	* hxtool.c: Use hx509_cms_{,un}wrap_ContentInfo
   1975  1.1     elric 
   1976  1.1     elric 	* cms.c: Make hx509_cms_{,un}wrap_ContentInfo usable in asn1
   1977  1.1     elric 	un-aware code.
   1978  1.1     elric 
   1979  1.1     elric 	* cert.c (hx509_verify_path): if trust anchor is not self signed,
   1980  1.1     elric 	don't check sig From Douglas Engert.
   1981  1.1     elric 
   1982  1.1     elric 	* test_chain.in: test "sub-cert -> sub-ca"
   1983  1.1     elric 	
   1984  1.1     elric 	* crypto.c: Use the right length for the sha256 checksums.
   1985  1.1     elric 	
   1986  1.1     elric 2006-04-15  Love Hrnquist strand  <lha (a] it.su.se>
   1987  1.1     elric 
   1988  1.1     elric 	* crypto.c: Fix breakage from sha256 code.
   1989  1.1     elric 
   1990  1.1     elric 	* crypto.c: Add SHA256 support, and symbols for the other new
   1991  1.1     elric 	SHA-2 types.
   1992  1.1     elric 	
   1993  1.1     elric 2006-04-14  Love Hrnquist strand  <lha (a] it.su.se>
   1994  1.1     elric 
   1995  1.1     elric 	* test_cms.in: test rc2-40 rc2-64 rc2-128 enveloped data
   1996  1.1     elric 	
   1997  1.1     elric 	* data/test-enveloped-rc2-{40,64,128}: add tests cases for rc2
   1998  1.1     elric 
   1999  1.1     elric 	* cms.c: Update prototypes changes for hx509_crypto_[gs]et_params.
   2000  1.1     elric 
   2001  1.1     elric 	* crypto.c: Break out the parameter handling code for encrypting
   2002  1.1     elric 	data to handle RC2.  Needed for Windows 2k pk-init support.
   2003  1.1     elric 	
   2004  1.1     elric 2006-04-04  Love Hrnquist strand <lha (a] it.su.se>
   2005  1.1     elric 
   2006  1.1     elric 	* Makefile.am: Split libhx509_la_SOURCES into build file and
   2007  1.1     elric 	distributed files so we can avoid building prototypes for
   2008  1.1     elric 	build-files.
   2009  1.1     elric 	
   2010  1.1     elric 2006-04-03  Love Hrnquist strand  <lha (a] it.su.se>
   2011  1.1     elric 
   2012  1.1     elric 	* TODO: split certificate request into pkcs10 and CRMF
   2013  1.1     elric 
   2014  1.1     elric 	* hxtool-commands.in: Add nonce flag to ocsp-fetch
   2015  1.1     elric 
   2016  1.1     elric 	* hxtool.c: control sending nonce
   2017  1.1     elric 
   2018  1.1     elric 	* hxtool.c (request_create): store the request in a file, no in
   2019  1.1     elric 	bitbucket.
   2020  1.1     elric 
   2021  1.1     elric 	* cert.c: expose print_cert_subject internally
   2022  1.1     elric 
   2023  1.1     elric 	* hxtool.c: Add ocsp_print.
   2024  1.1     elric 
   2025  1.1     elric 	* hxtool-commands.in: New command "ocsp-print".
   2026  1.1     elric 
   2027  1.1     elric 	* hx_locl.h: Include <hex.h>.
   2028  1.1     elric 
   2029  1.1     elric 	* revoke.c (verify_ocsp): require issuer to match too.
   2030  1.1     elric 	(free_ocsp): new function
   2031  1.1     elric 	(hx509_revoke_ocsp_print): new function, print ocsp reply
   2032  1.1     elric 
   2033  1.1     elric 	* Makefile.am: build CRMF files
   2034  1.1     elric 
   2035  1.1     elric 	* data/key.der: needed for cert request test
   2036  1.1     elric 
   2037  1.1     elric 	* test_req.in: adapt to rename of pkcs10-create to request-create
   2038  1.1     elric 
   2039  1.1     elric 	* hxtool.c: adapt to rename of pkcs10-create to request-create
   2040  1.1     elric 
   2041  1.1     elric 	* hxtool-commands.in: Rename pkcs10-create to request-create
   2042  1.1     elric 
   2043  1.1     elric 	* crypto.c: (_hx509_parse_private_key): Avoid crashing on bad input.
   2044  1.1     elric 
   2045  1.1     elric 	* hxtool.c (pkcs10_create): use opt->subject_string
   2046  1.1     elric 
   2047  1.1     elric 	* hxtool-commands.in: Add pkcs10-create --subject
   2048  1.1     elric 
   2049  1.1     elric 	* Makefile.am: Add test_req to tests.
   2050  1.1     elric 	
   2051  1.1     elric 	* test_req.in: Test for pkcs10 commands.
   2052  1.1     elric 
   2053  1.1     elric 	* name.c (hx509_parse_name): new function.
   2054  1.1     elric 
   2055  1.1     elric 	* hxtool.c (pkcs10_create): implement
   2056  1.1     elric 
   2057  1.1     elric 	* hxtool-commands.in (pkcs10-create): Add arguments
   2058  1.1     elric 
   2059  1.1     elric 	* crypto.c: Add _hx509_private_key2SPKI and support
   2060  1.1     elric 	functions (only support RSA for now).
   2061  1.1     elric 	
   2062  1.1     elric 2006-04-02  Love Hrnquist strand  <lha (a] it.su.se>
   2063  1.1     elric 	
   2064  1.1     elric 	* hxtool-commands.in: Add pkcs10-create command.
   2065  1.1     elric 
   2066  1.1     elric 	* hx509.h: Add hx509_request.
   2067  1.1     elric 
   2068  1.1     elric 	* TODO: more stuff
   2069  1.1     elric 
   2070  1.1     elric 	* Makefile.am: Add req.c
   2071  1.1     elric 
   2072  1.1     elric 	* req.c: Create certificate requests, prototype converts the
   2073  1.1     elric 	request in a pkcs10 packet.
   2074  1.1     elric 
   2075  1.1     elric 	* hxtool.c: Add pkcs10_create
   2076  1.1     elric 
   2077  1.1     elric 	* name.c (hx509_name_copy): new function.
   2078  1.1     elric 	
   2079  1.1     elric 2006-04-01  Love Hrnquist strand  <lha (a] it.su.se>
   2080  1.1     elric 
   2081  1.1     elric 	* TODO: fill out what do
   2082  1.1     elric 
   2083  1.1     elric 	* hxtool-commands.in: add pkcs10-print
   2084  1.1     elric 
   2085  1.1     elric 	* hx_locl.h: Include <pkcs10_asn1.h>.
   2086  1.1     elric 
   2087  1.1     elric 	* pkcs10.asn1: PKCS#10
   2088  1.1     elric 
   2089  1.1     elric 	* hxtool.c (pkcs10_print): new function.
   2090  1.1     elric 
   2091  1.1     elric 	* test_chain.in: test ocsp keyhash
   2092  1.1     elric 
   2093  1.1     elric 	* data: generate ocsp keyhash version too
   2094  1.1     elric 
   2095  1.1     elric 	* revoke.c (load_ocsp): test that we got back a BasicReponse
   2096  1.1     elric 
   2097  1.1     elric 	* ocsp.asn1: Add asn1_id_pkix_ocsp*.
   2098  1.1     elric 
   2099  1.1     elric 	* Makefile.am: Add asn1_id_pkix_ocsp*.
   2100  1.1     elric 
   2101  1.1     elric 	* cert.c: Add HX509_QUERY_MATCH_KEY_HASH_SHA1
   2102  1.1     elric 
   2103  1.1     elric 	* hx_locl.h: Add HX509_QUERY_MATCH_KEY_HASH_SHA1
   2104  1.1     elric 
   2105  1.1     elric 	* revoke.c: Support OCSPResponderID.byKey, indent.
   2106  1.1     elric 
   2107  1.1     elric 	* revoke.c (hx509_ocsp_request): Add nonce to ocsp request.
   2108  1.1     elric 
   2109  1.1     elric 	* hxtool.c: Add nonce to ocsp request.
   2110  1.1     elric 
   2111  1.1     elric 	* test_chain.in: Added crl tests
   2112  1.1     elric 	
   2113  1.1     elric 	* data/nist-data: rename missing-crl to missing-revoke
   2114  1.1     elric 
   2115  1.1     elric 	* data: make ca use openssl ca command so we can add ocsp tests,
   2116  1.1     elric 	and regen certs
   2117  1.1     elric 
   2118  1.1     elric 	* test_chain.in: Add revoked ocsp cert test
   2119  1.1     elric 
   2120  1.1     elric 	* cert.c: rename missing-crl to missing-revoke
   2121  1.1     elric 
   2122  1.1     elric 	* revoke.c: refactor code, fix a un-init-ed variable
   2123  1.1     elric 	
   2124  1.1     elric 	* test_chain.in: rename missing-crl to missing-revoke add ocsp
   2125  1.1     elric 	tests
   2126  1.1     elric 
   2127  1.1     elric 	* test_cms.in: rename missing-crl to missing-revoke
   2128  1.1     elric 
   2129  1.1     elric 	* hxtool.c: rename missing-crl to missing-revoke
   2130  1.1     elric 
   2131  1.1     elric 	* hxtool-commands.in: rename missing-crl to missing-revoke
   2132  1.1     elric 	
   2133  1.1     elric 	* revoke.c: Plug one memory leak.
   2134  1.1     elric 
   2135  1.1     elric 	* revoke.c: Renamed generic CRL related errors.
   2136  1.1     elric 	
   2137  1.1     elric 	* hx509_err.et: Comments and renamed generic CRL related errors
   2138  1.1     elric 	
   2139  1.1     elric 	* revoke.c: Add ocsp checker.
   2140  1.1     elric 
   2141  1.1     elric 	* ocsp.asn1: Add id-kp-OCSPSigning
   2142  1.1     elric 
   2143  1.1     elric 	* hxtool-commands.in: add url-path argument to ocsp-fetch
   2144  1.1     elric 
   2145  1.1     elric 	* hxtool.c: implement ocsp-fetch
   2146  1.1     elric 
   2147  1.1     elric 	* cert.c: Use HX509_DEFAULT_OCSP_TIME_DIFF.
   2148  1.1     elric 	
   2149  1.1     elric 	* hx_locl.h: Add ocsp_time_diff to hx509_context
   2150  1.1     elric 
   2151  1.1     elric 	* crypto.c (_hx509_verify_signature_bitstring): new function,
   2152  1.1     elric 	commonly use when checking certificates
   2153  1.1     elric 
   2154  1.1     elric 	* cms.c (hx509_cms_envelope_1): check for internal ASN.1 encoder
   2155  1.1     elric 	error
   2156  1.1     elric 
   2157  1.1     elric 	* cert.c: Add ocsp glue, use new
   2158  1.1     elric 	_hx509_verify_signature_bitstring, add eku checking function.
   2159  1.1     elric 	
   2160  1.1     elric 2006-03-31  Love Hrnquist strand  <lha (a] it.su.se>
   2161  1.1     elric 
   2162  1.1     elric 	* Makefile.am: add id_kp_OCSPSigning.x
   2163  1.1     elric 
   2164  1.1     elric 	* revoke.c: Pick out certs in ocsp response
   2165  1.1     elric 
   2166  1.1     elric 	* TODO: list of stuff to verify
   2167  1.1     elric 
   2168  1.1     elric 	* revoke.c: Add code to load OCSPBasicOCSPResponse files, reload
   2169  1.1     elric 	crl when its changed on disk.
   2170  1.1     elric 
   2171  1.1     elric 	* cert.c: Update for ocsp merge. handle building path w/o
   2172  1.1     elric 	subject (using subject key id)
   2173  1.1     elric 
   2174  1.1     elric 	* ks_p12.c: _hx509_map_file changed prototype.
   2175  1.1     elric 
   2176  1.1     elric 	* file.c: _hx509_map_file changed prototype, returns struct stat
   2177  1.1     elric 	if requested.
   2178  1.1     elric 
   2179  1.1     elric 	* ks_file.c: _hx509_map_file changed prototype.
   2180  1.1     elric 
   2181  1.1     elric 	* hxtool.c: Add stub for ocsp-fetch, _hx509_map_file changed
   2182  1.1     elric 	prototype, add ocsp parsing to verify command.
   2183  1.1     elric 
   2184  1.1     elric 	* hx_locl.h: rename HX509_CTX_CRL_MISSING_OK to
   2185  1.1     elric 	HX509_CTX_VERIFY_MISSING_OK now that we have OCSP glue
   2186  1.1     elric 	
   2187  1.1     elric 2006-03-30  Love Hrnquist strand  <lha (a] it.su.se>
   2188  1.1     elric 
   2189  1.1     elric 	* hx_locl.h: Add <krb5-types.h> to make it compile on Solaris,
   2190  1.1     elric 	from Alex V. Labuta.
   2191  1.1     elric 	
   2192  1.1     elric 2006-03-28  Love Hrnquist strand  <lha (a] it.su.se>
   2193  1.1     elric 	
   2194  1.1     elric 	* crypto.c (_hx509_pbe_decrypt): try all passwords, not just the
   2195  1.1     elric 	first one.
   2196  1.1     elric 	
   2197  1.1     elric 2006-03-27  Love Hrnquist strand  <lha (a] it.su.se>
   2198  1.1     elric 
   2199  1.1     elric 	* print.c (check_altName): Print the othername oid.
   2200  1.1     elric 
   2201  1.1     elric 	* crypto.c: Manual page claims RSA_public_decrypt will return -1
   2202  1.1     elric 	on error, lets check for that
   2203  1.1     elric 	
   2204  1.1     elric 	* crypto.c (_hx509_pbe_decrypt): also try the empty password
   2205  1.1     elric 
   2206  1.1     elric 	* collector.c (match_localkeyid): no need to add back the cert to
   2207  1.1     elric 	the cert pool, its already there.
   2208  1.1     elric 
   2209  1.1     elric 	* crypto.c: Add REQUIRE_SIGNER
   2210  1.1     elric 
   2211  1.1     elric 	* cert.c (hx509_cert_free): ok to free NULL
   2212  1.1     elric 
   2213  1.1     elric 	* hx509_err.et: Add new error code SIGNATURE_WITHOUT_SIGNER.
   2214  1.1     elric 
   2215  1.1     elric 	* name.c (_hx509_name_ds_cmp): make DirectoryString case
   2216  1.1     elric 	insenstive
   2217  1.1     elric 	(hx509_name_to_string): less spacing
   2218  1.1     elric 
   2219  1.1     elric 	* cms.c: Check for signature error, check consitency of error
   2220  1.1     elric 	
   2221  1.1     elric 2006-03-26  Love Hrnquist strand  <lha (a] it.su.se>
   2222  1.1     elric 
   2223  1.1     elric 	* collector.c (_hx509_collector_alloc): handle errors
   2224  1.1     elric 
   2225  1.1     elric 	* cert.c (hx509_query_alloc): allocate slight more more then a
   2226  1.1     elric 	sizeof(pointer)
   2227  1.1     elric 
   2228  1.1     elric 	* crypto.c (_hx509_private_key_assign_key_file): ask for password
   2229  1.1     elric 	if nothing matches.
   2230  1.1     elric 
   2231  1.1     elric 	* cert.c: Expose more of the hx509_query interface.
   2232  1.1     elric 
   2233  1.1     elric 	* collector.c: hx509_certs_find is now exposed.
   2234  1.1     elric 
   2235  1.1     elric 	* cms.c: hx509_certs_find is now exposed.
   2236  1.1     elric 
   2237  1.1     elric 	* revoke.c: hx509_certs_find is now exposed.
   2238  1.1     elric 
   2239  1.1     elric 	* keyset.c (hx509_certs_free): allow free-ing NULL
   2240  1.1     elric 	(hx509_certs_find): expose
   2241  1.1     elric 	(hx509_get_one_cert): new function
   2242  1.1     elric 
   2243  1.1     elric 	* hxtool.c: hx509_certs_find is now exposed.
   2244  1.1     elric 
   2245  1.1     elric 	* hx_locl.h: Remove hx509_query, its exposed now.
   2246  1.1     elric 
   2247  1.1     elric 	* hx509.h: Add hx509_query.
   2248  1.1     elric 	
   2249  1.1     elric 2006-02-22  Love Hrnquist strand  <lha (a] it.su.se>
   2250  1.1     elric 
   2251  1.1     elric 	* cert.c: Add exceptions for null (empty) subjectNames
   2252  1.1     elric 
   2253  1.1     elric 	* data/nist-data: Add some more name constraints tests.
   2254  1.1     elric 
   2255  1.1     elric 	* data/nist-data: Add some of the test from 4.13 Name Constraints.
   2256  1.1     elric 
   2257  1.1     elric 	* cert.c: Name constraits needs to be evaluated in block as they
   2258  1.1     elric 	appear in the certificates, they can not be joined to one
   2259  1.1     elric 	list. One example of this is:
   2260  1.1     elric 	
   2261  1.1     elric 	- cert is cn=foo,dc=bar,dc=baz
   2262  1.1     elric 	- subca is dc=foo,dc=baz with name restriction dc=kaka,dc=baz
   2263  1.1     elric 	- ca is dc=baz with name restriction dc=baz
   2264  1.1     elric 	
   2265  1.1     elric 	If the name restrictions are merged to a list, the certificate
   2266  1.1     elric 	will pass this test.
   2267  1.1     elric 
   2268  1.1     elric 2006-02-14 Love Hrnquist strand <lha (a] it.su.se>
   2269  1.1     elric 
   2270  1.1     elric 	* cert.c: Handle more name constraints cases.
   2271  1.1     elric 
   2272  1.1     elric 	* crypto.c (dsa_verify_signature): if test if malloc failed
   2273  1.1     elric 
   2274  1.1     elric 2006-01-31  Love Hrnquist strand  <lha (a] it.su.se>
   2275  1.1     elric 
   2276  1.1     elric 	* cms.c: Drop partial pkcs12 string2key implementation.
   2277  1.1     elric 	
   2278  1.1     elric 2006-01-20  Love Hrnquist strand  <lha (a] it.su.se>
   2279  1.1     elric 
   2280  1.1     elric 	* data/nist-data: Add commited out DSA tests (they fail).
   2281  1.1     elric 
   2282  1.1     elric 	* data/nist-data: Add 4.2 Validity Periods.
   2283  1.1     elric 
   2284  1.1     elric 	* test_nist.in: Make less verbose to use.
   2285  1.1     elric 
   2286  1.1     elric 	* Makefile.am: Add test_nist_cert.
   2287  1.1     elric 
   2288  1.1     elric 	* data/nist-data: Add some more CRL-tests.
   2289  1.1     elric 
   2290  1.1     elric 	* test_nist.in: Print $id instead of . when running the tests.
   2291  1.1     elric 
   2292  1.1     elric 	* test_nist.in: Drop verifying certifiates, its done in another
   2293  1.1     elric 	test now.
   2294  1.1     elric 
   2295  1.1     elric 	* data/nist-data: fixup kill-rectangle leftovers
   2296  1.1     elric 
   2297  1.1     elric 	* data/nist-data: Drop verifying certifiates, its done in another
   2298  1.1     elric 	test now.  Add more crl tests. comment out all unused tests.
   2299  1.1     elric 
   2300  1.1     elric 	* test_nist_cert.in: test parse all nist certs
   2301  1.1     elric 	
   2302  1.1     elric 2006-01-19  Love Hrnquist strand  <lha (a] it.su.se>
   2303  1.1     elric 
   2304  1.1     elric 	* hx509_err.et: Add HX509_CRL_UNKNOWN_EXTENSION.
   2305  1.1     elric 
   2306  1.1     elric 	* revoke.c: Check for unknown extentions in CRLs and CRLEntries.
   2307  1.1     elric 
   2308  1.1     elric 	* test_nist.in: Parse new format to handle CRL info.
   2309  1.1     elric 
   2310  1.1     elric 	* test_chain.in: Add --missing-crl.
   2311  1.1     elric 
   2312  1.1     elric 	* name.c (hx509_unparse_der_name): Rename from hx509_parse_name.
   2313  1.1     elric 	(_hx509_unparse_Name): Add.
   2314  1.1     elric 
   2315  1.1     elric 	* hxtool-commands.in: Add --missing-crl to verify commands.
   2316  1.1     elric 
   2317  1.1     elric 	* hx509_err.et: Add CRL errors.
   2318  1.1     elric 
   2319  1.1     elric 	* cert.c (hx509_context_set_missing_crl): new function Add CRL
   2320  1.1     elric 	handling.
   2321  1.1     elric 
   2322  1.1     elric 	* hx_locl.h: Add HX509_CTX_CRL_MISSING_OK.
   2323  1.1     elric 
   2324  1.1     elric 	* revoke.c: Parse and verify CRLs (simplistic).
   2325  1.1     elric 
   2326  1.1     elric 	* hxtool.c: Parse CRL info.
   2327  1.1     elric 
   2328  1.1     elric 	* data/nist-data: Change format so we can deal with CRLs, also
   2329  1.1     elric 	note the test-id from PKITS.
   2330  1.1     elric 
   2331  1.1     elric 	* data: regenerate test
   2332  1.1     elric 	
   2333  1.1     elric 	* data/gen-req.sh: use static-file to generate tests
   2334  1.1     elric 	
   2335  1.1     elric 	* data/static-file: new file to use for commited tests
   2336  1.1     elric 
   2337  1.1     elric 	* test_cms.in: Use static file, add --missing-crl.
   2338  1.1     elric 	
   2339  1.1     elric 2006-01-18  Love Hrnquist strand <lha (a] it.su.se>
   2340  1.1     elric 
   2341  1.1     elric 	* print.c: Its cRLReason, not cRLReasons.
   2342  1.1     elric 
   2343  1.1     elric 	* hxtool.c: Attach revoke context to verify context.
   2344  1.1     elric 
   2345  1.1     elric 	* data/nist-data: change syntax to make match better with crl
   2346  1.1     elric 	checks
   2347  1.1     elric 
   2348  1.1     elric 	* cert.c: Verify no certificates has been revoked with the new
   2349  1.1     elric 	revoke interface.
   2350  1.1     elric 
   2351  1.1     elric 	* Makefile.am: libhx509_la_SOURCES += revoke.c
   2352  1.1     elric 
   2353  1.1     elric 	* revoke.c: Add framework for handling CRLs.
   2354  1.1     elric 
   2355  1.1     elric 	* hx509.h: Add hx509_revoke_ctx.
   2356  1.1     elric 	
   2357  1.1     elric 2006-01-13  Love Hrnquist strand  <lha (a] it.su.se>
   2358  1.1     elric 
   2359  1.1     elric 	* delete crypto_headers.h, use global file instead.
   2360  1.1     elric 
   2361  1.1     elric 	* crypto.c (PBE_string2key): libdes now supports PKCS12_key_gen
   2362  1.1     elric 	
   2363  1.1     elric 2006-01-12  Love Hrnquist strand  <lha (a] it.su.se>
   2364  1.1     elric 
   2365  1.1     elric 	* crypto_headers.h: Need BN_is_negative too.
   2366  1.1     elric 	
   2367  1.1     elric 2006-01-11  Love Hrnquist strand  <lha (a] it.su.se>
   2368  1.1     elric 	
   2369  1.1     elric 	* ks_p11.c (p11_rsa_public_decrypt): since is wrong, don't provide
   2370  1.1     elric 	it. PKCS11 can't do public_decrypt, it support verify though. All
   2371  1.1     elric 	this doesn't matter, since the code never go though this path.
   2372  1.1     elric 
   2373  1.1     elric 	* crypto_headers.h: Provide glue to compile with less warnings
   2374  1.1     elric 	with OpenSSL
   2375  1.1     elric 	
   2376  1.1     elric 2006-01-08  Love Hrnquist strand  <lha (a] it.su.se>
   2377  1.1     elric 	
   2378  1.1     elric 	* Makefile.am: Depend on LIB_des
   2379  1.1     elric 
   2380  1.1     elric 	* lock.c: Use "crypto_headers.h".
   2381  1.1     elric 
   2382  1.1     elric 	* crypto_headers.h: Include the two diffrent implementation of
   2383  1.1     elric 	crypto headers.
   2384  1.1     elric 
   2385  1.1     elric 	* cert.c: Use "crypto-headers.h". Load ENGINE configuration.
   2386  1.1     elric 
   2387  1.1     elric 	* crypto.c: Make compile with both OpenSSL and heimdal libdes.
   2388  1.1     elric 
   2389  1.1     elric 	* ks_p11.c: Add code for public key decryption (not supported yet)
   2390  1.1     elric 	and use "crypto-headers.h".
   2391  1.1     elric 	
   2392  1.1     elric 
   2393  1.1     elric 2006-01-04 Love Hrnquist strand <lha (a] it.su.se>
   2394  1.1     elric 	
   2395  1.1     elric 	* add a hx509_context where we can store configuration
   2396  1.1     elric 
   2397  1.1     elric 	* p11.c,Makefile.am: pkcs11 is now supported by library, remove
   2398  1.1     elric 	old files.
   2399  1.1     elric 
   2400  1.1     elric 	* ks_p11.c: more paranoid on refcount, set refcounter ealier,
   2401  1.1     elric 	reset pointers after free
   2402  1.1     elric 
   2403  1.1     elric 	* collector.c (struct private_key): remove temporary key data
   2404  1.1     elric 	storage, convert directly to a key
   2405  1.1     elric 	(match_localkeyid): match certificate and key using localkeyid
   2406  1.1     elric 	(match_keys): match certificate and key using _hx509_match_keys
   2407  1.1     elric 	(_hx509_collector_collect): rewrite to use match_keys and
   2408  1.1     elric 	match_localkeyid
   2409  1.1     elric 
   2410  1.1     elric 	* crypto.c (_hx509_match_keys): function that determins if a
   2411  1.1     elric 	private key matches a certificate, used when there is no
   2412  1.1     elric 	localkeyid.
   2413  1.1     elric 	(*) reset free pointer
   2414  1.1     elric 
   2415  1.1     elric 	* ks_file.c: Rewrite to use collector and mapping support
   2416  1.1     elric 	function.
   2417  1.1     elric 
   2418  1.1     elric 	* ks_p11.c (rsa_pkcs1_method): constify
   2419  1.1     elric 
   2420  1.1     elric 	* ks_p11.c: drop extra wrapping of p11_init
   2421  1.1     elric 
   2422  1.1     elric 	* crypto.c (_hx509_private_key_assign_key_file): use function to
   2423  1.1     elric 	extact rsa key
   2424  1.1     elric 
   2425  1.1     elric 	* cert.c: Revert previous, refcounter is unsigned, so it can never
   2426  1.1     elric 	be negative.
   2427  1.1     elric 
   2428  1.1     elric 	* cert.c (hx509_cert_ref): more refcount paranoia
   2429  1.1     elric 
   2430  1.1     elric 	* ks_p11.c: Implement rsa_private_decrypt and add stubs for public
   2431  1.1     elric 	ditto.
   2432  1.1     elric 
   2433  1.2  christos 	* ks_p11.c: Less __printf__, less memory leaks.
   2434  1.1     elric 
   2435  1.1     elric 	* ks_p11.c: Implement signing using pkcs11.
   2436  1.1     elric 	
   2437  1.1     elric 	* ks_p11.c: Partly assign private key, enough to complete
   2438  1.1     elric 	collection, but not any crypto functionallity.
   2439  1.1     elric 
   2440  1.1     elric 	* collector.c: Use hx509_private_key to assign private keys.
   2441  1.1     elric 
   2442  1.1     elric 	* crypto.c: Remove most of the EVP_PKEY code, and use RSA
   2443  1.1     elric 	directly, this temporary removes DSA support.
   2444  1.1     elric 
   2445  1.1     elric 	* hxtool.c (print_f): print if there is a friendly name and if
   2446  1.1     elric 	there is a private key
   2447  1.1     elric 	
   2448  1.1     elric 2006-01-03  Love Hrnquist strand  <lha (a] it.su.se>
   2449  1.1     elric 
   2450  1.1     elric 	* name.c: Avoid warning from missing __attribute__((noreturn))
   2451  1.1     elric 
   2452  1.1     elric 	* lock.c (_hx509_lock_unlock_certs): return unlock certificates
   2453  1.1     elric 
   2454  1.1     elric 	* crypto.c (_hx509_private_key_assign_ptr): new function, exposes
   2455  1.1     elric 	EVP_PKEY
   2456  1.1     elric 	(_hx509_private_key_assign_key_file): remember to free private key
   2457  1.1     elric 	if there is one.
   2458  1.1     elric 
   2459  1.1     elric 	* cert.c (_hx509_abort): add newline to output and flush stdout
   2460  1.1     elric 
   2461  1.1     elric 	* Makefile.am: libhx509_la_SOURCES += collector.c
   2462  1.1     elric 
   2463  1.1     elric 	* hx_locl.h: forward type declaration of struct hx509_collector.
   2464  1.1     elric 
   2465  1.1     elric 	* collector.c: Support functions to collect certificates and
   2466  1.1     elric 	private keys and then match them.
   2467  1.1     elric 
   2468  1.1     elric 	* ks_p12.c: Use the new hx509_collector support functions.
   2469  1.1     elric 
   2470  1.1     elric 	* ks_p11.c: Add enough glue to support certificate iteration.
   2471  1.1     elric 
   2472  1.1     elric 	* test_nist_pkcs12.in: Less verbose.
   2473  1.1     elric 
   2474  1.1     elric 	* cert.c (hx509_cert_free): if there is a private key assosited
   2475  1.1     elric 	with this cert, free it
   2476  1.1     elric 
   2477  1.1     elric 	* print.c: Use _hx509_abort.
   2478  1.1     elric 
   2479  1.1     elric 	* ks_p12.c: Use _hx509_abort.
   2480  1.1     elric 
   2481  1.1     elric 	* hxtool.c: Use _hx509_abort.
   2482  1.1     elric 
   2483  1.1     elric 	* crypto.c: Use _hx509_abort.
   2484  1.1     elric 
   2485  1.1     elric 	* cms.c: Use _hx509_abort.
   2486  1.1     elric 
   2487  1.1     elric 	* cert.c: Use _hx509_abort.
   2488  1.1     elric 
   2489  1.1     elric 	* name.c: use _hx509_abort
   2490  1.1     elric 	
   2491  1.1     elric 2006-01-02  Love Hrnquist strand  <lha (a] it.su.se>
   2492  1.1     elric 
   2493  1.1     elric 	* name.c (hx509_name_to_string): don't cut bmpString in half.
   2494  1.1     elric 
   2495  1.1     elric 	* name.c (hx509_name_to_string): don't overwrite with 1 byte with
   2496  1.1     elric 	bmpString.
   2497  1.1     elric 
   2498  1.1     elric 	* ks_file.c (parse_certificate): avoid stomping before array
   2499  1.1     elric 
   2500  1.1     elric 	* name.c (oidtostring): avoid leaking memory
   2501  1.1     elric 
   2502  1.1     elric 	* keyset.c: Add _hx509_ks_dir_register.
   2503  1.1     elric 
   2504  1.1     elric 	* Makefile.am (libhx509_la_SOURCES): += ks_dir.c
   2505  1.1     elric 
   2506  1.1     elric 	* hxtool-commands.in: Remove pkcs11.
   2507  1.1     elric 
   2508  1.1     elric 	* hxtool.c: Remove pcert_pkcs11.
   2509  1.1     elric 
   2510  1.1     elric 	* ks_file.c: Factor out certificate parsing code.
   2511  1.1     elric 
   2512  1.1     elric 	* ks_dir.c: Add new keystore that treats all files in a directory
   2513  1.1     elric 	a keystore, useful for regression tests.
   2514  1.1     elric 	
   2515  1.1     elric 2005-12-12  Love Hrnquist strand  <lha (a] it.su.se>
   2516  1.1     elric 
   2517  1.1     elric 	* test_nist_pkcs12.in: Test parse PKCS12 files from NIST.
   2518  1.1     elric 
   2519  1.1     elric 	* data/nist-data: Can handle DSA certificate.
   2520  1.1     elric 	
   2521  1.1     elric 	* hxtool.c: Print error code on failure.
   2522  1.1     elric 	
   2523  1.1     elric 2005-10-29  Love Hrnquist strand  <lha (a] it.su.se>
   2524  1.1     elric 
   2525  1.1     elric 	* crypto.c: Support DSA signature operations.
   2526  1.1     elric 	
   2527  1.1     elric 2005-10-04  Love Hrnquist strand  <lha (a] it.su.se>
   2528  1.1     elric 
   2529  1.1     elric 	* print.c: Validate that issuerAltName and subjectAltName isn't
   2530  1.1     elric 	empty.
   2531  1.1     elric 	
   2532  1.1     elric 2005-09-14  Love Hrnquist strand  <lha (a] it.su.se>
   2533  1.1     elric 
   2534  1.1     elric 	* p11.c: Cast to unsigned char to avoid warning.
   2535  1.1     elric 
   2536  1.1     elric 	* keyset.c: Register pkcs11 module.
   2537  1.1     elric 
   2538  1.1     elric 	* Makefile.am: Add ks_p11.c, install hxtool.
   2539  1.1     elric 	
   2540  1.1     elric 	* ks_p11.c: Starting point of a pkcs11 module.
   2541  1.1     elric 	
   2542  1.1     elric 2005-09-04  Love Hrnquist strand  <lha (a] it.su.se>
   2543  1.1     elric 
   2544  1.1     elric 	* lock.c: Implement prompter.
   2545  1.1     elric 
   2546  1.1     elric 	* hxtool-commands.in: add --content to print
   2547  1.1     elric 
   2548  1.1     elric 	* hxtool.c: Split verify and print.
   2549  1.1     elric 
   2550  1.1     elric 	* cms.c: _hx509_pbe_decrypt now takes a hx509_lock.
   2551  1.1     elric 
   2552  1.1     elric 	* crypto.c: Make _hx509_pbe_decrypt take a hx509_lock, workaround
   2553  1.1     elric 	for empty password.
   2554  1.1     elric 
   2555  1.1     elric 	* name.c: Add DC, handle all Directory strings, fix signless
   2556  1.1     elric 	problems.
   2557  1.1     elric 	
   2558  1.1     elric 2005-09-03  Love Hrnquist strand  <lha (a] it.su.se>
   2559  1.1     elric 
   2560  1.1     elric 	* test_query.in: Pass in --pass to all commands.
   2561  1.1     elric 
   2562  1.1     elric 	* hxtool.c: Use option --pass.
   2563  1.1     elric 
   2564  1.1     elric 	* hxtool-commands.in: Add --pass to all commands.
   2565  1.1     elric 
   2566  1.1     elric 	* hx509_err.et: add UNKNOWN_LOCK_COMMAND and CRYPTO_NO_PROMPTER
   2567  1.1     elric 
   2568  1.1     elric 	* test_cms.in: pass in password to cms-create-sd
   2569  1.1     elric 
   2570  1.1     elric 	* crypto.c: Abstract out PBE_string2key so I can add PBE2 s2k
   2571  1.1     elric 	later.  Avoid signess warnings with OpenSSL.
   2572  1.1     elric 
   2573  1.1     elric 	* cms.c: Use void * instead of char * for to avoid signedness
   2574  1.1     elric 	issues
   2575  1.1     elric 
   2576  1.1     elric 	* cert.c (hx509_cert_get_attribute): remove const, its not
   2577  1.1     elric 
   2578  1.1     elric 	* ks_p12.c: Cast size_t to unsigned long when print.
   2579  1.1     elric 
   2580  1.1     elric 	* name.c: Fix signedness warning.
   2581  1.1     elric 
   2582  1.1     elric 	* test_query.in: Use echo, the function check isn't defined here.
   2583  1.1     elric 	
   2584  1.1     elric 2005-08-11  Love Hrnquist strand  <lha (a] it.su.se>
   2585  1.1     elric 
   2586  1.1     elric 	* hxtool-commands.in: Add more options that was missing.
   2587  1.1     elric 
   2588  1.1     elric 2005-07-28  Love Hrnquist strand  <lha (a] it.su.se>
   2589  1.1     elric 
   2590  1.1     elric 	* test_cms.in: Use --certificate= for enveloped/unenvelope.
   2591  1.1     elric 
   2592  1.1     elric 	* hxtool.c: Use --certificate= for enveloped/unenvelope.  Clean
   2593  1.1     elric 	up.
   2594  1.1     elric 
   2595  1.1     elric 	* test_cms.in: add EnvelopeData tests
   2596  1.1     elric 	
   2597  1.1     elric 	* hxtool.c: use id-envelopedData for ContentInfo
   2598  1.1     elric 	
   2599  1.1     elric 	* hxtool-commands.in: add contentinfo wrapping for create/unwrap
   2600  1.1     elric 	enveloped data
   2601  1.1     elric 
   2602  1.1     elric 	* hxtool.c: add contentinfo wrapping for create/unwrap enveloped
   2603  1.1     elric 	data
   2604  1.1     elric 
   2605  1.1     elric 	* data/gen-req.sh: add enveloped data (aes128)
   2606  1.1     elric 	
   2607  1.1     elric 	* crypto.c: add "new" RC2 oid
   2608  1.1     elric 	
   2609  1.1     elric 2005-07-27  Love Hrnquist strand  <lha (a] it.su.se>
   2610  1.1     elric 
   2611  1.1     elric 	* hx_locl.h, cert.c: Add HX509_QUERY_MATCH_FUNCTION that allows
   2612  1.1     elric 	caller to match by function, note that this doesn't not work
   2613  1.1     elric 	directly for backends that implements ->query, they must do their
   2614  1.1     elric 	own processing. (I'm running out of flags, only 12 left now)
   2615  1.1     elric 
   2616  1.1     elric 	* test_cms.in: verify ContentInfo wrapping code in hxtool
   2617  1.1     elric 	
   2618  1.1     elric 	* hxtool-commands.in (cms_create_sd): support wrapping in content
   2619  1.1     elric 	info spelling
   2620  1.1     elric 
   2621  1.1     elric 	* hxtool.c (cms_create_sd): support wrapping in content info
   2622  1.1     elric 
   2623  1.1     elric 	* test_cms.in: test more cms signeddata messages
   2624  1.1     elric 	
   2625  1.1     elric 	* data/gen-req.sh: generate SignedData
   2626  1.1     elric 	
   2627  1.1     elric 	* hxtool.c (cms_create_sd): support certificate store, add support
   2628  1.1     elric 	to unwrap a ContentInfo the SignedData inside.
   2629  1.1     elric 
   2630  1.1     elric 	* crypto.c: sprinkel rk_UNCONST
   2631  1.1     elric 
   2632  1.1     elric 	* crypto.c: add DER NULL to the digest oid's
   2633  1.1     elric 
   2634  1.1     elric 	* hxtool-commands.in: add --content-info to cms-verify-sd
   2635  1.1     elric 
   2636  1.1     elric 	* cms.c (hx509_cms_create_signed_1): pass in a full
   2637  1.1     elric 	AlgorithmIdentifier instead of heim_oid for digest_alg
   2638  1.1     elric 
   2639  1.1     elric 	* crypto.c: make digest_alg a digest_oid, it's not needed right
   2640  1.1     elric 	now
   2641  1.1     elric 
   2642  1.1     elric 	* hx509_err.et: add CERT_NOT_FOUND
   2643  1.1     elric 	
   2644  1.1     elric 	* keyset.c (_hx509_certs_find): add error code for cert not
   2645  1.1     elric 	found
   2646  1.1     elric 
   2647  1.1     elric 	* cms.c (hx509_cms_verify_signed): add external store of
   2648  1.1     elric 	certificates, use the right digest algorithm identifier.
   2649  1.1     elric 
   2650  1.1     elric 	* cert.c: fix const warning
   2651  1.1     elric 
   2652  1.1     elric 	* ks_p12.c: slightly less verbose
   2653  1.1     elric 	
   2654  1.1     elric 	* cert.c: add hx509_cert_find_subjectAltName_otherName, add
   2655  1.1     elric 	HX509_QUERY_MATCH_FRIENDLY_NAME
   2656  1.1     elric 	
   2657  1.1     elric 	* hx509.h: add hx509_octet_string_list, remove bad comment
   2658  1.1     elric 	
   2659  1.1     elric 	* hx_locl.h: add HX509_QUERY_MATCH_FRIENDLY_NAME
   2660  1.1     elric 
   2661  1.1     elric 	* keyset.c (hx509_certs_append): needs a hx509_lock, add one
   2662  1.1     elric 
   2663  1.1     elric 	* Makefile.am: add test cases tempfiles to CLEANFILES
   2664  1.1     elric 	
   2665  1.1     elric 	* Makefile.am: add test_query to TESTS, fix dependency on hxtool
   2666  1.1     elric 	sources on hxtool-commands.h
   2667  1.1     elric 
   2668  1.1     elric 	* hxtool-commands.in: explain what signer is for create-sd
   2669  1.1     elric 
   2670  1.1     elric 	* hxtool.c: add query, add more options to verify-sd and create-sd
   2671  1.1     elric 
   2672  1.1     elric 	* test_cms.in: add more cms tests
   2673  1.1     elric 	
   2674  1.1     elric 	* hxtool-commands.in: add query, add more options to verify-sd
   2675  1.1     elric 
   2676  1.1     elric 	* test_query.in: test query interface
   2677  1.1     elric 	
   2678  1.1     elric 	* data: fix filenames for ds/ke files, add pkcs12 files, regen
   2679  1.1     elric 	
   2680  1.1     elric 	* hxtool.c,Makefile.am,hxtool-commands.in: switch to slc
   2681  1.1     elric 
   2682  1.1     elric 2005-07-26  Love Hrnquist strand  <lha (a] it.su.se>
   2683  1.1     elric 
   2684  1.1     elric 	* cert.c (hx509_verify_destroy_ctx): add
   2685  1.1     elric 	
   2686  1.1     elric 	* hxtool.c: free hx509_verify_ctx
   2687  1.1     elric 	
   2688  1.1     elric 	* name.c (_hx509_name_ds_cmp): make sure all strings are not equal
   2689  1.1     elric 
   2690  1.1     elric 2005-07-25  Love Hrnquist strand  <lha (a] it.su.se>
   2691  1.1     elric 
   2692  1.1     elric 	* hxtool.c: return error
   2693  1.1     elric 	
   2694  1.1     elric 	* keyset.c: return errors from iterations
   2695  1.1     elric 	
   2696  1.1     elric 	* test_chain.in: clean up checks
   2697  1.1     elric 	
   2698  1.1     elric 	* ks_file.c (parse_certificate): return errno's not 1 in case of
   2699  1.1     elric 	error
   2700  1.1     elric 	
   2701  1.1     elric 	* ks_file.c (file_iter): make sure endpointer is NULL
   2702  1.1     elric 
   2703  1.1     elric 	* ks_mem.c (mem_iter): follow conversion and return NULL when we
   2704  1.1     elric 	get to the end, not ENOENT.
   2705  1.1     elric 	
   2706  1.1     elric 	* Makefile.am: test_chain depends on hxtool
   2707  1.1     elric 	
   2708  1.1     elric 	* data: test certs that lasts 10 years
   2709  1.1     elric 	
   2710  1.1     elric 	* data/gen-req.sh: script to generate test certs
   2711  1.1     elric 	
   2712  1.1     elric 	* Makefile.am: Add regression tests.
   2713  1.1     elric 
   2714  1.1     elric 	* data: test certificate and keys
   2715  1.1     elric 
   2716  1.1     elric 	* test_chain.in: test chain
   2717  1.1     elric 
   2718  1.1     elric 	* hxtool.c (cms_create_sd): add KU digitalSigature as a
   2719  1.1     elric 	requirement to the query
   2720  1.1     elric 
   2721  1.1     elric 	* hx_locl.h: add KeyUsage query bits
   2722  1.1     elric 
   2723  1.1     elric 	* hx509_err.et: add KeyUsage error
   2724  1.1     elric 
   2725  1.1     elric 	* cms.c: add checks for KeyUsage
   2726  1.1     elric 
   2727  1.1     elric 	* cert.c: more checks on KeyUsage, allow to query on them too
   2728  1.1     elric 
   2729  1.1     elric 2005-07-24  Love Hrnquist strand  <lha (a] it.su.se>
   2730  1.1     elric 
   2731  1.1     elric 	* cms.c: Add missing break.
   2732  1.1     elric 	
   2733  1.1     elric 	* hx_locl.h,cms.c,cert.c: allow matching on SubjectKeyId
   2734  1.1     elric 
   2735  1.1     elric 	* hxtool.c: Use _hx509_map_file, _hx509_unmap_file and
   2736  1.1     elric 	_hx509_write_file.
   2737  1.1     elric 
   2738  1.1     elric 	* file.c (_hx509_write_file): in case of write error, return errno
   2739  1.1     elric 
   2740  1.1     elric 	* file.c (_hx509_write_file): add a function that write a data
   2741  1.1     elric 	blob to disk too
   2742  1.1     elric 
   2743  1.1     elric 	* Fix id-tags
   2744  1.1     elric 
   2745  1.1     elric 	* Import mostly complete X.509 and CMS library. Handles, PEM, DER,
   2746  1.1     elric 	PKCS12 encoded certicates.  Verificate RSA chains and handled
   2747  1.1     elric 	CMS's SignedData, and EnvelopedData.
   2748  1.1     elric 
   2749  1.1     elric 
   2750