| 2010-07-13 Werner Koch <wk@g10code.com> | |
| * cipher.c (do_aeswrap_encrypt, do_aeswrap_decrypt): New. Take | |
| from current SVN trunk. | |
| (gcry_cipher_open, gcry_cipher_encrypt, gcry_cipher_decrypt): Hook | |
| them in. | |
| (struct gcry_cipher_handle): Add field MARKS. | |
| (cipher_setkey, cipher_setiv): Set MARKS. | |
| (cipher_reset): Clear MARKS. | |
| 2010-07-09 Werner Koch <wk@g10code.com> | |
| * tiger.c (asn): Unfetter the old TIGER from an OID. | |
| (TIGER_CONTEXT): Add field VARIANT. | |
| (tiger_init): Factor code out to ... | |
| (do_init): ... new. | |
| (tiger1_init, tiger2_init): New. | |
| (_gcry_digest_spec_tiger1, _gcry_digest_spec_tiger2): New. | |
| * md.c (digest_table): Add TIGER1 and TIGER2 variants. | |
| * md.c (md_read): Fix incomplete check for NULL. Reported by | |
| Fabian Kail. | |
| 2009-12-11 Werner Koch <wk@g10code.com> | |
| * Makefile.am (o_flag_munging): New. | |
| (tiger.o, tiger.lo): Use it. | |
| * sha256.c (Cho, Maj, Sum0, Sum1): Turn macros into inline | |
| functions. | |
| (transform): Partly unroll to interweave the chain variables. | |
| * sha512.c (ROTR, Ch, Maj, Sum0, Sum1): Turn macros into inline | |
| functions. | |
| (transform): Partly unroll to interweave the chain variables. | |
| Suggested by Christian Grothoff. | |
| 2009-08-21 Werner Koch <wk@g10code.com> | |
| * dsa.c (dsa_generate_ext): Release retfactors array before | |
| setting it to NULL. Reported by Daiko Ueno. | |
| 2009-01-22 Werner Koch <wk@g10code.com> | |
| * ecc.c (compute_keygrip): Remove superfluous const. | |
| 2009-01-06 Werner Koch <wk@g10code.com> | |
| * rmd160.c (oid_spec_rmd160): Add TeleTrust identifier. | |
| 2008-12-10 Werner Koch <wk@g10code.com> | |
| * dsa.c (generate): Add arg DOMAIN and use it if specified. | |
| (generate_fips186): Ditto. | |
| (dsa_generate_ext): Parse and check the optional "domain" | |
| parameter and pass them to the generate functions. | |
| * rijndael.c (rijndael_names): Add "AES128" and "AES-128". | |
| (rijndael192_names): Add "AES-192". | |
| (rijndael256_names): Add "AES-256". | |
| 2008-12-05 Werner Koch <wk@g10code.com> | |
| * dsa.c (generate): Add arg TRANSIENT_KEY and use it to detrmine | |
| the RNG quality needed. | |
| (dsa_generate_ext): Parse the transient-key flag und pass it to | |
| generate. | |
| 2008-11-28 Werner Koch <wk@g10code.com> | |
| * dsa.c (generate_fips186): Add arg DERIVEPARMS and use the seed | |
| value if available. | |
| * primegen.c (_gcry_generate_fips186_2_prime): Fix inner p loop. | |
| 2008-11-26 Werner Koch <wk@g10code.com> | |
| * primegen.c (_gcry_generate_fips186_3_prime): New. | |
| * dsa.c (generate_fips186): Add arg USE_FIPS186_2. | |
| (dsa_generate_ext): Parse new flag use-fips183-2. | |
| 2008-11-25 Werner Koch <wk@g10code.com> | |
| * dsa.c (generate_fips186): New. | |
| (dsa_generate_ext): Use new function if derive-parms are given or | |
| if in FIPS mode. | |
| * primegen.c (_gcry_generate_fips186_2_prime): New. | |
| 2008-11-24 Werner Koch <wk@g10code.com> | |
| * pubkey.c (gcry_pk_genkey): Insert code to output extrainfo. | |
| (pubkey_generate): Add arg R_EXTRAINFO and pass it to the extended | |
| key generation function. | |
| * rsa.c (gen_x931_parm_xp, gen_x931_parm_xi): New. | |
| (generate_x931): Generate params if not given. | |
| (rsa_generate_ext): Parse use-x931 flag. Return p-q-swapped | |
| indicator. | |
| * dsa.c (dsa_generate_ext): Put RETFACTORS into R_EXTRAINFO if | |
| possible. | |
| * pubkey.c (gcry_pk_genkey): Remove parsing of almost all | |
| parameters and pass the parameter S-expression to pubkey_generate. | |
| (pubkey_generate): Simplify by requitring modules to parse the | |
| parameters. Remove the special cases for Elgamal and ECC. | |
| (sexp_elements_extract_ecc): Add arg EXTRASPEC and use it. Fix | |
| small memory leak. | |
| (sexp_to_key): Pass EXTRASPEC to sexp_elements_extract_ecc. | |
| (pubkey_table) [USE_ELGAMAL]: Add real extraspec. | |
| * rsa.c (rsa_generate_ext): Adjust for new calling convention. | |
| * dsa.c (dsa_generate_ext): Ditto. | |
| * elgamal.c (_gcry_elg_generate): Ditto. Rename to elg_generate_ext. | |
| (elg_generate): New. | |
| (_gcry_elg_generate_using_x): Remove after merging code with | |
| elg_generate_ext. | |
| (_gcry_pubkey_extraspec_elg): New. | |
| (_gcry_elg_check_secret_key, _gcry_elg_encrypt, _gcry_elg_sign) | |
| (_gcry_elg_verify, _gcry_elg_get_nbits): Make static and remove | |
| _gcry_ prefix. | |
| * ecc.c (_gcry_ecc_generate): Rename to ecc_generate_ext and | |
| adjust for new calling convention. | |
| (_gcry_ecc_get_param): Rename to ecc_get_param and make static. | |
| (_gcry_pubkey_extraspec_ecdsa): Add ecc_generate_ext and | |
| ecc_get_param. | |
| 2008-11-20 Werner Koch <wk@g10code.com> | |
| * pubkey.c (pubkey_generate): Add arg DERIVEPARMS. | |
| (gcry_pk_genkey): Parse derive-parms and pass it to above. | |
| * rsa.c (generate_x931): New. | |
| (rsa_generate_ext): Add arg DERIVEPARMS and call new function in | |
| fips mode or if DERIVEPARMS is given. | |
| * primegen.c (_gcry_derive_x931_prime, find_x931_prime): New. | |
| 2008-11-19 Werner Koch <wk@g10code.com> | |
| * rsa.c (rsa_decrypt): Use gcry_create_nonce for blinding. | |
| (generate): Rename to generate_std. | |
| 2008-11-05 Werner Koch <wk@g10code.com> | |
| * md.c (md_open): Use a switch to set the Bsize. | |
| (prepare_macpads): Fix long key case for SHA384 and SHA512. | |
| * cipher.c (gcry_cipher_handle): Add field EXTRASPEC. | |
| (gcry_cipher_open): Set it. | |
| (gcry_cipher_ctl): Add private control code to disable weak key | |
| detection and to return the current input block. | |
| * des.c (_tripledes_ctx): Add field FLAGS. | |
| (do_tripledes_set_extra_info): New. | |
| (_gcry_cipher_extraspec_tripledes): Add new function. | |
| (do_tripledes_setkey): Disable weak key detection. | |
| 2008-10-24 Werner Koch <wk@g10code.com> | |
| * md.c (digest_table): Allow MD5 in fips mode. | |
| (md_register_default): Take special action for MD5. | |
| (md_enable, gcry_md_hash_buffer): Ditto. | |
| 2008-09-30 Werner Koch <wk@g10code.com> | |
| * rijndael.c (do_setkey): Properly align "t" and "tk". | |
| (prepare_decryption): Properly align "w". Fixes bug #936. | |
| 2008-09-18 Werner Koch <wk@g10code.com> | |
| * pubkey.c (gcry_pk_genkey): Parse domain parameter. | |
| (pubkey_generate): Add new arg DOMAIN and remove special case for | |
| DSA with qbits. | |
| * rsa.c (rsa_generate): Add dummy args QBITS, NAME and DOMAIN and | |
| rename to rsa_generate_ext. Change caller. | |
| (_gcry_rsa_generate, _gcry_rsa_check_secret_key) | |
| (_gcry_rsa_encrypt, _gcry_rsa_decrypt, _gcry_rsa_sign) | |
| (_gcry_rsa_verify, _gcry_rsa_get_nbits): Make static and remove | |
| _gcry_ prefix. | |
| (_gcry_pubkey_spec_rsa, _gcry_pubkey_extraspec_rsa): Adjust names. | |
| * dsa.c (dsa_generate_ext): New. | |
| (_gcry_dsa_generate): Replace code by a call to dsa_generate. | |
| (_gcry_dsa_check_secret_key, _gcry_dsa_sign, _gcry_dsa_verify) | |
| (_gcry_dsa_get_nbits): Make static and remove _gcry prefix. | |
| (_gcry_dsa_generate2): Remove. | |
| (_gcry_pubkey_spec_dsa): Adjust to name changes. | |
| (_gcry_pubkey_extraspec_rsa): Add dsa_generate_ext. | |
| 2008-09-16 Werner Koch <wk@g10code.com> | |
| * ecc.c (run_selftests): Add arg EXTENDED. | |
| 2008-09-12 Werner Koch <wk@g10code.com> | |
| * rsa.c (test_keys): Do a bad case signature check. | |
| * dsa.c (test_keys): Do a bad case check. | |
| * cipher.c (_gcry_cipher_selftest): Add arg EXTENDED and pass it | |
| to the called tests. | |
| * md.c (_gcry_md_selftest): Ditto. | |
| * pubkey.c (_gcry_pk_selftest): Ditto. | |
| * rijndael.c (run_selftests): Add arg EXTENDED and pass it to the | |
| called tests. | |
| (selftest_fips_128): Add arg EXTENDED and run only one test | |
| non-extended mode. | |
| (selftest_fips_192): Add dummy arg EXTENDED. | |
| (selftest_fips_256): Ditto. | |
| * hmac-tests.c (_gcry_hmac_selftest): Ditto. | |
| (run_selftests): Ditto. | |
| (selftests_sha1): Add arg EXTENDED and run only one test | |
| non-extended mode. | |
| (selftests_sha224, selftests_sha256): Ditto. | |
| (selftests_sha384, selftests_sha512): Ditto. | |
| * sha1.c (run_selftests): Add arg EXTENDED and pass it to the | |
| called test. | |
| (selftests_sha1): Add arg EXTENDED and run only one test | |
| non-extended mode. | |
| * sha256.c (run_selftests): Add arg EXTENDED and pass it to the | |
| called tests. | |
| (selftests_sha224): Add arg EXTENDED and run only one test | |
| non-extended mode. | |
| (selftests_sha256): Ditto. | |
| * sha512.c (run_selftests): Add arg EXTENDED and pass it to the | |
| called tests. | |
| (selftests_sha384): Add arg EXTENDED and run only one test | |
| non-extended mode. | |
| (selftests_sha512): Ditto. | |
| * des.c (run_selftests): Add arg EXTENDED and pass it to the | |
| called test. | |
| (selftest_fips): Add dummy arg EXTENDED. | |
| * rsa.c (run_selftests): Add dummy arg EXTENDED. | |
| * dsa.c (run_selftests): Add dummy arg EXTENDED. | |
| * rsa.c (extract_a_from_sexp): New. | |
| (selftest_encr_1024): Check that the ciphertext does not match the | |
| plaintext. | |
| (test_keys): Improve tests and return an error status. | |
| (generate): Return an error if test_keys fails. | |
| * dsa.c (test_keys): Add comments and return an error status. | |
| (generate): Return an error if test_keys failed. | |
| 2008-09-11 Werner Koch <wk@g10code.com> | |
| * rsa.c (_gcry_rsa_decrypt): Return an error instead of calling | |
| BUG in case of a practically impossible condition. | |
| (sample_secret_key, sample_public_key): New. | |
| (selftest_sign_1024, selftest_encr_1024): New. | |
| (selftests_rsa): Implement tests. | |
| * dsa.c (sample_secret_key, sample_public_key): New. | |
| (selftest_sign_1024): New. | |
| (selftests_dsa): Implement tests. | |
| 2008-09-09 Werner Koch <wk@g10code.com> | |
| * hmac-tests.c (selftests_sha1): Add tests. | |
| (selftests_sha224, selftests_sha384, selftests_sha512): Make up tests. | |
| * hash-common.c, hash-common.h: New. | |
| * sha1.c (selftests_sha1): Add 3 tests. | |
| * sha256.c (selftests_sha256, selftests_sha224): Ditto. | |
| * sha512.c (selftests_sha512, selftests_sha384): Ditto. | |
| 2008-08-29 Werner Koch <wk@g10code.com> | |
| * pubkey.c (gcry_pk_get_keygrip): Remove the special case for RSA | |
| and check whether a custom computation function has been setup. | |
| * rsa.c (compute_keygrip): New. | |
| (_gcry_pubkey_extraspec_rsa): Setup this function. | |
| * ecc.c (compute_keygrip): New. | |
| (_gcry_pubkey_extraspec_ecdsa): Setup this function. | |
| 2008-08-28 Werner Koch <wk@g10code.com> | |
| * cipher.c (cipher_decrypt, cipher_encrypt): Return an error if | |
| mode NONE is used. | |
| (gcry_cipher_open): Allow mode NONE only with a debug flag set and | |
| if not in FIPS mode. | |
| 2008-08-26 Werner Koch <wk@g10code.com> | |
| * pubkey.c (pubkey_generate): Add arg KEYGEN_FLAGS. | |
| (gcry_pk_genkey): Implement new parameter "transient-key" and | |
| pass it as flags to pubkey_generate. | |
| (pubkey_generate): Make use of an ext_generate function. | |
| * rsa.c (generate): Add new arg transient_key and pass appropriate | |
| args to the prime generator. | |
| (_gcry_rsa_generate): Factor all code out to ... | |
| (rsa_generate): .. new func with extra arg KEYGEN_FLAGS. | |
| (_gcry_pubkey_extraspec_ecdsa): Setup rsa_generate. | |
| * primegen.c (_gcry_generate_secret_prime) | |
| (_gcry_generate_public_prime): Add new arg RANDOM_LEVEL. | |
| 2008-08-21 Werner Koch <wk@g10code.com> | |
| * primegen.c (_gcry_generate_secret_prime) | |
| (_gcry_generate_public_prime): Use a constant macro for the random | |
| level. | |
| 2008-08-19 Werner Koch <wk@g10code.com> | |
| * pubkey.c (sexp_elements_extract_ecc) [!USE_ECC]: Do not allow | |
| allow "curve" parameter. | |
| 2008-08-15 Werner Koch <wk@g10code.com> | |
| * pubkey.c (_gcry_pk_selftest): New. | |
| * dsa.c (selftests_dsa, run_selftests): New. | |
| * rsa.c (selftests_rsa, run_selftests): New. | |
| * ecc.c (selftests_ecdsa, run_selftests): New. | |
| * md.c (_gcry_md_selftest): New. | |
| * sha1.c (run_selftests, selftests_sha1): New. | |
| * sha256.c (selftests_sha224, selftests_sha256, run_selftests): New. | |
| * sha512.c (selftests_sha384, selftests_sha512, run_selftests): New. | |
| * des.c (selftest): Remove static variable form selftest. | |
| (des_setkey): No on-the-fly self test in fips mode. | |
| (tripledes_set3keys): Ditto. | |
| * cipher.c (_gcry_cipher_setkey, _gcry_cipher_setiv): | |
| * dsa.c (generate): Bail out in fips mode if NBITS is less than 1024. | |
| * rsa.c (generate): Return an error code if the the requested size | |
| is less than 1024 and we are in fpis mode. | |
| (_gcry_rsa_generate): Take care of that error code. | |
| * ecc.c (generate_curve): In fips mode enable only NIST curves. | |
| * cipher.c (_gcry_cipher_selftest): New. | |
| * sha512.c (_gcry_digest_extraspec_sha384) | |
| (_gcry_digest_extraspec_sha512): New. | |
| * sha256.c (_gcry_digest_extraspec_sha224) | |
| (_gcry_digest_extraspec_sha256): New. | |
| * sha1.c (_gcry_digest_extraspec_sha1): New. | |
| * ecc.c (_gcry_pubkey_extraspec_ecdsa): New. | |
| * dsa.c (_gcry_pubkey_extraspec_dsa): New. | |
| * rsa.c (_gcry_pubkey_extraspec_rsa): New. | |
| * rijndael.c (_gcry_cipher_extraspec_aes) | |
| (_gcry_cipher_extraspec_aes192, _gcry_cipher_extraspec_aes256): New. | |
| * des.c (_gcry_cipher_extraspec_tripledes): New. | |
| * cipher.c (gcry_cipher_register): Rename to _gcry_cipher_register. | |
| Add arg EXTRASPEC. | |
| (dummy_extra_spec): New. | |
| (cipher_table_entry): Add extraspec field. | |
| * md.c (_gcry_md_register): Rename to _gcry_md_register. Add | |
| arg EXTRASPEC. | |
| (dummy_extra_spec): New. | |
| (digest_table_entry): Add extraspec field. | |
| * pubkey.c (gcry_pk_register): Rename to _gcry_pk_register. Add | |
| arg EXTRASPEC. | |
| (dummy_extra_spec): New. | |
| (pubkey_table_entry): Add extraspec field. | |
| * ac.c: Let most public functions return GPG_ERR_UNSUPPORTED in | |
| fips mode. | |
| * pubkey.c (pubkey_table_entry): Add field FIPS_ALLOWED and mark | |
| appropriate algorithms. | |
| (dummy_generate, dummy_check_secret_key, dummy_encrypt) | |
| (dummy_decrypt, dummy_sign, dummy_verify, dummy_get_nbits): Signal | |
| a fips error when used. | |
| (gcry_pk_register): In fips mode do not allow to register new | |
| algorithms. | |
| * md.c (digest_table): Add field FIPS_ALLOWED and mark appropriate | |
| algorithms. | |
| (md_register_default): In fips mode register only fips algorithms. | |
| (gcry_md_register): In fips mode do not allow to register new | |
| algorithms. | |
| (gcry_md_get): Signal a fips error if called. | |
| (gcry_md_hash_buffer): Do not allow rmd160 when not in fips mode. | |
| (md_start_debug): Disable in fips_mode. | |
| * md.c (gcry_md_register_default): Rename to .. | |
| (md_register_default): .. this. | |
| (md_digest): Remove this commented fucntion. | |
| * pubkey.c (gcry_pk_register_default): Rename to .. | |
| (pk_register_default): .. this. | |
| * cipher.c (cipher_table_entry): Add field FIPS_ALLOWED. | |
| (gcry_cipher_register_default): Register only fips approved | |
| algorithms. | |
| (gcry_cipher_register): Do not allow to register new ciphers. | |
| (cipher_setiv): Signal fips error. | |
| * cipher (gcry_cipher_register_default): Rename to .. | |
| (cipher_register_default): .. this. | |
| (REGISTER_DEFAULT_CIPHERS): Adjust for that change. | |
| 2008-07-05 Werner Koch <wk@g10code.com> | |
| * random-daemon.c, random.h, rndhw.c, rndunix.c, rand-internal.h | |
| * random.c, rndegd.c, rndlinux.c, rndw32.c: Move to ../cipher. | |
| * Makefile.am: Remove random stuff. | |
| 2008-06-24 Szakats Istvan <szaki.ms@gmail.com> (wk) | |
| * ac.c (_gcry_ac_key_destroy, _gcry_ac_key_pair_generate): Relase | |
| some more memory. | |
| 2008-04-22 Werner Koch <wk@g10code.com> | |
| * rijndael.c (_gcry_aes_cfb_enc, _gcry_aes_cbc_enc) | |
| (_gcry_aes_cfb_dec, _gcry_aes_cbc_dec): Use Padlock if possible. | |
| 2008-04-18 Werner Koch <wk@g10code.com> | |
| * sha1.c (transform_aligned): Remove. That is will obviosuly not | |
| work because we need a scratch working area and our internal API | |
| does not allow to modify the buffers. | |
| * rijndael.c: Factor tables out to .. | |
| * rijndael-tables.h: .. new. | |
| * ac.c (ac_data_extract): Make static. | |
| * camellia.h [HAVE_CONFIG_H]: Include config.h. | |
| * rndw32.c (registry_poll): Only print the performance data | |
| problem warning once. Suggested by Simon Josefsson. | |
| 2008-03-19 Werner Koch <wk@g10code.com> | |
| * cipher.c (gcry_cipher_open) [USE_AES]: Init bulk encryption only | |
| if requested. Suggested by Dirk Stoecker. | |
| 2008-03-18 Werner Koch <wk@g10code.com> | |
| * sha1.c: Include stdint.h. | |
| (transform): Add arg NBLOCKS so that we can work on more than one | |
| block and avoid updates of the chaining variables. Changed all | |
| callers to use 1. | |
| (sha1_write): Replace loop around transform. | |
| (transform_aligned) [WORDS_BIGENDIAN]: New. | |
| (TRANSFORM): New macro to replace all direct calls of transform. | |
| 2008-03-17 Werner Koch <wk@g10code.com> | |
| * rijndael.c (_gcry_aes_cfb_dec): New. | |
| (do_encrypt): Factor code out to .. | |
| (do_encrypt_aligned): .. New. | |
| (_gcry_aes_cfb_enc, _gcry_aes_cfb_dec): Use new function. | |
| (do_decrypt): Factor code out to .. | |
| (do_decrypt_aligned): .. new. | |
| (_gcry_aes_cbc_enc, _gcry_aes_cbc_dec): New. | |
| * cipher.c (struct gcry_cipher_handle): Put field IV into new | |
| union U_IV to enforce proper alignment. Change all users. | |
| (do_cfb_decrypt): Optimize. | |
| (do_cbc_encrypt, do_cbc_decrypt): Optimize. | |
| 2008-03-15 Werner Koch <wk@g10code.com> | |
| * rijndael.c (_gcry_aes_cfb_enc): New. | |
| * cipher.c (struct gcry_cipher_handle): Add field ALGO and BULK. | |
| (gcry_cipher_open): Set ALGO and BULK. | |
| (do_cfb_encrypt): Optimize. | |
| 2008-02-18 Werner Koch <wk@g10code.com> | |
| * rsa.c (_gcry_rsa_verify) [IS_DEVELOPMENT_VERSION]: Print | |
| intermediate results. | |
| 2008-01-08 Werner Koch <wk@g10code.com> | |
| * random.c (add_randomness): Do not just increment | |
| POOL_FILLED_COUNTER but update it by the actual amount of data. | |
| 2007-12-13 Werner Koch <wk@g10code.com> | |
| * pubkey.c (sexp_data_to_mpi): Support SHA-224. | |
| 2007-12-05 Werner Koch <wk@g10code.com> | |
| * rijndael.c (USE_PADLOCK): Depend on ENABLE_PADLOCK_SUPPORT. | |
| * rndhw.c (USE_PADLOCK): Ditto | |
| * rsa.c (secret): Fixed condition test for using CRT. Reported by | |
| Dean Scarff. Fixes bug#864. | |
| (_gcry_rsa_check_secret_key): Return an erro if the optional | |
| parameters are missing. | |
| * pubkey.c (sexp_elements_extract): Add arg ALGO_NAME. Changed all | |
| callers to pass NULL. Add hack to allow for optional RSA | |
| parameters. | |
| (sexp_to_key): Pass algo name to sexp_elements_extract. | |
| 2007-12-03 Werner Koch <wk@g10code.com> | |
| * random.c (gcry_random_add_bytes): Implement it. | |
| * rand-internal.h (RANDOM_ORIGIN_EXTERNAL): New. | |
| 2007-11-30 Werner Koch <wk@g10code.com> | |
| * rndhw.c: New. | |
| * rndlinux.c (_gcry_rndlinux_gather_random): Try to read 50% | |
| directly from the hwrng. | |
| * random.c (do_fast_random_poll): Also run the hw rng fast poll. | |
| (_gcry_random_dump_stats): Tell whether the hw rng failed. | |
| 2007-11-29 Werner Koch <wk@g10code.com> | |
| * rijndael.c (USE_PADLOCK): Define new macro used for ia32. | |
| (RIJNDAEL_context) [USE_PADLOCK]: Add fields USE_PADLOCK and | |
| PADLOCK_KEY. | |
| (do_setkey) [USE_PADLOCK]: Enable padlock if available for 128 bit | |
| AES. | |
| (do_padlock) [USE_PADLOCK]: New. | |
| (rijndael_encrypt, rijndael_decrypt) [USE_PADLOCK]: Divert to | |
| do_padlock. | |
| * cipher.c (cipher_context_alignment_t): New. Use it in this | |
| module in place of PROPERLY_ALIGNED_TYPE. | |
| (NEED_16BYTE_ALIGNED_CONTEXT): Define macro for ia32. | |
| (struct gcry_cipher_handle): Add field HANDLE_OFFSET. | |
| (gcry_cipher_open): Take care of increased alignment requirements. | |
| (gcry_cipher_close): Ditto. | |
| 2007-11-28 Werner Koch <wk@g10code.com> | |
| * sha256.c (asn224): Fixed wrong template. It happened due to a | |
| bug in RFC4880. SHA-224 is not in the stable version of libgcrypt | |
| so the consequences are limited to users of this devel version. | |
| 2007-10-31 Werner Koch <wk@g10code.com> | |
| * ac.c (gcry_ac_data_new): Remove due to the visibility wrapper. | |
| (gcry_ac_data_destroy, gcry_ac_data_copy, gcry_ac_data_length) | |
| (gcry_ac_data_set, gcry_ac_data_get_name, gcry_ac_data_get_index) | |
| (gcry_ac_data_to_sexp, gcry_ac_data_from_sexp) | |
| (gcry_ac_data_clear, gcry_ac_io_init, gcry_ac_open) | |
| (gcry_ac_close, gcry_ac_key_init, gcry_ac_key_pair_generate) | |
| (gcry_ac_key_pair_extract, gcry_ac_key_destroy) | |
| (gcry_ac_key_pair_destroy, gcry_ac_key_data_get) | |
| (gcry_ac_key_test, gcry_ac_key_get_nbits, gcry_ac_key_get_grip) | |
| (gcry_ac_data_encrypt, gcry_ac_data_decrypt, gcry_ac_data_sign) | |
| (gcry_ac_data_verify, gcry_ac_data_encode, gcry_ac_data_decode) | |
| (gcry_ac_mpi_to_os, gcry_ac_mpi_to_os_alloc, gcry_ac_os_to_mpi) | |
| (gcry_ac_data_encrypt_scheme, gcry_ac_data_decrypt_scheme) | |
| (gcry_ac_data_sign_scheme, gcry_ac_data_verify_scheme) | |
| (gcry_ac_io_init_va): Ditto. | |
| (gcry_ac_id_to_name, gcry_ac_name_to_id): Remove as these | |
| deprecated functions are now implemented by visibility.c. | |
| 2007-10-26 Werner Koch <wk@g10code.com> | |
| * rndw32.c: Disable debug flag. | |
| 2007-10-25 Werner Koch <wk@g10code.com> | |
| * rndw32.c: Updated from current cryptlib snapshot and modified | |
| for our use. Removed support from pre NT systems. | |
| (slow_gatherer_windows95): Remove. | |
| (_gcry_rndw32_gather_random): Require an NT platform. | |
| (init_system_rng, read_system_rng, read_mbm_data): New. | |
| (slow_gatherer_windowsNT): Rename to ... | |
| (slow_gatherer): .. this. Read system RNG and MBM. | |
| (registry_poll): New with code factored out from slow_gatherer. | |
| 2007-08-23 Werner Koch <wk@g10code.com> | |
| * random.c (pool_filled_counter): New. | |
| (add_randomness): Use it. | |
| 2007-08-22 Werner Koch <wk@g10code.com> | |
| * rndw32.c, rndunix.c: Switched to LGPL. | |
| 2007-05-30 Werner Koch <wk@g10code.com> | |
| * camellia.h, camellia.c: Replace by new LGPL version and adjusted | |
| camellia.h. | |
| 2007-05-09 Marcus Brinkmann <marcus@g10code.de> | |
| * ac.c (_gcry_ac_io_init_va, _gcry_ac_io_write, _gcry_ac_io_read): | |
| Adjust users of gcry_ac_io_t because union is not anonymous | |
| anymore. | |
| 2007-05-02 Werner Koch <wk@g10code.com> | |
| * camellia-glue.c (camellia_setkey, camellia_encrypt) | |
| (camellia_decrypt): Recalculated used stack size in called | |
| functions. | |
| * camellia.h: Redefine external symbols. | |
| 2007-05-02 David Shaw <dshaw@jabberwocky.com> | |
| * Makefile.am, cipher.c: Add Camellia. | |
| * camellia-glue.c: New. The necessary glue to interface libgcrypt | |
| to the stock NTT Camellia distribution. | |
| * camellia.h, camellia.c: The stock NTT Camellia distribution | |
| (GPL). | |
| 2007-04-30 David Shaw <dshaw@jabberwocky.com> | |
| * cipher.c: Use #if instead of #ifdef as configure defines the | |
| USE_cipher defines as 0 for disabled. | |
| 2007-04-30 Werner Koch <wk@g10code.com> | |
| * rndegd.c (_gcry_rndegd_set_socket_name): New. | |
| 2007-04-30 Marcus Brinkmann <marcus@g10code.de> | |
| * ecc.c (ec2os): Fix relocation of short numbers. | |
| * ecc.c (generate_key): Do not allocate D, which will be allocated | |
| by GEN_K. Remove G. Fix test if g_x, g_y resp. q_x, q_y are | |
| requested. | |
| (_gcry_ecc_generate): Release unneeded members of SK. | |
| * pubkey.c (sexp_to_key): Release NAME. | |
| 2007-04-28 Marcus Brinkmann <marcus@g10code.de> | |
| * ac.c (gcry_ac_mpi): Remove member NAME_PROVIDED. | |
| (ac_data_mpi_copy, _gcry_ac_data_set, _gcry_ac_data_get_name) | |
| (_gcry_ac_data_get_index, ac_data_construct): Adjust handling of | |
| NAME accordingly. | |
| 2007-04-20 Werner Koch <wk@g10code.com> | |
| * ecc.c (domain_parms): Add standard brainpool curves. | |
| 2007-04-18 Werner Koch <wk@g10code.com> | |
| * ecc.c (generate_curve): Implement alias mechanism. | |
| * pubkey.c (sexp_elements_extract_ecc): New. | |
| (sexp_to_key): Add special case for ecc. | |
| (sexp_to_key, sexp_to_sig, sexp_to_enc, gcry_pk_genkey): Replace | |
| name_terminated stuff by a call to _gcry_sexp_nth_string. | |
| (gcry_pk_get_keygrip): Ditto. | |
| 2007-04-16 Werner Koch <wk@g10code.com> | |
| * ecc.c (_gcry_ecc_generate): Renamed DUMMY to CURVE and use it. | |
| 2007-04-13 Marcus Brinkmann <marcus@g10code.de> | |
| * ac.c (ac_data_construct): Cast const away to suppress compiler | |
| warning. | |
| * ecc.c (ecc_generate): Avoid compiler warning for unused argument | |
| DUMMY. | |
| (ecc_verify): Avoid compiler warning for unused arguments CMP and | |
| OPAQUEV. | |
| 2007-04-06 Werner Koch <wk@g10code.com> | |
| * sha1.c (oid_spec_sha1): Add another oid from X9.62. | |
| 2007-03-28 Werner Koch <wk@g10code.com> | |
| * pubkey.c (gcry_pk_genkey): Do not issue misc-key-info if it is | |
| empty. | |
| (gcry_pk_genkey): New parameter "curve". | |
| * ecc.c: Entirely rewritten with only a few traces of the old | |
| code left. | |
| (_gcry_ecc_generate): New. | |
| (generate_key) New arg NAME. | |
| (generate_curve): Ditto. Return actual number of NBITS. | |
| 2007-03-26 Werner Koch <wk@g10code.com> | |
| * pubkey.c (gcry_pk_genkey): Increase size of SKEY array and add a | |
| runtime bounds check. | |
| 2007-03-23 Werner Koch <wk@g10code.com> | |
| * ecc.c (ecc_ctx_init, ecc_ctx_free, ecc_mod, ecc_mulm): New. | |
| (duplicate_point, sum_points, escalar_mult): Don't use a | |
| copy of base->p. Replaced all mpi_mulm by ecc_mulm so that we can | |
| experiment with different algorithms. | |
| (generate_key, check_secret_key, sign, verify): Initialize a | |
| computation context for use by ecc_mulm. | |
| 2007-03-22 Werner Koch <wk@g10code.com> | |
| * pubkey.c (pubkey_table): Initialize ECC. | |
| * Makefile.am (EXTRA_libcipher_la_SOURCES): Add ecc.c. | |
| * ecc.c: New. Heavily reformatted and changed for use in libgcrypt. | |
| (point_init): New. | |
| (escalar_mult): Make arg R the first arg to be similar to the mpi | |
| functions. | |
| (duplicate_point): Ditto | |
| (sum_points): Ditto | |
| (sign, verify): Remove unneeded copy operations. | |
| (sum_points): Removed memory leaks and optimized some compares. | |
| (verify): Simplified input check. | |
| 2007-03-14 Werner Koch <wk@g10code.com> | |
| * random.c (MASK_LEVEL): Removed macro as it was used only at one | |
| place. Open coded it there. | |
| (gcry_randomize, _gcry_update_random_seed_file) | |
| (_gcry_fast_random_poll): Factor lock code out to .. | |
| (lock_pool, unlock_pool): .. new. | |
| (initialize): Look the pool while allocating. | |
| (read_random_source, do_fast_random_poll): Moved intialization to ... | |
| (initialize): .. here. | |
| (_gcry_enable_quick_random_gen): No more need for initialization. | |
| (is_initialized): Moved this global flag to .. | |
| (initialize): .. here and changed all users to unconditionally call | |
| initialize. | |
| (add_randomness): Remove initalization here. It simply can't | |
| happen. | |
| * random.c (enum random_origins): Moved to .. | |
| * rand-internal.h: .. here. | |
| * rndunix.c (_gcry_rndunix_gather_random): Use enum in prototype | |
| for ORIGIN and renamed REQUESTOR to ORIGIN. | |
| * rndegd.c (_gcry_rndegd_gather_random): Ditto. | |
| * rndlinux.c (_gcry_rndlinux_gather_random): Ditto. | |
| * rndw32.c (_gcry_rndw32_gather_random): Ditto. | |
| (_gcry_rndw32_gather_random_fast): Ditto. | |
| 2007-03-13 Werner Koch <wk@g10code.com> | |
| * random.c (enum random_origins): New. | |
| (add_randomness): Renamed arg SOURCE to ORIGIN. | |
| (read_random_source): Renamed arg REQUESTOR to ORIGIN. | |
| (getfnc_gather_random): Removed static variable because this | |
| function is only called one and thus we don't need this | |
| optimization. | |
| (_gcry_quick_random_gen): Removed and replaced by.. | |
| (_gcry_enable_quick_random_gen): .. this. It is onlyu used to | |
| enable it and it does not make sense to disable it later. Changed | |
| the only one caller too. | |
| (get_random_bytes): Removed. | |
| (gcry_random_bytes, gcry_random_bytes_secure): Implement in terms | |
| of gcry_randomize. | |
| * random-daemon.c (_gcry_daemon_get_random_bytes): Removed. | |
| 2007-02-23 Werner Koch <wk@g10code.com> | |
| * elgamal.c (generate): Removed unused variable TEMP. | |
| (test_keys): New arg NODIE. | |
| (generate_using_x, _gcry_elg_generate_using_x): New. | |
| * pubkey.c (pubkey_generate): New arg XVALUE and direct call to | |
| the new elgamal generate fucntion. | |
| (gcry_pk_genkey): Parse the new "xvalue" tag. | |
| 2007-02-22 Werner Koch <wk@g10code.com> | |
| * pubkey.c (sexp_data_to_mpi): Handle dynamically allocated | |
| algorithms. Suggested by Neil Dunbar. Fixes bug#596. | |
| * rndw32.c (_gcry_rndw32_gather_random_fast): Make it return void. | |
| * cipher.c (gcry_cipher_algo_name): Simplified. | |
| * random.c: Use the daemon only if compiled with USE_RANDOM_DAEMON. | |
| * Makefile.am (libcipher_la_SOURCES): Build random-daemon support | |
| only if requested. | |
| 2007-02-21 Werner Koch <wk@g10code.com> | |
| * random.c (rndpool, keypool): Make unsigned. | |
| (mix_pool): Change char* variables to unsigned char*. | |
| (gcry_randomize): Make arg BUFFER a void*. | |
| (gcry_create_nonce): Ditto. | |
| * rmd160.c (gcry_rmd160_mixblock): Make BUFFER a void*. | |
| (_gcry_rmd160_hash_buffer): Make OUTBUF and BUFFER void*. | |
| * sha1.c (_gcry_sha1_hash_buffer): Ditto. | |
| * cipher.c (gcry_cipher_encrypt, cry_cipher_decrypt): Change | |
| buffer args to void*. | |
| (gcry_cipher_register): Make ALGORITHM_ID a int *. | |
| * md.c (md_start_debug): Make SUFFIX a const char*. Use snprintf. | |
| (gcry_md_debug): New. | |
| (gcry_md_ctl): Changed arg BUFFER from unsigned char*. | |
| * md.c (md_write): Make INBUF a const void*. | |
| (gcry_md_write): Remove needless cast. | |
| * crc.c (crc32_write): Make INBUF a const void* | |
| (update_crc32, crc24rfc2440_write): Ditto. | |
| * sha512.c (sha512_write, transform): Ditto. | |
| * sha256.c (sha256_write, transform): Ditto. | |
| * rmd160.c (rmd160_write, transform): Ditto. | |
| * md5.c (md5_write, transform): Ditto. | |
| * md4.c (md4_write, transform): Ditto. | |
| * sha1.c (sha1_write, transform): Ditto. | |
| * tiger.c (tiger_write, transform): Ditto. | |
| * whirlpool.c (whirlpool_write, whirlpool_add, transform): Ditto. | |
| * elgamal.c (elg_names): Change to a const*. | |
| * dsa.c (dsa_names): Ditto. | |
| * rsa.c (rsa_names): Ditto. | |
| * pubkey.c (gcry_pk_lookup_func_name): Make ALIASES a const. | |
| 2007-02-20 Werner Koch <wk@g10code.com> | |
| * rndlinux.c (open_device): Remove unsused arg MINOR. | |
| 2007-01-30 Werner Koch <wk@g10code.com> | |
| * sha256.c (oid_spec_sha256): Add alias from pkcs#1. | |
| * sha512.c (oid_spec_sha512): Ditto. | |
| (oid_spec_sha384): Ditto. | |
| 2006-12-18 Werner Koch <wk@g10code.com> | |
| * rndlinux.c (set_cloexec_flag): New. | |
| (open_device): Set close-on-exit flags. Suggested by Max | |
| Kellermann. Fixes Debian#403613. | |
| * Makefile.am (AM_CPPFLAGS, AM_CFLAGS): Splitted and merged | |
| Moritz' changes. | |
| (INCLUDES): Removed. | |
| 2006-11-30 Werner Koch <wk@g10code.com> | |
| * serpent.c (byte_swap_32): Remove trailing semicolon. | |
| 2006-11-15 Werner Koch <wk@g10code.com> | |
| * Makefile.am (INCLUDES): Include ../src/ | |
| 2006-11-03 Werner Koch <wk@g10code.com> | |
| * random.c [HAVE_GETTIMEOFDAY]: Included sys/time.h and not | |
| sys/times.h. Reported by Rafaël Carré. | |
| 2006-11-05 Moritz Schulte <moritz@g10code.com> | |
| * Makefile.am (AM_CFLAGS): Added -I$(top_builddir)/src so that the | |
| new gcrypt.h is used, not the one installed in the system. | |
| 2006-10-25 Werner Koch <wk@g10code.com> | |
| * primegen.c (prime_generate_internal): Tweaked use of secure | |
| memory and entropy use. Safe unused primes from the pool. Allocate | |
| at least a pool of 30. | |
| (save_pool_prime, get_pool_prime): New. | |
| 2006-10-23 Werner Koch <wk@g10code.com> | |
| * ac.c (_gcry_ac_data_from_sexp): Reset sexp_tmp for failsafe | |
| means. Release sexp_cur if needed. Reported by Dirk Stoecker. | |
| * pubkey.c (pubkeys_registered_lock): Intialized it. It is not | |
| realy needed because this is a mere initialization to 0 anyway. | |
| Noted by Victor Stinner. | |
| 2006-10-17 Werner Koch <wk@g10code.com> | |
| * dsa.c (_gcry_dsa_generate2): New. | |
| (generate): New arg QBITS. Add sanity checks for reasonable qbits | |
| and nbits. | |
| * pubkey.c (gcry_pk_genkey): Parse an qbits element. | |
| (pubkey_generate): New arg QBITS. Pass it to the DSA generation. | |
| 2006-10-05 Werner Koch <wk@g10code.com> | |
| * md.c (gcry_md_algo_info) <get_asnoid>: Check that the algo is | |
| available. | |
| 2006-10-04 David Shaw <dshaw@jabberwocky.com> (wk) | |
| * tiger.c (round): Rename to tiger_round as gcc 4 has a built-in | |
| round function that this conflicts with. | |
| 2006-09-11 Werner Koch <wk@g10code.com> | |
| * rndw32.c (slow_gatherer_windowsNT): While adding data use the | |
| size of the diskPerformance and not its address. Has been fixed in | |
| GnuPG more than a year ago. Noted by Lee Fisher. | |
| 2006-08-30 Werner Koch <wk@g10code.com> | |
| * pubkey.c (sexp_data_to_mpi): Need to allow "ripemd160" here as | |
| this is the canonical name. | |
| 2006-08-29 Hye-Shik Chang <perky@FreeBSD.org> (wk) | |
| * seed.c: New. | |
| 2006-08-03 Werner Koch <wk@g10code.com> | |
| * random-daemon.c (_gcry_daemon_initialize_basics): Don't | |
| initialize the socket. Remove arg SOCKETNAME. | |
| (connect_to_socket): Make sure that daemon is set to -1 on error. | |
| (call_daemon): Initialize the socket on the first call. | |
| (_gcry_daemon_randomize, _gcry_daemon_get_random_bytes) | |
| (_gcry_daemon_create_nonce): New arg SOCKETNAME. | |
| * random.c (initialize): Call new daemon initializator. | |
| (get_random_bytes, gcry_randomize, gcry_create_nonce): Pass socket | |
| name to daemon call and reset allow_daemon on failure. | |
| 2006-07-26 Werner Koch <wk@g10code.com> | |
| * rmd160.c (_gcry_rmd160_mixblock): Add cast to transform call. | |
| * blowfish.c (selftest): Cast string to usnigned char*. | |
| * primegen.c (prime_generate_internal): Cast unsigned/char* | |
| mismatch in calling m_out_of_n. | |
| (is_prime): Changed COUNT to unsigned int *. | |
| * ac.c (_gcry_ac_data_copy): Initialize DATA_MPIS. | |
| * random.c (gcry_create_nonce): Update the pid after a fork. | |
| Reported by Uoti Urpala. | |
| 2006-07-04 Marcus Brinkmann <marcus@g10code.de> | |
| * sha512.c: Fix typo in copyright notice. | |
| 2006-06-21 Werner Koch <wk@g10code.com> | |
| * rsa.c (_gcry_rsa_generate): Replace xcalloc by calloc. | |
| * pubkey.c (gcry_pk_encrypt, gcry_pk_sign): Ditto. | |
| (sexp_to_key, sexp_to_sig, sexp_to_enc, gcry_pk_encrypt) | |
| (gcry_pk_sign, gcry_pk_genkey, gcry_pk_get_keygrip): Ditto. | |
| * md.c (md_copy): Ditto. | |
| 2006-04-22 Moritz Schulte <moritz@g10code.com> | |
| * random-daemon.c (_gcry_daemon_initialize_basics): New argument: | |
| SOCKETNAME. Passing on to connect_to_socket() if non-NULL. | |
| (connect_to_socket, writen, readn, call_daemon): New functions. | |
| (_gcry_daemon_randomize, _gcry_daemon_get_random_bytes) | |
| (_gcry_daemon_create_nonce): Call call_daemon(). | |
| (RANDOM_DAEMON_SOCKET): New symbol. | |
| (daemon_socket): New static variable. | |
| * random.h (_gcry_daemon_initialize_basics): New parameter: | |
| SOCKETNAME. | |
| (_gcry_set_random_daemon_socket): New declaration. | |
| * random.c (initialize_basics): Pass DAEMON_SOCKET_NAME to | |
| _gcry_daemon_initialize_basics. | |
| (_gcry_set_random_daemon_socket): New function, setting | |
| DAEMON_SOCKET_NAME. | |
| 2006-04-01 Moritz Schulte <moritz@g10code.com> | |
| * ac.c (eme_pkcs_v1_5_encode): Use KEY_SIZE directly, no need to | |
| call gcry_ac_key_get_nbits. | |
| (eme_pkcs_v1_5_decode): Likewise. | |
| (ac_es_dencode_prepare_pkcs_v1_5): Fill options_em structure with | |
| key_size. | |
| (_gcry_ac_data_dump, gcry_ac_data_dump): New functions. | |
| (_gcry_ac_data_to_sexp, _gcry_ac_data_from_sexp): More or less | |
| rewritten; changed S-Expression format so that it matches the one | |
| used in pubkey.c. | |
| 2006-03-15 Werner Koch <wk@g10code.com> | |
| * random-daemon.c: New. | |
| * random.c (_gcry_use_random_daemon): New. | |
| (get_random_bytes, gcry_randomize, gcry_create_nonce): Try | |
| diverting to the daemon functions. | |
| 2006-03-14 Werner Koch <wk@g10code.com> | |
| * random.c (lock_seed_file): New. | |
| (read_seed_file, _gcry_update_random_seed_file): Use it. | |
| * random.c (gcry_create_nonce): Detect a fork and re-seed. | |
| (read_pool): Fixed the fork detection; it used to work only for | |
| multi-threaded processes. | |
| 2006-03-12 Brad Hards <bradh@frogmouth.net> (wk) | |
| * md.c (md_open): Use new variable macpads_Bsize instead of | |
| hardwiring the block size. Changed at all places. | |
| 2006-03-10 Brad Hards <bradh@frogmouth.net> (wk, patch 2005-04-22) | |
| * md.c, sha256.c: Add support for SHA-224. | |
| (sha224_init): New. | |
| 2006-01-18 Brad Hards <bradh@frogmouth.net> (wk 2006-03-07) | |
| * cipher.c (cipher_encrypt, cipher_decrypt, do_ofb_encrypt) | |
| (do_ofb_decrypt, gcry_cipher_open): Implement Output Feedback Mode. | |
| 2005-11-02 Moritz Schulte <moritz@g10code.com> | |
| * pubkey.c (gcry_pk_algo_name): Return "?" instead of NULL for | |
| unknown algorithm IDs. | |
| * cipher.c (cipher_algo_to_string): Likewise. | |
| 2005-11-01 Moritz Schulte <moritz@g10code.com> | |
| * pubkey.c (gcry_pk_algo_info): Don't forget to break after switch | |
| case. | |
| 2005-09-19 Werner Koch <wk@g10code.com> | |
| * dsa.c (generate): Add preliminary support for 2 and 4 keys. | |
| Return an error code if the key size is not supported. | |
| (_gcry_dsa_generate): Return an error. | |
| 2005-08-22 Werner Koch <wk@g10code.com> | |
| * primegen.c (check_prime): New arg RM_ROUNDS. | |
| (prime_generate_internal): Call it here with 5 rounds as used | |
| before. | |
| (gcry_prime_check): But here with 64 rounds. | |
| (is_prime): Make sure never to use less than 5 rounds. | |
| 2005-04-16 Moritz Schulte <moritz@g10code.com> | |
| * ac.c (_gcry_ac_init): New function. | |
| 2005-04-12 Moritz Schulte <moritz@g10code.com> | |
| * ac.c (_gcry_ac_io_write, _gcry_ac_io_read): Initialize err to | |
| make the compiler happy. | |
| Always use errno, now that gcry_malloc() is guaranteed to set | |
| errno on failure. | |
| (_gcry_ac_data_to_sexp): Don't forget to goto out after error in | |
| loop. | |
| (_gcry_ac_data_to_sexp): Remove unused variable: mpi_list; | |
| (_gcry_ac_data_to_sexp): Always deallocate sexp_buffer. | |
| (_gcry_ac_data_from_sexp): Don't forget to initialize data_set_new. | |
| (_gcry_ac_data_from_sexp): Handle special case, which is | |
| necessary, since gcry_sexp_nth() does not distinguish between | |
| "element does not exist" and "element is the empty list". | |
| (_gcry_ac_io_init_va): Use assert to make sure that mode and type | |
| are correct. | |
| Use gcry_error_t types where gcry_err_code_t types have been used | |
| before. | |
| 2005-04-11 Moritz Schulte <moritz@g10code.com> | |
| * ac.c (_gcry_ac_data_sign_scheme): Don't forget to initialize | |
| buffer. | |
| * whirlpool.c: New file. | |
| * md.c (digest_table): Add whirlpool. | |
| * Makefile.am (EXTRA_libcipher_la_SOURCES): Added: whirlpool.c. | |
| 2005-03-30 Moritz Schulte <moritz@g10code.com> | |
| * ac.c (_gcry_ac_data_from_sexp): Use length of SEXP_CUR, not | |
| length of SEXP; do not forget to set SEXP_TMP to NULL after it has | |
| been released. | |
| (struct gcry_ac_mpi): New member: name_provided. | |
| (_gcry_ac_data_set): Rename variable `name_final' to `name_cp'; | |
| remove const qualifier; change code to not cast away const | |
| qualifiers; use name_provided member as well. | |
| (_gcry_ac_data_set, _gcry_ac_data_get_name): Use name_provided | |
| member of named mpi structure. | |
| (gcry_ac_name_to_id): Do not forget to initialize err. | |
| (_gcry_ac_data_get_index): Do not forget to initialize mpi_return; | |
| use gcry_free() instead of free(); remove unnecessary cast; rename | |
| mpi_return and name_return to mpi_cp and name_cp; adjust code. | |
| (ac_data_mpi_copy): Do not cast away const qualifier. | |
| (ac_data_values_destroy): Likewise. | |
| (ac_data_construct): Likewise. | |
| (ac_data_mpi_copy): Initialize flags to GCRY_AC_FLAG_DEALLOC. | |
| (ac_data_extract): Use GCRY_AC_FLAG_DEALLOC instead of | |
| GCRY_AC_FLAG_COPY. | |
| (_gcry_ac_io_init_va, _gcry_ac_io_init, gcry_ac_io_init) | |
| (gcry_ac_io_init_va, _gcry_ac_io_write, _gcry_ac_io_read) | |
| (_gcry_ac_io_read_all, _gcry_ac_io_process): New functions. | |
| (gry_ac_em_dencode_t): Use gcry_ac_io_t in prototype instead of | |
| memroy strings directly; adjust encode/decode functions to use io | |
| objects. | |
| (emsa_pkcs_v1_5_encode_data_cb): New function ... | |
| (emsa_pkcs_v1_5_encode): ... use it here. | |
| (ac_data_dencode): Use io objects. | |
| (_gcry_ac_data_encode, _gcry_ac_data_decode, gcry_ac_data_encode) | |
| (gcry_ac_data_decode): Likewise. | |
| (_gcry_ac_data_encrypt_scheme, gcry_ac_data_encrypt_scheme) | |
| (_gcry_ac_data_decrypt_scheme, gcry_ac_data_decrypt_scheme) | |
| (_gcry_ac_data_sign_scheme, gcry_ac_data_sign_scheme) | |
| (_gcry_ac_data_verify_scheme, gcry_ac_data_verify_scheme): | |
| Likewise. | |
| 2005-03-23 Werner Koch <wk@g10code.com> | |
| * rndw32.c (_gcry_rndw32_gather_random_fast): While adding data | |
| use the size of the object and not the one of its address. Bug | |
| reported by Sascha Kiefer. | |
| 2005-03-19 Moritz Schulte <moritz@g10code.com> | |
| * cipher.c (do_cbc_encrypt): Be careful to not overwrite data, | |
| which is to be used later on. This happend, in case CTS is | |
| enabled and OUTBUF is equal to INBUF. | |
| 2005-02-25 Werner Koch <wk@g10code.com> | |
| * pubkey.c (gcry_pk_get_keygrip): Allow for shadowed-private-key. | |
| 2005-02-13 Moritz Schulte <moritz@g10code.com> | |
| * serpent.c: Updated from 1.2 branch: | |
| s/u32_t/u32/ and s/byte_t/byte/. Too match what we have always | |
| used and are using in all other files too | |
| (serpent_test): Moved prototype out of a fucntion. | |
| 2005-02-07 Moritz Schulte <moritz@g10code.com> | |
| * ac.c: Major parts rewritten. | |
| * pubkey.c (_gcry_pk_get_elements): New function. | |
| 2004-12-09 Werner Koch <wk@g10code.com> | |
| * serpent.c (serpent_setkey): Moved prototype of serpent_test to | |
| outer scope. | |
| 2004-09-11 Moritz Schulte <moritz@g10code.com> | |
| * pubkey.c (pubkey_table): Added an alias entry for GCRY_PK_ELG_E. | |
| 2004-08-23 Moritz Schulte <moritz@g10code.com> | |
| * ac.c: Do not include <assert.h>. | |
| * rndegd.c: Likewise. | |
| * sha1.c: Likewise. | |
| * rndunix.c: Likewise. | |
| * rndlinux.c: Likewise. | |
| * rmd160.c: Likewise. | |
| * md5.c: Likewise. | |
| * md4.c: Likewise. | |
| * cipher.c: Likewise. | |
| * crc.c: Likewise. | |
| * blowfish.c: Likewise. | |
| * pubkey.c (dummy_generate, dummy_check_secret_key) | |
| (dummy_encrypt, dummy_decrypt, dummy_sign, dummy_verify): Return | |
| err code GPG_ERR_NOT_IMPLEMENTED instead of aborting through | |
| log_bug(). | |
| (dummy_get_nbits): Return 0 instead of aborting though log_bug(). | |
| 2004-08-19 Werner Koch <wk@g10code.de> | |
| * pubkey.c (sexp_data_to_mpi): Changed the zero random byte | |
| substituting code to actually do clever things. Thanks to | |
| Matthias Urlichs for noting the implementation problem. | |
| 2004-08-09 Moritz Schulte <moritz@g10code.com> | |
| * pubkey.c (gcry_pk_sign): Fixed memory leak; fix provided by | |
| Modestas Vainius. | |
| 2004-07-16 Werner Koch <wk@gnupg.org> | |
| * rijndael.c (do_encrypt): Fix alignment problem. Bugs found by | |
| Matthias Urlichs. | |
| (do_decrypt): Ditto. | |
| (keySched, keySched2): Use 2 macros along with unions in the key | |
| schedule context. | |
| 2004-07-14 Moritz Schulte <moritz@g10code.com> | |
| * rsa.c (_gcry_rsa_decrypt): Don't forget to free "a". Thanks to | |
| Nikos Mavroyanopoulos. | |
| 2004-05-09 Werner Koch <wk@gnupg.org> | |
| * random.c (read_pool): Mix the PID in to better protect after a | |
| fork. | |
| 2004-07-04 Moritz Schulte <moritz@g10code.com> | |
| * serpent.c: Use "u32_t" instead of "unsigned long", do not | |
| declare S-Box variables as "register". Fixes failure on | |
| OpenBSD/sparc64, reported by Nikolay Sturm. | |
| 2004-05-07 Werner Koch <wk@gnupg.org> | |
| * random.c (initialize): Factored out some code to .. | |
| (initialize_basics): .. new function. | |
| (_gcry_random_initialize): Just call initialize_basics unless the | |
| new arg FULL is set to TRUE. | |
| (_gcry_fast_random_poll): Don't do anything unless the random | |
| system has been really initialized. | |
| 2004-05-07 Moritz Schulte <moritz@g10code.de> | |
| * ac.c (gcry_ac_open): Do not dereference NULL pointer. Reported | |
| by Umberto Salsi. | |
| 2004-02-20 Werner Koch <wk@gnupg.org> | |
| * primegen.c (check_prime): New args CB_FUNC and CB_ARG; call them | |
| at different stages. Pass these arguments through all callers. | |
| 2004-02-06 Werner Koch <wk@gnupg.org> | |
| * des.c: Add a new OID as used by pkcs#12. | |
| * rfc2268.c: New. Taken from libgcrypt. | |
| * cipher.c: Setup the rfc2268 algorithm. | |
| 2004-01-25 Moritz Schulte <mo@g10code.com> | |
| * primegen.c (prime_generate_internal): Do not forget to free | |
| `q_factor'; fixed by Brieuc Jeunhomme. | |
| (prime_generate_internal): Do not forget to free `prime'. | |
| 2004-01-14 Moritz Schulte <mo@g10code.com> | |
| * ac.c (gcry_ac_data_set): New argument: flags; slightly | |
| rewritten. | |
| (gcry_ac_data_get_name, gcry_ac_data_get_index): Likewise. | |
| (gcry_ac_key_pair_generate): New argument: misc_data; modified | |
| order of arguments. | |
| (gcry_ac_key_test): New argument: handle. | |
| (gcry_ac_key_get_nbits, gcry_ac_key_get_grip): Likewise. | |
| Use GCRY_AC_FLAG_NO_BLINDING instead of | |
| GCRY_AC_DATA_FLAG_NO_BLINDING. | |
| (gcry_ac_mpi): New member: flags. | |
| (gcry_ac_data_search, gcry_ac_data_add): Removed functions. | |
| 2003-12-22 Werner Koch <wk@gnupg.org> | |
| * primegen.c (is_prime): Release A2. | |
| 2003-12-19 Werner Koch <wk@gnupg.org> | |
| * md.c: Moved a couple of functions down below the data structure | |
| definitions. | |
| (struct gcry_md_context): New field ACTUAL_HANDLE_SIZE. | |
| (md_open): Set it here. | |
| (strcut gcry_md_list): New field ACTUAL_STRUCT_SIZE. | |
| (md_enable): Set it here. | |
| (md_close): Wipe the context memory. | |
| secure memory. | |
| * cipher.c (struct gcry_cipher_handle): New field ACTUAL_HANDLE_SIZE. | |
| (gcry_cipher_open): Set it here. | |
| (gcry_cipher_close): Use it to always wipe out the handle data. | |
| * ac.c (gcry_ac_open): Make sure HANDLE gets initialized even when | |
| the function is not successful. | |
| (gcry_ac_close): Allow a NULL handle. | |
| (gcry_ac_key_destroy, gcry_ac_key_pair_destroy): Ditto. | |
| (gcry_ac_key_get_grip): Return INV_OBJ on error. | |
| * primegen.c (prime_generate_internal): Fixed error code for | |
| failed malloc. Replaced the !err if chain by gotos. | |
| (gcry_prime_group_generator): Remove the extra sanity check. | |
| * md.c: Minor code and comment cleanups. | |
| 2003-12-16 Werner Koch <wk@gnupg.org> | |
| * primegen.c (gen_prime): Doc fix. Thanks to Newton Hammet. | |
| 2003-12-11 Werner Koch <wk@gnupg.org> | |
| * rndunix.c (slow_poll): Don't use #warning but #error. | |
| * rndegd.c: Changed indentation. | |
| (my_make_filename): Removd the var_arg cruft becuase we | |
| don't need it here. Changed caller. | |
| * rndlinux.c: Changed indentation. | |
| (open_device): Remove the superfluous stat call and clarify | |
| comment. | |
| * rsa.c: Changed indentation. | |
| (secret): Use the standard algorithm if p, q and u are not | |
| available. | |
| (rsa_blind, rsa_unblind): Renamed from _gcry_rsa_blind, | |
| _gcry_rsa_unblind and moved more to the top. | |
| * md4.c: Changed indentation. Removed unnecessary casts. | |
| * md5.c, rmd160.c, sha1.c, tiger.c: Ditto. | |
| * rijndael.c, twofish.c: Ditto. | |
| * serpent.c: Removed unnecessary casts. | |
| * sha256.c, sha512.c: Ditto. | |
| 2003-12-09 Werner Koch <wk@gnupg.org> | |
| * dsa.c: Unified indentation style. | |
| * elgamal.c: Ditto. | |
| * des.c (des_key_schedule): Code beautifications. | |
| * blowfish.c: Changed indentation style. | |
| * cast5.c (do_cast_setkey): Ditto. | |
| * pubkey.c (gcry_pk_encrypt): Replaced the chain of if(!err) tests | |
| by straightforward gotos. Other cleanups. | |
| (gcry_pk_decrypt): Ditto. | |
| (gcry_pk_sign): Ditto. | |
| (gcry_pk_verify): Ditto. | |
| (gcry_pk_genkey): Ditto. Use strtoul instead of strtol. | |
| (gcry_pk_ctl): Use GPG_ERR_INV_ARG to indicate bad arguments. | |
| 2003-12-07 Werner Koch <wk@gnupg.org> | |
| * pubkey.c (gcry_pk_register_default): Undef the helper macro. | |
| (gcry_pk_map_name): Allow NULL for string. | |
| (sexp_to_key): Use memcpy and not strncpy. Use gcry_free and not | |
| free. | |
| (sexp_to_sig): Ditto. | |
| (sexp_to_enc): Ditto. Replaced the chain of if(!err) tests by | |
| straightforward gotos. | |
| 2003-12-05 Werner Koch <wk@gnupg.org> | |
| * cipher.c: Documentation cleanups. | |
| (gcry_cipher_mode_from_oid): Allow NULL for STRING. | |
| 2003-12-03 Werner Koch <wk@gnupg.org> | |
| * elgamal.c (sign, do_encrypt, gen_k): Make sure that a small K is | |
| only used for encryption. | |
| 2003-11-18 Werner Koch <wk@gnupg.org> | |
| * random.h (rndw32_set_dll_name): Removed unused prototype. | |
| * Makefile.am (EXTRA_DIST): Added Manifest. | |
| 2003-11-11 Werner Koch <wk@gnupg.org> | |
| * Manifest: New. | |
| 2003-11-04 Werner Koch <wk@gnupg.org> | |
| * md.c (gcry_md_hash_buffer): Use shortcut for SHA1 | |
| * sha1.c (_gcry_sha1_hash_buffer): New. | |
| * random.c: Reformatted most functions. | |
| (mix_pool): Moved the failsafe_digest from global | |
| scope to here. | |
| (do_fast_random_poll): Use the generic fucntions even if a fast | |
| gathering function has been used. | |
| (read_pool): Detect a fork and retry. | |
| (gcry_randomize, get_random_bytes): Don't distinguish anymore | |
| between weak and strong random. | |
| (gcry_create_nonce): New. | |
| 2003-10-31 Werner Koch <wk@gnupg.org> | |
| * rndw32.c (slow_gatherer_windowsNT): Use a plain buffer for the | |
| disk performance values and not the W32 API structure. | |
| * dsa.c (verify): s/exp/ex/ due to shadowing of a builtin. | |
| * elgamal.c (verify): Ditto. | |
| * ac.c (gcry_ac_data_get_index): s/index/idx/ | |
| (gcry_ac_data_copy_internal): Remove the cast in _gcry_malloc. | |
| (gcry_ac_data_add): Must use gcry_realloc instead of realloc. | |
| * pubkey.c (sexp_elements_extract): s/index/idx/ as tribute to the | |
| forehackers. | |
| (gcry_pk_encrypt): Removed shadowed definition of I. Reordered | |
| arguments to malloc for clarity. | |
| (gcry_pk_sign, gcry_pk_genkey): Ditto. | |
| * primegen.c (prime_generate_internal): s/random/randomlevel/. | |
| 2003-10-27 Moritz Schulte <mo@g10code.com> | |
| * pubkey.c (gcry_pk_encrypt): Don't forget to deallocate pkey. | |
| 2003-10-27 Werner Koch <wk@gnupg.org> | |
| * random.c (gcry_random_add_bytes): Return if buflen is zero to | |
| avoid gcc warning about unsed parameter. | |
| (MASK_LEVEL): Simplified; does now work for signed and unsigned | |
| w/o warnings. | |
| * md.c (md_start_debug): Removed the const from SUFFIX, because | |
| this function is called from the control fucntion which does not | |
| require const. | |
| Prefixed all (pubkey,digest,cipher}_spec_* globale variables with | |
| _gcry_. | |
| * ac.c (ac_key_identifiers): Made static. | |
| * random.c (getfnc_gather_random,getfnc_fast_random_poll): Move | |
| prototypes to .. | |
| * rand-internal.h: .. here | |
| * random.c (getfnc_gather_random): Include rndw32 gatherer. | |
| * rndunix.c, rndw32.c, rndegd.c: Include them here. | |
| * rndlinux.c (_gcry_rndlinux_gather_random): Prepend the _gcry_ | |
| prefix. Changed all callers. | |
| * rndegd.c (_gcry_rndegd_gather_random): Likewise. | |
| (_gcry_rndegd_connect_socket): Likewise. | |
| * rndunix.c (_gcry_rndunix_gather_random): Likewise. | |
| (waitpid): Made static. | |
| * rndw32.c: Removed the old and unused winseed.dll cruft. | |
| (_gcry_rndw32_gather_random_fast): Renamed from | |
| gather_random_fast. | |
| (_gcry_rndw32_gather_random): Renamed from gather_random. Note, | |
| that the changes 2003-04-08 somehow got lost. | |
| * sha512.c (sha512_init, sha384_init): Made static. | |
| * cipher.c (do_ctr_decrypt): Removed "return" from this void | |
| function. | |
| 2003-10-24 Moritz Schulte <mo@g10code.com> | |
| * serpent.c: Fix an issue on big-endian systems. | |
| * rndw32.c: Removed IS_MODULE -cruft. | |
| * rndlinux.c (rndlinux_gather_random): Likewise. | |
| 2003-10-10 Werner Koch <wk@gnupg.org> | |
| * primegen.c (gen_prime): Bail out if NBITS is less than 16. | |
| (prime_generate_internal): Initialize prime variable to suppress | |
| compiler warning. Check pbits, initialize qbits when passed as | |
| zero. | |
| * primegen.c (prime_generate_internal): New arg | |
| ALL_FACTORS. Changed all callers. | |
| (gcry_prime_generate): Make the factors arg optional. Request | |
| all_factors. Make sure PRIME is set to NULL even on error. | |
| (gcry_prime_group_generator): New. | |
| (gcry_prime_release_factors): New. | |
| 2003-10-06 Werner Koch <wk@gnupg.org> | |
| * primegen.c (gen_prime): Assert that NBITS is never zero, it | |
| would cause a segv. | |
| 2003-09-28 Moritz Schulte <mo@g10code.com> | |
| * ac.c: Include "cipher.h". | |
| 2003-09-27 Moritz Schulte <mo@g10code.com> | |
| * rndegd.c (do_read): Return nread instead of nbytes; thanks to | |
| Michael Caerwyn. | |
| 2003-09-04 Werner Koch <wk@gnupg.org> | |
| * pubkey.c (_gcry_pk_aliased_algo_name): New. | |
| * ac.c (gcry_ac_open): Use it here. | |
| * Makefile.am (EXTRA_libcipher_la_SOURCES): Add serpent.c | |
| 2003-09-02 Moritz Schulte <mo@g10code.com> | |
| * primegen.c (gcry_prime_check, gcry_prime_generate): New | |
| functions. | |
| (prime_generate_internal): New function, based on | |
| _gcry_generate_elg_prime. | |
| (_gcry_generate_elg_prime): Rewritten as a wrapper for | |
| prime_generate_internal. | |
| 2003-08-28 Werner Koch <wk@gnupg.org> | |
| * pubkey.c (gcry_pk_encrypt): Don't include the flags list in the | |
| return value. This does not make sense and breaks any programs | |
| parsing the output strictly (e.g. current gpgsm). | |
| (gcry_pk_encrypt): If aliases for the algorithm name exists, take | |
| the first one instead of the regular name to adhere to SPKI | |
| conventions. | |
| (gcry_pk_genkey): Ditto. | |
| (gcry_pk_sign): Ditto. Removed unused KEY_ALGO_NAME. | |
| 2003-08-19 Moritz Schulte <mo@g10code.com> | |
| * cipher.c: Add support for Serpent | |
| * serpent.c: New file. | |
| 2003-08-10 Moritz Schulte <moritz@g10code.com> | |
| * rsa.c (_gcry_rsa_blind, _gcry_rsa_unblind): Declare static. | |
| 2003-08-09 Timo Schulz <twoaday@freakmail.de> | |
| * random.c (getfnc_gather_random): Don't check NAME_OF_DEV_RANDOM | |
| two times, but also the NAME_OF_DEV_URANDOM device. | |
| 2003-08-08 Moritz Schulte <moritz@g10code.com> | |
| * pubkey.c (sexp_to_enc): Fixed extraction of S-Expression: do not | |
| fail if no `flags' sub S-Expression is found. | |
| 2003-07-27 Werner Koch <wk@gnupg.org> | |
| * md.c (gcry_md_lookup_func_oid): Allow for empty OID lists. | |
| 2003-07-23 Moritz Schulte <moritz@g10code.com> | |
| * ac.c (gcry_ac_data_construct): New argument: include_flags, only | |
| include `flags' S-expression, if include_flags is true. Adjust | |
| callers. Thanks for triggering a bug caused by `flags' | |
| sub-S-expression where they are not expected to Ralf Schneider. | |
| 2003-07-21 Moritz Schulte <moritz@g10code.com> | |
| * pubkey.c (gcry_pk_lookup_func_name): Use new member name | |
| `aliases' instead of `sexp_names'. | |
| * ac.c (gcry_ac_key_data_get): New function. | |
| * cipher.c (gcry_cipher_lookup_func_name): Fix return value. | |
| 2003-07-20 Moritz Schulte <moritz@g10code.com> | |
| * blowfish.c: Adjusted for new gcry_cipher_spec_t structure. | |
| * cast5.c: Likewise. | |
| * twofish.c: Likewise. | |
| * arcfour.c: Likewise. | |
| * rijndael.c (rijndael_oids, rijndael192_oids, rijndael256_oids): | |
| New variables, adjust for new gcry_cipher_spec_t structure. | |
| * des.c (oids_tripledes): New variable, adjust for new | |
| gcry_cipher_spec_t structure. | |
| * md.c (oid_table): Removed. | |
| * tiger.c (oid_spec_tiger): New variable. | |
| (digest_spec_tiger): Adjusted for new gry_md_spec_t structure. | |
| * sha512.c (oid_spec_sha512): New variable. | |
| (digest_spec_sha512): Adjusted for new gry_md_spec_t structure. | |
| * sha512.c (oid_spec_sha384): New variable. | |
| (digest_spec_sha384): Adjusted for new gry_md_spec_t structure. | |
| * sha256.c (oid_spec_sha256): New variable. | |
| (digest_spec_sha256): Adjusted for new gry_md_spec_t structure. | |
| * sha1.c (oid_spec_sha1): New variable. | |
| (digest_spec_sha1): Adjusted for new gry_md_spec_t structure. | |
| * rmd160.c (oid_spec_rmd160): New variable. | |
| (digest_spec_rnd160): Adjusted for new gry_md_spec_t structure. | |
| * md5.c (oid_spec_md5): New variable. | |
| (digest_spec_md5): Adjusted for new gry_md_spec_t structure. | |
| * md4.c (oid_spec_md4): New variable. | |
| (digest_spec_md4): Adjusted for new gry_md_spec_t structure. | |
| * crc.c (digest_spec_crc32, digest_spec_crc32_rfc1510, | |
| digest_spec_crc32_rfc2440): Adjusted for new gry_md_spec_t | |
| structure. | |
| 2003-07-19 Moritz Schulte <moritz@g10code.com> | |
| * md.c (gcry_md_lookup_func_oid): New function. | |
| (search_oid): New function, copied from cipher.c. | |
| (gcry_md_map_name): Adjust for new search_oid_interface. | |
| * cipher.c (oid_table): Removed table. | |
| (gcry_cipher_lookup_func_oid): New function. | |
| (search_oid): Rewritten to use the module functions. | |
| (gcry_cipher_map_name): Adjust for new search_oid interface. | |
| (gcry_cipher_mode_from_oid): Likewise. | |
| 2003-07-18 Werner Koch <wk@gnupg.org> | |
| * md.c (gcry_md_hash_buffer): Convert ERR to gpg_error_t in | |
| gpg_strerror. | |
| 2003-07-14 Moritz Schulte <moritz@g10code.com> | |
| * cipher.c (gcry_cipher_lookup_func_name): Also check the cipher | |
| name aliases, not just the primary name. | |
| (gcry_cipher_map_name): Remove kludge for aliasing Rijndael to | |
| AES. | |
| * arcfour.c, blowfish.c, cast5.c, des.c, twofish.c: Adjust cipher | |
| specification structures. | |
| * rijndael.c (rijndael_names, rijndael192_names, | |
| rijndael256_names): New variables, use them in the cipher | |
| specifications. | |
| * rmd160test.c: Removed file. | |
| * ac.c, arcfour.c, blowfish.c, cast5.c, cipher.c, des.c, dsa.c, | |
| elgamal.c, md.c, pubkey.c, random.c, rijndael.c, rsa.c, twofish.c: | |
| Used gcry_err* wrappers for libgpg symbols. | |
| * primegen.c (gen_prime): Correct the order arguments to | |
| extra_check. | |
| 2003-07-12 Moritz Schulte <moritz@g10code.com> | |
| * ac.c: Replaced all public occurences of gpg_error_t with | |
| gcry_error_t. | |
| * cipher.c: Likewise. | |
| * md.c: Likewise. | |
| * pubkey.c: Likewise. | |
| * random.c: Likewise. | |
| * cipher.c: Added support for TWOFISH128. | |
| 2003-07-08 Moritz Schulte <moritz@g10code.com> | |
| * ac.c (gcry_ac_data_copy_internal): New function, based on | |
| gcry_ac_data_copy. | |
| (gcry_ac_data_copy): Made public, use gcry_ac_data_copy_internal. | |
| (gcry_ac_key_init): Use gcry_ac_data_copy_internal. | |
| 2003-07-07 Moritz Schulte <moritz@g10code.com> | |
| * ac.c (gcry_ac_data_set): Only release old MPI value if it is | |
| different from the new value. Bug reported by Simon Josefsson | |
| <jas@extundo.com>. | |
| * pubkey.c (gcry_pk_list): New function. | |
| * md.c (gcry_md_list): New function. | |
| * ac.c (gcry_ac_key_pair_generate): Fix calculation of format | |
| string size. | |
| 2003-07-05 Moritz Schulte <moritz@g10code.com> | |
| * md.c: Named struct of digest_table `digest_table_entry'. | |
| (digest_table_entry): New member: algorithm; filled in. | |
| (digest_table_entry): Removed unused member: flags. | |
| (gcry_md_register): New argument: algorithm_id, filled in. | |
| (gcry_md_register_default): Used algorithm ID from module | |
| structure. | |
| (gcry_md_map_name): Likewise. | |
| (md_enable): Likewise. | |
| (md_read): Likewise. | |
| (gcry_md_info): Likewise. | |
| * pubkey.c: Named truct for pubkey_table `pubkey_table_entry'. | |
| (pubkey_table_entry): New member: algorithm; filled in. | |
| (gcry_pk_register_default): Used algorithm ID from pubkey_table. | |
| (gcry_pk_register): New argument: algorithm_id, filled in. | |
| (gcry_pk_map_name): Used algorithm ID from module structure. | |
| (gcry_pk_decrypt): Likewise. | |
| (gcry_pk_encrypt): Likewise. | |
| (gcry_pk_verify): Likewise. | |
| (gcry_pk_sign): Likewise. | |
| (gcry_pk_testkey): Likewise. | |
| (gcry_pk_genkey): Likewise. | |
| (gcry_pk_get_nbits): Likewise. | |
| (sexp_to_key): Removed unused variable: algo. | |
| (sexp_to_sig): Likewise. | |
| * cipher.c: Named struct for cipher_table `cipher_table_entry'. | |
| (cipher_table_entry): New member: algorithm; filled in. | |
| (gcry_cipher_register_default): Used algorithm ID from | |
| cipher_table. | |
| (gcry_cipher_register): New argument: algorithm_id, filled in. | |
| (gcry_cipher_map_name): Used algorithm ID from module structure. | |
| * arcfour.c (cipher_spec_arcfour): Removed algorithm ID. | |
| * blowfish.c (cipher_spec_blowfish): Likewise. | |
| * cast5.c (cipher_spec_cast5): Likewise. | |
| * crc.c (digest_spec_crc32): Likewise. | |
| * crc.c (digest_spec_crc32_rfc1510): Likewise. | |
| * crc.c (digest_spec_crc32_rfc2440): Likewise. | |
| * des.c (cipher_spec_des): Likewise. | |
| * des.c (cipher_spec_tripledes): Likewise. | |
| * dsa.c (pubkey_spec_dsa): Likewise. | |
| * elgamal.c (pubkey_spec_elg): Likewise. | |
| * md4.c (digest_spec_md4): Likewise. | |
| * md5.c (digest_spec_md5): Likewise. | |
| * aes.c (cipher_spec_aes): Likewise. | |
| * aes.c (cipher_spec_aes192): Likewise. | |
| * aes.c (cipher_spec_aes256): Likewise. | |
| * rsa.c (pubkey_spec_rsa): Likewise. | |
| * sha1.c (digest_spec_sha1): Likewise. | |
| * sha256.c (digest_spec_sha256): Likewise. | |
| * sha512.c (digest_spec_sha512): Likewise. | |
| * tiger.c (digest_spec_tiger): Likewise. | |
| * twofish.c (cipher_spec_twofish): Likewise. | |
| * twofish.c (cipher_spec_twofish128): Likewise. | |
| * Makefile.am (EXTRA_libcipher_la_SOURCES): Fix list of source | |
| files; reported by Simon Josefsson <jas@extundo.com>. | |
| * pubkey.c: Replaced all occurences of `id' with `algorithm', | |
| since `id' is a keyword in obj-c. | |
| * md.c: Likewise. | |
| * cipher.c: Likewise. | |
| * crc.c, md4.c, md5.c, rmd160.c, sha1.c, sha256.c, tiger.c: | |
| Replaced all occurences of gcry_digest_spec_t with gcry_md_spec_t. | |
| * dsa.c, rsa.c, elgamal.c: Replaced all occurencens of | |
| gcry_pubkey_spec_t with gcry_pk_spec_t. | |
| * md.c: Replaced all occurences of gcry_digest_spec_t with | |
| gcry_md_spec_t. | |
| (gcry_digest_register_default): Renamed to ... | |
| (gcry_md_register_default): ... this; adjusted callers. | |
| (gcry_digest_lookup_func_name): Renamed to ... | |
| (gcry_md_lookup_func_name): ... this; adjusted callers. | |
| (gcry_digest_lookup_name): Renamed to ... | |
| (gcry_md_lookup_name): ... this; adjusted callers. | |
| (gcry_digest_register): Renamed to ... | |
| (gcry_md_register): ... this. | |
| (gcry_digest_unregister): Renamed to ... | |
| (gcry_md_unregister): ... this. | |
| * pubkey.c (gcry_pubkey_register): Renamed to ... | |
| (gcry_pk_register): ... this. | |
| (gcry_pubkey_unregister): Renamed to ... | |
| (gcry_pk_unregister): ... this. | |
| Replaced all occurences of gcry_pubkey_spec_t with gcry_pk_spec_t. | |
| (gcry_pubkey_register_default): Renamed to ... | |
| (gcry_pk_register_default): ... this; adjusted callers. | |
| (gcry_pubkey_lookup_func_name): Renamed to ... | |
| (gcry_pk_lookup_func_name): ... this; adjusted callers. | |
| (gcry_pubkey_lookup_name): Renamed to ... | |
| (gcry_pk_lookup_name): ... this; adjusted callers. | |
| * md.c (gcry_md_hash_buffer): Fix error checking. Thanks to Simon | |
| Josefsson <jas@extunde.com>. | |
| 2003-07-04 Moritz Schulte <moritz@g10code.com> | |
| * cipher.c (gcry_cipher_list): New function. | |
| 2003-07-01 Moritz Schulte <moritz@g10code.com> | |
| * pubkey.c (sexp_to_sig): Accept a `flags' S-expression to be more | |
| consistent with sexp_to_enc. | |
| 2003-06-30 Moritz Schulte <moritz@g10code.com> | |
| * Makefile.am (libcipher_la_SOURCES): Added: ac.c. | |
| * pubkey.c (_gcry_pk_module_lookup): New function. | |
| (_gcry_pk_module_release): New function. | |
| 2003-06-29 Moritz Schulte <moritz@g10code.com> | |
| * ac.c: New file. | |
| 2003-06-26 Werner Koch <wk@gnupg.org> | |
| * md.c (gcry_md_hash_buffer): Trigger BUG correcly with new API. | |
| 2003-06-19 Werner Koch <wk@gnupg.org> | |
| * md.c (gcry_md_is_enabled): Fixed. | |
| 2003-06-18 Werner Koch <wk@gnupg.org> | |
| * cipher.c (gcry_cipher_get_algo_keylen): New. | |
| (gcry_cipher_get_algo_blklen): New. | |
| 2003-06-18 Moritz Schulte <moritz@g10code.com> | |
| * arcfour.c, cipher.c, blowfish.c, md.c, cast5.c, pubkey.c, crc.c, | |
| des.c, dsa.c, elgamal.c, md4.c, md5.c, random.c, rijndael.c, | |
| rmd160.c, rsa.c, sha1.c, sha256.c, sha512.c, tiger.c, twofish.c: | |
| Replaced older types GcryDigestSpec, GcryCipherSpec and | |
| GcryPubkeySpec with newer types: gcry_digest_spec_t, | |
| gcry_cipher_spec_t and gcry_pubkey_spec_t. | |
| * md.c (gcry_digest_id_new): Removed function. | |
| (gcry_digest_register): Removed code for generating a new module | |
| ID. | |
| * pubkey.c (gcry_pubkey_id_new): Removed function. | |
| (gcry_pubkey_register): Removed code for generating a new module | |
| ID. | |
| * cipher.c, md.c, pubkey.c: Replace old type GcryModule with newer | |
| one: gcry_module_t. | |
| (gcry_cipher_id_new): Removed function. | |
| (gcry_cipher_register): Removed code for generating a new module | |
| ID. | |
| * cipher.c (gcry_cipher_register): Adjust call to | |
| _gcry_module_add. | |
| (gcry_cipher_register_default): Likewise. | |
| * pubkey.c (gcry_pubkey_register_default): Likewise. | |
| (gcry_pubkey_register): Likewise. | |
| * md.c (gcry_digest_register_default): Likewise. | |
| (gcry_digest_register): Likewise. | |
| * md.c (gcry_digest_lookup_func_id): Removed function. | |
| (gcry_digest_lookup_id): Likewise. | |
| (gcry_digest_id_new): Use _gcry_module_lookup_id instead of | |
| gcry_digest_lookup_id. | |
| (digest_algo_to_string): Likewise. | |
| (check_digest_algo): Likewise. | |
| (md_enable): Likewise. | |
| (md_digest_length): Likewise. | |
| (md_asn_oid): Likewise. | |
| * pubkey.c (gcry_pubkey_lookup_id): Removed function. | |
| (gcry_pubkey_lookup_func_id): Likewise. | |
| (gcry_pubkey_id_new): Use _gcry_module_lookup_id instead of | |
| gcry_pubkey_id_new. | |
| (gcry_pk_algo_name): Likewise. | |
| (disable_pubkey_algo): Likewise. | |
| (check_pubkey_algo): Likewise. | |
| (pubkey_get_npkey): Likewise. | |
| (pubkey_get_nskey): Likewise. | |
| (pubkey_get_nsig): Likewise. | |
| (pubkey_get_nenc): Likewise. | |
| (pubkey_generate): Likewise. | |
| (pubkey_check_secret_key): Likewise. | |
| (pubkey_encrypt): Likewise. | |
| (pubkey_decrypt): Likewise. | |
| (pubkey_sign): Likewise. | |
| (pubkey_verify): Likewise. | |
| (gcry_pk_algo_info): Likewise. | |
| * cipher.c (gcry_cipher_lookup_func_id): Removed function. | |
| (gcry_cipher_lookup_id): Likewise. | |
| (cipher_algo_to_string): use _gcry_module_lookup_id instead of | |
| gcry_cipher_lookup_id. | |
| (disable_cipher_algo): Likewise. | |
| (check_cipher_algo): Likewise. | |
| (cipher_get_blocksize): Likewise. | |
| (gcry_cipher_open): Likewise. | |
| (gcry_cipher_id_new): Likewise. | |
| 2003-06-17 Moritz Schulte <moritz@g10code.com> | |
| * Makefile.am (GCRYPT_MODULES): Set to @GCRYPT_CIPHERS@, | |
| @GCRYPT_PUBKEY_CIPHERS@, @GCRYPT_DIGESTS@ and @GCRYPT_RANDOM@. | |
| (libcipher_la_DEPENDENCIES): Set to $(GCRYPT_MODULES). | |
| (libcipher_la_LIBADD): Likewise. | |
| (AM_CFLAGS): Added: @GPG_ERROR_CFLAGS@. | |
| (EXTRA_libcipher_la_SOURCES): Added all conditional sources. | |
| * md.c (md_open): Use _gcry_fast_random_poll instead of | |
| fast_random_poll. | |
| * cipher.c (gcry_cipher_open): Likewise. | |
| * random.h (fast_random_poll): Removed macro. | |
| * blowfish.c, md4.c, md5.c, rmd160.c, sha1.c, sha256.c, sha512.c, | |
| tiger.c: Use Autoconf's WORDS_BIGENDIAN instead of our own | |
| BIG_ENDIAN_HOST. | |
| 2003-06-16 Moritz Schulte <moritz@g10code.com> | |
| * random.c (getfnc_gather_random): Do not special-case | |
| USE_ALL_RANDOM_MODULES, make it the default. | |
| * dsa.c: Replace last occurences of old type names with newer | |
| names (i.e. replace MPI with gcry_mpi_t). | |
| * elgamal.c: Likewise. | |
| * primegen.c: Likewise. | |
| * pubkey.c: Likewise. | |
| * rsa.c: Likewise. | |
| 2003-06-14 Moritz Schulte <moritz@g10code.com> | |
| * des.c (des_setkey): Add selftest check. | |
| (tripledes_set3keys): Likewise. | |
| (do_tripledes_setkey): Remove selftest check. | |
| (do_des_setkey): Likewise. | |
| 2003-06-11 Moritz Schulte <moritz@g10code.com> | |
| * md.c (_gcry_md_init): New function. | |
| * cipher.c (_gcry_cipher_init): New function. | |
| * pubkey.c (_gcry_pk_init): New function. | |
| 2003-06-13 Werner Koch <wk@gnupg.org> | |
| * md.c (gcry_md_get_algo): Reverted to old API. This is a | |
| convenience function anyway and error checking is not approriate. | |
| (gcry_md_is_secure): New. | |
| (gcry_md_is_enabled): New. | |
| 2003-06-12 Werner Koch <wk@gnupg.org> | |
| * cipher.c (gcry_cipher_open): Make sure HANDLE is set to NULL on | |
| error. | |
| 2003-06-11 Werner Koch <wk@gnupg.org> | |
| * md.c (gcry_md_open): Make sure H receives either NULL or an | |
| valid handle. | |
| (gcry_md_copy): Swapped arguments so that it is more in lione with | |
| md_open and most other API fucntions like memcpy (destination | |
| comes first). Make sure HANDLE is set to NULL on error. | |
| * rijndael.c (do_encrypt): Hack to force correct alignment. It | |
| seems not to be not sufficient, though. We should rework this | |
| fucntions and remove all these ugly casts. Let the compiler | |
| optimize or have an assembler implementation. | |
| 2003-06-09 Moritz Schulte <moritz@g10code.com> | |
| * Makefile.am: Removed rules serpent, since that is not commited | |
| yet. | |
| 2003-06-08 Moritz Schulte <moritz@g10code.com> | |
| * pubkey.c (gcry_pk_encrypt): Improve calculation for size of the | |
| format string. | |
| 2003-06-07 Moritz Schulte <moritz@g10code.com> | |
| * arcfour.c, bithelp.h, blowfish.c, cast5.c, cipher.c, crc.c, | |
| des.c, dsa.c, elgamal.c, md4.c, md5.c, md.c, primegen.c, pubkey.c, | |
| rand-internal.h, random.c, random.h, rijndael.c, rmd160.c, | |
| rmd160test.c, rmd.h, rndeged.c, rndlinux.c, rndunix.c, rndw32.c, | |
| rsa.c, sha1.c, sha256.c, sha512.c, tiger.c, twofish.c: Edited all | |
| preprocessor instructions to remove whitespace before the '#'. | |
| This is not required by C89, but there are some compilers out | |
| there that don't like it. Replaced any occurence of the now | |
| deprecated type names with the new ones. | |
| 2003-06-04 Moritz Schulte <moritz@g10code.com> | |
| * pubkey.c (gcry_pk_encrypt): Construct an arg_list and use | |
| gcry_sexp_build_array instead of gcry_sexp_build. | |
| (gcry_pk_sign): Likewise. | |
| (gcry_pk_genkey): Likewise. | |
| 2003-06-01 Moritz Schulte <moritz@g10code.com> | |
| * dsa.c (_gcry_dsa_generate): Do not check wether the algorithm ID | |
| does indeed belong to DSA. | |
| (_gcry_dsa_sign): Likewise. | |
| (_gcry_dsa_verify): Likewise. | |
| (_gcry_dsa_get_nbits): Likewise. | |
| * elgamal.c (_gcry_elg_check_secret_key): Do not check wether the | |
| algorithm ID does indeed belong to ElGamal. | |
| (_gcry_elg_encrypt): Likewise. | |
| (_gcry_elg_decrypt): Likewise. | |
| (_gcry_elg_sign): Likewise. | |
| (_gcry_elg_verify): Likewise. | |
| (_gcry_elg_get_nbits): Likewise. | |
| (_gcry_elg_generate): Likewise. | |
| * rsa.c (_gcry_rsa_generate): Do not check wether the algorithm ID | |
| does indeed belong to RSA. | |
| (_gcry_rsa_encrypt): Likewise. | |
| (_gcry_rsa_decrypt): Likewise. | |
| (_gcry_rsa_sign): Likewise. | |
| (_gcry_rsa_verify): Likewise. | |
| (_gcry_rsa_get_nbits): Likewise. | |
| 2003-05-30 Moritz Schulte <moritz@g10code.com> | |
| * md.c (md_get_algo): Return zero in case to algorithm is enabled. | |
| * md.c (gcry_md_info): Adjusted for new no-errno-API. | |
| (md_final): Likewise. | |
| (gcry_md_get_algo): Likewise. | |
| * pubkey.c (gcry_pk_get_keygrip): Likewise. | |
| (gcry_pk_ctl): Likewise. | |
| (gcry_pk_algo_info): Likewise. | |
| * des.c (selftest): Likewise. | |
| 2003-05-29 Moritz Schulte <moritz@g10code.com> | |
| * md.c (md_enable): Do not forget to release module on error. | |
| (gcry_md_open): Adjusted for new no-errno-API. | |
| (md_open): Likewise. | |
| (md_copy): Likewise. | |
| (gcry_md_copy): Likewise. | |
| (gcry_md_setkey): Likewise. | |
| (gcry_md_algo_info): Likewise. | |
| * cipher.c (gcry_cipher_open): Adjusted for new no-errno-API and | |
| also fixed a locking bug. | |
| (gcry_cipher_encrypt): Adjusted for new no-errno-API. | |
| (gcry_cipher_decrypt): Likewise. | |
| (gcry_cipher_ctl): Likewise. | |
| (gcry_cipher_info): Likewise. | |
| (gcry_cipher_algo_info): Likewise. | |
| 2003-05-28 Moritz Schulte <moritz@g10code.com> | |
| * md.c (md_enable): Adjusted for libgpg-error. | |
| (gcry_md_enable): Likewise. | |
| (gcry_digest_register_default): Likewise. | |
| (gcry_digest_register): Likewise. | |
| (check_digest_algo): Likewise. | |
| (prepare_macpads): Likewise. | |
| (gcry_md_setkey): Likewise. | |
| (gcry_md_ctl): Likewise. | |
| (gcry_md_get): Likewise. | |
| (gcry_md_algo_info): Likewise. | |
| (gcry_md_info): Likewise. | |
| * dsa.c (_gcry_dsa_generate): Likewise. | |
| (_gcry_dsa_check_secret_key): Likewise. | |
| (_gcry_dsa_sign): Likewie. | |
| (_gcry_dsa_verify): Likewise. | |
| * twofish.c (do_twofish_setkey): Likewise. | |
| (twofish_setkey): Likewise. | |
| * cipher.c (gcry_cipher_register): Likewise. | |
| 2003-05-25 Moritz Schulte <moritz@g10code.com> | |
| * rijndael.c (do_setkey): Adjusted for libgpg-error. | |
| (rijndael_setkey): Likewise. | |
| * random.c (gcry_random_add_bytes): Likewise. | |
| * elgamal.c (_gcry_elg_generate): Likewise. | |
| (_gcry_elg_check_secret_key): Likewise. | |
| (_gcry_elg_encrypt): Likewise. | |
| (_gcry_elg_decrypt): Likewise. | |
| (_gcry_elg_sign): Likewise. | |
| (_gcry_elg_verify): Likewise. | |
| * rsa.c (_gcry_rsa_generate): Likewise. | |
| (_gcry_rsa_check_secret_key): Likewise. | |
| (_gcry_rsa_encrypt): Likewise. | |
| (_gcry_rsa_decrypt): Likewise. | |
| (_gcry_rsa_sign): Likewise. | |
| (_gcry_rsa_verify): Likewise. | |
| * pubkey.c (dummy_generate, dummy_check_secret_key, dummy_encrypt, | |
| dummy_decrypt, dummy_sign, dummy_verify): Likewise. | |
| (gcry_pubkey_register): Likewise. | |
| (check_pubkey_algo): Likewise. | |
| (pubkey_generate): Likewise. | |
| (pubkey_check_secret_key): Likewise. | |
| (pubkey_encrypt): Likewise. | |
| (pubkey_decrypt): Likewise. | |
| (pubkey_sign): Likewise. | |
| (pubkey_verify): Likewise. | |
| (sexp_elements_extract): Likewise. | |
| (sexp_to_key): Likewise. | |
| (sexp_to_sig): Likewise. | |
| (sexp_to_enc): Likewise. | |
| (sexp_data_to_mpi): Likewise. | |
| (gcry_pk_encrypt): Likewise. | |
| (gcry_pk_decrypt): Likewise. | |
| (gcry_pk_sign): Likewise. | |
| (gcry_pk_verify): Likewise. | |
| (gcry_pk_testkey): Likewise. | |
| (gcry_pk_genkey): Likewise. | |
| (gcry_pk_ctl): Likewise. | |
| * cipher.c (dummy_setkey): Likewise. | |
| (check_cipher_algo): Likewise. | |
| (gcry_cipher_open): Likewise. | |
| (cipher_setkey): Likewise. | |
| (gcry_cipher_ctl): Likewise. | |
| (cipher_encrypt): Likewise. | |
| (gcry_cipher_encrypt): Likewise. | |
| (cipher_decrypt): Likewise. | |
| (gcry_cipher_decrypt): Likewise. | |
| (gcry_cipher_info): Likewise. | |
| (gcry_cipher_algo_info): Likewise. | |
| * cast5.c (cast_setkey): Likewise. | |
| (do_cast_setkey): Likewise. | |
| * arcfour.c (arcfour_setkey): Likewise. | |
| (do_arcfour_setkey): Likewise. | |
| * blowfish.c (do_bf_setkey): Likewise. | |
| (bf_setkey): Likewise. | |
| * des.c (do_des_setkey): Likewise. | |
| (do_tripledes_setkey): Likewise. | |
| 2003-05-22 Moritz Schulte <moritz@g10code.com> | |
| * tiger.c: Merged code ussing the U64_C macro from GnuPG. | |
| * sha512.c: Likewise. | |
| 2003-05-17 Moritz Schulte <moritz@g10code.com> | |
| * pubkey.c (gcry_pk_genkey): Fix type: acquire a lock, instead of | |
| releasing it. | |
| 2003-05-11 Moritz Schulte <moritz@g10code.com> | |
| * pubkey.c (gcry_pk_testkey): Call REGISTER_DEFAULT_CIPHERS. | |
| (gcry_pk_ctl): Likewise. | |
| 2003-04-27 Moritz Schulte <moritz@g10code.com> | |
| * pubkey.c (gcry_pk_genkey): Release sexp after extracted data has | |
| been used. | |
| * md.c (gcry_md_get_algo_dlen): Simplified, simply call | |
| md_digest_length to do the job. | |
| * des.c (do_des_setkey): Check for selftest failure not only | |
| during initialization. | |
| (do_tripledes_setkey): Include check for selftest failure. | |
| * pubkey.c (gcry_pubkey_register_default): New macro | |
| `pubkey_use_dummy', use it. | |
| * elgamal.c (elg_names): New variable. | |
| (pubkey_spec_elg): Include elg_names. | |
| * dsa.c (dsa_names): New variable. | |
| (pubkey_spec_dsa): Include dsa_names. | |
| * rsa.c (rsa_names): New variable. | |
| (pubkey_spec_rsa): Include rsa_names. | |
| * pubkey.c (gcry_pubkey_lookup_func_name): Compare name also with | |
| the names listed in `sexp_names'. | |
| 2003-04-24 Moritz Schulte <moritz@g10code.com> | |
| * pubkey.c (sexp_to_key): New variables: module, pubkey. Adjusted | |
| to new module interface. | |
| (sexp_to_key): Changend type of argument `retalgo' from `int *' to | |
| `GcryModule **'. Adjusted all callers. Removed argument: | |
| r_algotblidx. | |
| (sexp_to_sig): Changend type of argument `retalgo' from `int *' to | |
| `GcryModule **'. Adjusted all callers. | |
| (sexp_to_enc): Likewise. | |
| (pubkey_get_npkey, pubkey_get_nskey, pubkey_get_nsig, | |
| pubkey_get_nenc): Use strlen to find out the number. | |
| * rsa.c: Adjust pubkey_spec_rsa to new internal interface. | |
| * dsa.c: Likewise. | |
| * elgamal.c: Likewise. | |
| 2003-04-17 Moritz Schulte <moritz@g10code.com> | |
| * pubkey.c (sexp_elements_extract): New function. | |
| * pubkey.c (sexp_to_key): Removed variable `idx', added `err', use | |
| sexp_elements_extract. | |
| (sexp_to_sig): Likewise. | |
| (sexp_to_enc): Likewise. | |
| * pubkey.c: Terminate list correctly. | |
| * md.c: Include sha512/sha384 in digest_table. | |
| 2003-04-16 Moritz Schulte <moritz@g10code.com> | |
| * Makefile.am: Include support for sha512.c. | |
| * sha512.c: New file, merged from GnuPG, with few modifications | |
| for libgcrypt. | |
| * rand-internal.h: Removed declarations for constructor functions. | |
| * md.c (md_copy): Call _gcry_module_use for incrementing the usage | |
| counter of the digest modules. | |
| * rsa.c: Do not include "rsa.h". | |
| * dsa.c: Do not include "dsa.h". | |
| * elgamal.c: Do not include "elgamal.h". | |
| * des.c: Do not include "des.h". | |
| * cast5.c: Do not include "cast5.h". | |
| * blowfish.c: Do not include "blowfish.h". | |
| * arcfour.c: Do not include "arcfour.h". | |
| * Makefile.am (libcipher_la_DEPENDENCIES): Removed. | |
| (libcipher_la_LIBADD): Removed. | |
| Use Automake conditionals for conditional compilation. | |
| 2003-04-13 Moritz Schulte <moritz@g10code.com> | |
| * cipher.c (gcry_cipher_open): Call REGISTER_DEFAULT_CIPHERS. | |
| * md.c (gcry_md_list): New member: module. | |
| (md_enable): New variable: module, changed use of module and | |
| digest. | |
| (md_enable): Initialize member: module. | |
| (md_close): Call _gcry_module_release. | |
| * cipher.c (gcry_cipher_open): New variable: module, changed use of | |
| module and cipher. | |
| (struct gcry_cipher_handle): New member: module. | |
| (gcry_cipher_open): Initialize member: module. | |
| (gcry_cipher_close): Call _gcry_module_release. | |
| 2003-04-09 Moritz Schulte <moritz@g10code.com> | |
| * cipher.c: Include "ath.h". | |
| * md.c: Likewise. | |
| * pubkey.c: Likewise. | |
| * cipher.c (ciphers_registered_lock): New variable. | |
| * md.c (digests_registered_lock): New variable. | |
| * pubkey.c (pubkeys_registered_lock): New variable. | |
| * rndlinux.c (gnupgext_version, func_table): Removed definitions. | |
| (gnupgext_enum_func): Removed function. | |
| (_gcry_rndlinux_constructor): Removed function. | |
| * rndegd.c (gnupgext_version, func_table): Removed definitions. | |
| (gnupgext_enum_func): Removed function. | |
| (_gcry_rndegd_constructor): Removed function. | |
| * rndunix.c (gnupgext_version, func_table): Removed definitions. | |
| (gnupgext_enum_func): Removed function. | |
| (_gcry_rndunix_constructor): Removed function. | |
| * rndw32.c (gnupgext_version, func_table): Removed definitions. | |
| (gnupgext_enum_func): Removed function. | |
| (_gcry_rndw32_constructor): Removed function. | |
| * rndegd.c (rndegd_connect_socket): Simplify code for creating the | |
| egd socket address. | |
| (rndegd_connect_socket): Call log_fatal use instead of | |
| g10_log_fatal. | |
| (egd_gather_random): Renamed to ... | |
| (rndegd_gather_random): ... here. | |
| 2003-04-08 Moritz Schulte <moritz@g10code.com> | |
| * rndlinux.c: Do not include "dynload.h". | |
| * rndunix.c: Likewise. | |
| * rndw32.c: Likewise. | |
| * rndegd.c (rndegd_connect_socket): Factored out from ... | |
| (egd_gather_random): here; call it. | |
| (egd_socket): New variable. | |
| (egd_gather_random): Initialize fd with egd_socket, do not declare | |
| fd static. | |
| (do_read): Merged few changes from GnuPG. FIXME - not finished? | |
| Do not include "dynload.h". | |
| * rndw32.c (gather_random): Renamed to rndw32_gather_random, do | |
| not declare static. | |
| (gather_random_fast): Renamed to rndw32_gather_random_fast, do not | |
| declare static. | |
| * rndunix.c (gather_random): Renamed to rndunix_gather_random, do | |
| not declare static. | |
| * rndegd.c (gather_random): Renamed to rndegd_gather_random, do | |
| not declare static. | |
| * rndlinux.c (gather_random): Renamed to rndlinux_gather_random, | |
| do not declare static. | |
| 2003-04-07 Moritz Schulte <moritz@g10code.com> | |
| * Makefile.am (libcipher_la_SOURCES): Removed construct.c. | |
| (libcipher_la_SOURCES): Added sha1.c, sha256.c, rmd160.c, md4.c, | |
| md5.c, tiger.c and crc.c | |
| (EXTRA_PROGRAMS): Removed sha1, sha256, rmd160, md4, md5, tiger | |
| and crc. Removed definitions: EXTRA_md4_SOURCES, | |
| EXTRA_md5_SOURCES, EXTRA_rmd160_SOURCES, EXTRA_sha1_SOURCES, | |
| EXTRA_sha256_SOURCES, EXTRA_tiger_SOURCES and EXTRA_crc_SOURCES, | |
| BUILT_SOURCES, DISTCLEANFILES. | |
| * pubkey.c: Do not include "elgamal.h", "dsa.h" and "rsa.h". | |
| * Makefile.am (libcipher_la_SOURCES): Removed rsa.h, elgamal.h, | |
| dsa.h, des.h, cast5.h, arcfour.h and blowfish.h. | |
| * rsa.h: Removed file. | |
| * elgamal.h: Removed file. | |
| * dsa.h: Removed file. | |
| * des.h: Removed file. | |
| * cast5.h: Removed file. | |
| * arcfour.h: Removed file. | |
| * blowfish.h: Removed file. | |
| * Makefile.am (libcipher_la_SOURCES): Removed dynload.c and | |
| dynload.h. | |
| * rsa.c (pubkey_spec_rsa): New variable. | |
| * dsa.c (pubkey_spec_rsa): New variable. | |
| * elgamal.c (pubkey_spec_elg): New variable. | |
| * rsa.c (_gcry_rsa_get_info): Removed function. | |
| * elgamal.c (_gcry_elg_get_info): Removed function. | |
| * dsa.c (_gcry_dsa_get_info): Removed function. | |
| * tiger.c (tiger_get_info): Removed function. | |
| (gnupgext_version, func_table): Removed definitions. | |
| (gnupgext_enum_func): Removed function. | |
| (_gcry_tiger_constructor): Removed function. | |
| * sha1.c (sha1_get_info): Removed function. | |
| (gnupgext_version, func_table): Removed definitions. | |
| (gnupgext_enum_func): Removed function. | |
| (_gcry_sha1_constructor): Removed function. | |
| * sha256.c (sha256_get_info): Removed function. | |
| (gnupgext_version, func_table): Removed definitions. | |
| (gnupgext_enum_func): Removed function. | |
| (_gcry_sha256_constructor): Removed function. | |
| * rmd160.c (rmd160_get_info): Removed function. | |
| (gnupgext_version, func_table): Removed definitions. | |
| (gnupgext_enum_func): Removed function. | |
| (_gcry_rmd160_constructor): Removed function. | |
| * md5.c (md5_get_info): Removed function. | |
| (gnupgext_version, func_table): Removed definitions. | |
| (gnupgext_enum_func): Removed function. | |
| (_gcry_md5_constructor): Removed function. | |
| * md4.c (md4_get_info): Removed function. | |
| (gnupgext_version, func_table): Removed definitions. | |
| (gnupgext_enum_func): Removed function. | |
| (_gcry_md4_constructor): Removed function. | |
| * crc.c (crc_get_info): Removed function. | |
| * arcfour.c (do_arcfour_setkey): Changed type of context argument | |
| to `void *', added local variable for cast, adjusted callers. | |
| (arcfour_setkey): Likewise. | |
| (encrypt_stream): Likewise. | |
| * cast5.c (cast_setkey): Likewise. | |
| (encrypt_block): Likewise. | |
| * rijndael.c (rijndael_setkey): Likewise. | |
| (rijndael_encrypt): Likewise. | |
| (rijndael_decrypt): Likewise. | |
| * twofish.c (twofish_setkey): Likewise. | |
| (twofish_encrypt): Likewise. | |
| (twofish_decrypt): Likewise. | |
| * des.c (do_des_setkey): Likewise. | |
| (do_des_encrypt): Likewise. | |
| (do_des_encrypt): Likewise. | |
| (do_tripledes_encrypt): Likewise. | |
| (do_tripledes_encrypt): Likewise. | |
| * blowfish.c (bf_setkey: Likewise. | |
| (encrypt_block): Likewise. | |
| (decrypt_block): Likewise. | |
| * arcfour.c (encrypt_stream): Likewise. | |
| * rijndael.c (gnupgext_version, func_table): Removed definitions. | |
| (gnupgext_enum_func) Removed function. | |
| * twofish.c (gnupgext_version, func_table): Removed definitions. | |
| (gnupgext_enum_func) Removed function. | |
| * cast5.c (CIPHER_ALGO_CAST5): Removed. | |
| * blowfish.c (FNCCAST_SETKEY, FNCCAST_CRYPT): Removed macros. | |
| (CIPHER_ALGO_BLOWFISH): Removed symbol. | |
| * cast5.c (FNCCAST_SETKEY, FNCCAST_CRYPT): Likewise. | |
| * des.c (selftest_failed): Removed. | |
| (initialized): New variable. | |
| (do_des_setkey): Run selftest, if not yet done. | |
| (FNCCAST_SETKEY, FNCCAST_CRYPT): Removed macros. | |
| * arcfour.c (_gcry_arcfour_get_info): Removed function. | |
| * blowfish.c (_gcry_blowfish_get_info): Removed function. | |
| * cast5.c (_gcry_cast5_get_info): Removed function. | |
| * des.c (_gcry_des_get_info): Removed function. | |
| * rijndael.c (_gcry_rijndael_get_info): Removed function. | |
| * twofish.c (_gcry_twofish_get_info): Removed function. | |
| * arcfour.c (cipher_spec_arcfour): New variable. | |
| * twofish.c (cipher_spec_twofish, cipher_spec_twofish128): New | |
| variables. | |
| * rijndael.c (cipher_spec_aes, cipher_spec_aes192, | |
| cipher_spec256): New variables. | |
| * des.c (cipher_spec_des, cipher_spec_tripledes): New variables. | |
| * cast5.c (cipher_spec_cast5): New variable. | |
| * blowfish.c (cipher_spec_blowfish): Likewise. | |
| * twofish.c: Do not include "dynload.h". | |
| * rijndael.c: Likewise. | |
| * des.c: Likewise. | |
| * cast5.c: Likewise. | |
| * blowfish.c: Likewise. | |
| * cipher.c: Likewise. | |
| * crc.c: Likewise. | |
| * md4.c: Likewise. | |
| * md5.c: Likewise. | |
| * md.c: Likewise. | |
| * pubkey.c: Likewise. | |
| * rijndael.c: Likewise. | |
| * sha1.c: Likewise. | |
| * sha256.c: Likewise. | |
| * arcfour.c: Include "cipher.h". | |
| * twofish.c: Likewise. | |
| * rijndael.c: Likewise. | |
| * des.c: Likewise. | |
| * cast5.c: Likewise. | |
| * blowfish.c: Likewise. | |
| * twofish.c (twofish_setkey): Declared argument `key' const. | |
| (twofish_encrypt): Declared argument `inbuf' const. | |
| (twofish_decrypt): Likewise. | |
| * rijndael.c (rijndael_setkey): Declared argument `key' const. | |
| (rijndael_encrypt): Declared argument `inbuf' const. | |
| (rijndael_decrypt): Likewise. | |
| * des.c (do_des_setkey): Declared argument `key' const. | |
| (do_tripledes_setkey): Likewise. | |
| (do_des_encrypt): Declared argument `inbuf' const. | |
| (do_des_decrypt): Likewise. | |
| (do_tripledes_encrypt): Likewise. | |
| (do_tripledes_decrypt): Likewise. | |
| * cast5.c (encrypt_block): Declared argument `inbuf' const. | |
| (decrypt_block): Likewise. | |
| (cast_setkey): Declared argument `key' const. | |
| * blowfish.c (do_bf_setkey): Declared argument `key' const. | |
| (encrypt_block): Declared argument `inbuf' const. | |
| (encrypt_block): Likewise. | |
| * cipher.c: Remove CIPHER_ALGO_DUMMY related code. | |
| Removed struct cipher_table_s. | |
| Changed definition of cipher_table. | |
| Removed definition of disabled_algos. | |
| (ciphers_registered, default_ciphers_registered): New variables. | |
| (REGISTER_DEFAULT_CIPHERS): New macro. | |
| (dummy_setkey): Declared argument `key' const. | |
| (dummy_encrypt_block): Declared argument `inbuf' const. | |
| (dummy_encrypt_block): Likewise. | |
| (dummy_encrypt_stream): Likewise. | |
| (dummy_encrypt_stream): Likewise. | |
| (dummy_setkey): Use `unsigned char' instead of `byte'. | |
| (dummy_encrypt_block): Likewise. | |
| (dummy_decrypt_block): Likewise. | |
| (dummy_encrypt_stream): Likewise. | |
| (dummy_decrypt_stream): Likewise. | |
| (gcry_cipher_register_default): New function. | |
| (gcry_cipher_lookup_func_id): New function. | |
| (gcry_cipher_lookup_func_name): New function. | |
| (gcry_cipher_lookup_id): New function. | |
| (gcry_cipher_lookup_name): New function. | |
| (gcry_cipher_id_new): New function. | |
| (gcry_cipher_register): New function. | |
| (gcry_cipher_unregister): New function. | |
| (setup_cipher_table): Removed function. | |
| (load_cipher_modules): Removed function. | |
| (gcry_cipher_map_name): Adjusted to use new module management. | |
| (cipher_algo_to_string): Likewise. | |
| (disable_cipher_algo): Likewise. | |
| (check_cipher_algo): Likewise. | |
| (cipher_get_keylen): Likewise. | |
| (cipher_get_blocksize): Likewise. | |
| (gcry_cipher_open): Likewise. | |
| (struct gcry_cipher_handle): Replaced members algo, algo_index, | |
| blocksize, setkey, encrypt, decrypt, stencrypt, stdecrypt with one | |
| member: cipher. | |
| (gcry_cipher_open): Adjusted code for new handle structure. | |
| (cipher_setkey): Likewise. | |
| (cipher_setiv): Likewise. | |
| (cipher_reset): Likewise. | |
| (do_ecb_encrypt): Likewise. | |
| (do_ecb_decrypt): Likewise. | |
| (do_cbc_encrypt): Likewise. | |
| (do_cbc_decrypt): Likewise. | |
| (do_cfb_encrypt): Likewise. | |
| (do_cfb_decrypt): Likewise. | |
| (do_ctr_encrypt): Likewise. | |
| (cipher_encrypt): Likewise. | |
| (gcry_cipher_encrypt): Likewise. | |
| (cipher_decrypt): Likewise. | |
| (gcry_cipher_decrypt): Likewise. | |
| (cipher_sync): Likewise. | |
| (gcry_cipher_ctl): Likewise. | |
| * pubkey.c: Removed struct pubkey_table_s. | |
| Changed definition of pubkey_table. | |
| Removed definition of disabled_algos. | |
| (pubkeys_registered, default_pubkeys_registered): New variables. | |
| (REGISTER_DEFAULT_PUBKEYS): New macro. | |
| (setup_pubkey_table): Removed function. | |
| (load_pubkey_modules): Removed function. | |
| (gcry_pubkey_register_default): New function. | |
| (gcry_pubkey_lookup_func_id): New function. | |
| (gcry_pubkey_lookup_func_name): New function. | |
| (gcry_pubkey_lookup_id): New function. | |
| (gcry_pubkey_lookup_name): New function. | |
| (gcry_pubkey_id_new): New function. | |
| (gcry_pubkey_register): New function. | |
| (gcry_pubkey_unregister): New function. | |
| (gcry_pk_map_name): Adjusted to use new module management. | |
| (gcry_pk_algo_name): Likewise. | |
| (disable_pubkey_algo): Likewise. | |
| (check_pubkey_algo): Likewise. | |
| (pubkey_get_npkey): Likewise. | |
| (pubkey_get_nskey): Likewise. | |
| (pubkey_get_nsig): Likewise. | |
| (pubkey_get_nenc): Likewise. | |
| (pubkey_generate): Likewise. | |
| (pubkey_check_secret_key): Likewise. | |
| (pubkey_encrypt): Likewise. | |
| (pubkey_decrypt): Likewise. | |
| (pubkey_sign): Likewise. | |
| (pubkey_verify): Likewise. | |
| (gcry_pk_get_nbits): Likewise. | |
| (gcry_pk_algo_info): Likewise. | |
| * md.c: Removed struct md_digest_list_s. | |
| (digest_list): Changed definition. | |
| (digests_registered, default_digests_registered): New variables. | |
| (REGISTER_DEFAULT_DIGESTS): New macro. | |
| (new_list_item): Removed function. | |
| (setup_md_table): Removed function. | |
| (load_digest_module): Removed function. | |
| (gcry_digest_register_default): New function. | |
| (gcry_digest_lookup_func_id): New function. | |
| (gcry_digest_lookup_func_name): New function. | |
| (gcry_digest_lookup_id): New function. | |
| (gcry_digest_lookup_name): New function. | |
| (gcry_digest_id_new): New function. | |
| (gcry_digest_register): New function. | |
| (gcry_digest_unregister): New function. | |
| (GcryDigestEntry): New type. | |
| (struct gcry_md_context): Adjusted type of `list'. | |
| (gcry_md_map_name): Adjusted to use new module management. | |
| (digest_algo_to_string): Likewise. | |
| (check_digest_algo): Likewise. | |
| (md_enable): Likewise. | |
| (md_digest_length): Likewise. | |
| (md_asn_oid): Likewise. | |
| 2003-04-07 Moritz Schulte <moritz@g10code.com> | |
| * pubkey.c: Replaced PUBKEY_ALGO_DSA with GCRY_PK_DSA, | |
| PUBKEY_ALGO_RSA with GCRY_PK_RSA and PUBKEY_ALGO_ELGAMAL with | |
| GCRY_PK_ELG. | |
| * dsa.c: Replaced PUBKEY_ALGO_DSA with GCRY_PK_DSA. | |
| 2003-04-01 Moritz Schulte <moritz@g10code.com> | |
| * des.c: Removed checks for GCRY_CIPHER_3DES and GCRY_CIPHER_DES. | |
| 2003-03-31 Moritz Schulte <moritz@g10code.com> | |
| * tiger.c (tiger_get_info): Do not declare static. | |
| * sha256.c (sha256_get_info): Likewise. | |
| * sha1.c (sha1_get_info): Likewise. | |
| * rmd160.c (rmd160_get_info): Likewise. | |
| * md5.c (md5_get_info): Likewise. | |
| * md4.c (md4_get_info): Likewise. | |
| * crc.c (crc_get_info): Likewise. | |
| * md.c (load_digest_module): Call setup_md_table during | |
| initialization. | |
| (new_list_item): Link new element into digest_list. | |
| * cipher.c (do_ctr_decrypt): Made do_ctr_encrypt act as a wrapper | |
| for do_ctr_encrypt, since these functions are identical. | |
| 2003-03-30 Simon Josefsson <jas@extundo.com> | |
| * cipher.c (struct gcry_cipher_handle): Add counter field. | |
| (gcry_cipher_open): Add CTR. | |
| (cipher_reset): Clear counter field. | |
| (do_ctr_encrypt, do_ctr_decrypt): New functions. | |
| (cipher_encrypt, cipher_decrypt): Call CTR functions. | |
| (gcry_cipher_ctl): Add SET_CTR to set counter. | |
| 2003-03-30 Moritz Schulte <moritz@g10code.com> | |
| * rsa.c (_gcry_rsa_blind): New function. | |
| (_gcry_rsa_unblind): New function. | |
| (_gcry_rsa_decrypt): Use _gcry_rsa_blind and _gcry_rsa_decrypt. | |
| 2003-03-26 Moritz Schulte <moritz@g10code.com> | |
| * dynload.c (_gcry_enum_gnupgext_pubkeys): Adjust `encrypt' and | |
| `decrypt' function arguments. | |
| (_gcry_enum_gnupgext_pubkeys): Likewise. | |
| * dynload.h: Likewise. | |
| * pubkey.c (dummy_decrypt): Add argument: int flags. | |
| (dummy_encrypt): Likewise. | |
| * elgamal.c (_gcry_elg_encrypt): Add argument: int flags. | |
| (_gcry_elg_decrypt): Likewise. | |
| * rsa.c (_gcry_rsa_encrypt): Add argument: int flags. | |
| (_gcry_rsa_decrypt): Likewise. | |
| * pubkey.c: Add `flags' argument to members `encrypt' and | |
| `decrypt' of struct `pubkey_table_s'. | |
| * rsa.h: Add `flags' argument to function declarations. | |
| * elgamal.h: Likewise. | |
| * pubkey.c (sexp_data_to_mpi): New variable: int parsed_flags. | |
| (sexp_data_to_mpi): Set `parsed_flags'. | |
| (sexp_data_to_mpi): New argument: int *flags. | |
| (gcry_pk_encrypt): New variable: int flags. | |
| (gcry_pk_encrypt): Pass `flags' to pubkey_encrypt. | |
| (pubkey_encrypt): New variable: int flags. | |
| (pubkey_encrypt): Pass `flags' to pubkey encrypt function. | |
| (pubkey_decrypt): Likewise. | |
| (pubkey_decrypt): Pass `flags' to pubkey encrypt function. | |
| (gcry_pk_encrypt): Include `flags' s-exp in return list. | |
| (sexp_to_enc): New argument: int *flags. | |
| (gcry_pk_decrypt): New variable: int flags. | |
| (gcry_pk_decrypt): Pass `flags' to pubkey_decrypt. | |
| (sexp_to_enc): New variable: int parsed_flags. | |
| (sexp_to_enc): Set `parsed_flags'. | |
| 2003-03-22 Simon Josefsson <jas@extundo.com> | |
| * cipher.c (gcry_cipher_open, do_cbc_encrypt) | |
| (gcry_cipher_encrypt): Support GCRY_CIPHER_CBC_MAC. | |
| (gcry_cipher_ctl): Support GCRYCTL_SET_CBC_MAC. | |
| 2003-03-19 Werner Koch <wk@gnupg.org> | |
| * primegen.c (gen_prime): New args EXTRA_CHECK and EXTRA_CHECK_ARG | |
| to allow for a user callback. Changed all callers. | |
| (_gcry_generate_secret_prime) | |
| (_gcry_generate_public_prime): Ditto, pass them to gen_prime. | |
| * rsa.c (check_exponent): New. | |
| (generate): Use a callback to ensure that a given exponent is | |
| actually generated. | |
| 2003-03-12 Moritz Schulte <moritz@g10code.com> | |
| * primegen.c: Initialize `no_of_small_prime_numbers' statically. | |
| (gen_prime): Remove calculation of `no_of_small_prime_numbers'. | |
| 2003-03-03 Moritz Schulte <moritz@g10code.com> | |
| * md.c (gcry_md_ctl): Rewritten to use same style like the other | |
| functions dispatchers. | |
| 2003-03-02 Moritz Schulte <moritz@g10code.com> | |
| * cipher.c (struct gcry_cipher_handle): New member: algo_index. | |
| (gcry_cipher_open): Allocate memory for two cipher contexts. | |
| Initialize algo_index. | |
| (cipher_setkey): Duplicate context into reserved memory. | |
| (cipher_reset): New function, which resets the context and clear | |
| the IV. | |
| (gcry_cipher_ctl): Call cipher_reset. | |
| 2003-02-23 Moritz Schulte <moritz@g10code.com> | |
| * cipher.c: Remove (bogus) `digitp' macro definition. | |
| * md.c: Likewise. | |
| * blowfish.c (burn_stack): Removed. | |
| * arcfour.c (burn_stack): Likewise. | |
| * cast5.c (burn_stack): Likewise. | |
| * des.c (burn_stack): Likewise. | |
| * md4.c (burn_stack): Likewise. | |
| * md5.c (burn_stack): Likewise. | |
| * random.c (burn_stack): Likewise. | |
| * rijndael.c (burn_stack): Likewise. | |
| * rmd160.c (burn_stack): Likewise. | |
| * sha1.c (burn_stack): Likewise. | |
| * sha256.c (burn_stack): Likewise. | |
| * tiger.c (burn_stack): Likewise. | |
| * twofish.c (burn_stack): Likewise. | |
| * blowfish.c: Changed all occurences of burn_stack to | |
| _gcry_burn_stack. | |
| * arcfour.c: Likewise. | |
| * cast5.c: Likewise. | |
| * des.c: Likewise. | |
| * md4.c: Likewise. | |
| * md5.c: Likewise. | |
| * random.c: Likewise. | |
| * rijndael.c: Likewise. | |
| * rmd160.c: Likewise. | |
| * sha1.c: Likewise. | |
| * sha256.c: Likewise. | |
| * tiger.c: Likewise. | |
| * twofish.c: Likewise. | |
| * arcfour.c (_gcry_arcfour_get_info): Use GCRY_CIPHER_ARCFOUR | |
| instead of hard-coded value `301'. | |
| 2003-01-24 Werner Koch <wk@gnupg.org> | |
| * random.c (_gcry_register_random_progress): New. | |
| (_gcry_random_progress): New. | |
| * rndlinux.c (gather_random): Call the random progress function. | |
| 2003-01-23 Werner Koch <wk@gnupg.org> | |
| * rsa.c (generate): New arg USE_E to request a specific public | |
| exponent. | |
| (_gcry_rsa_generate): Ditto. | |
| * elgamal.c (_gcry_elg_generate): Must add an dummy argument | |
| instead of USE_E. | |
| * dsa.c (_gcry_dsa_generate): Ditto. | |
| * pubkey.c (dummy_generate): Ditto. | |
| (pubkey_generate): Add USE_E arg and pass it down. | |
| (gcry_pk_genkey): Detect "rsa-use-e" parameter and pass it to generate. | |
| * pubkey.c (sexp_to_enc): New arg RET_MODERN. | |
| (gcry_pk_decrypt): Make use of it to return a real S-expression. | |
| Return better error codes. | |
| (gcry_pk_verify): Return better error codes. | |
| 2003-01-21 Werner Koch <wk@gnupg.org> | |
| * random.c (gcry_random_add_bytes): Add QUALITY argument, let | |
| function return an error code and disable its core for now. | |
| 2003-01-21 Timo Schulz <twoaday@freakmail.de> | |
| * random.c (gcry_random_add_bytes): New. Function to add external | |
| random to the pool. | |
| 2003-01-20 Simon Josefsson <jas@extundo.com> | |
| * crc.c: New. | |
| * Makefile.am (EXTRA_PROGRAMS, EXTRA_crc_SOURCES): Add crc.c. | |
| * md.c (gcry_md_get_algo_dlen): Add values for CRC. | |
| 2003-01-20 Werner Koch <wk@gnupg.org> | |
| * sha256.c: New. | |
| * bithelp.h (ror): New. | |
| * Makfile.am: Add sha256.c. | |
| * md.c (oid_table): Add values for SHA256 et al. | |
| (gcry_md_get_algo_dlen): Likewise | |
| 2003-01-20 Werner Koch <wk@gnupg.org> | |
| * pubkey.c (gcry_pk_get_keygrip): Implemented keygrips for DSA | |
| and ElGamal. | |
| 2003-01-17 Werner Koch <wk@gnupg.org> | |
| * cipher.c (gcry_cipher_encrypt): Reworked so that the output will | |
| never contain the plaintext even if the caller did not checked the | |
| return value. | |
| * md.c (gcry_md_get_algo): Changed error code to GCRYERR_GENERAL | |
| because we don't have an invalid md algo but no algorithm enabled. | |
| * pubkey.c (gcry_pk_genkey): Changed error code for bounds check | |
| of table parameters to GCRYERR_INTERNAL. | |
| * md.c (gcry_md_open): Partly reverted Timo's change from | |
| 2002-10-10 by removing the check for the algorithm. An algorithm | |
| of 0 is allowed and anyway we should not double check it or check | |
| it using a different function. Also fixed the flags check. | |
| * pubkey.c (gcry_pk_encrypt): Make sure that R_CIPH points to NULL | |
| on error. | |
| (gcry_pk_decrypt): Ditto for R_PLAIN. | |
| (gcry_pk_sign): Ditto for R_SIG. | |
| (gcry_pk_genkey): Ditto for R_KEY. | |
| 2003-01-16 Werner Koch <wk@gnupg.org> | |
| * md.c (gcry_md_write): Changed 2nd argument type to void*. | |
| (gcry_md_hash_buffer): Changed type of boths buffers to void*. | |
| (gcry_md_setkey): Changed 2nd argument type to void*. | |
| 2003-01-15 Werner Koch <wk@gnupg.org> | |
| * pubkey.c (sexp_data_to_mpi): New. This handles pkcs1 padding. | |
| (gcry_pk_sign, gcry_pk_verify): Use it here. | |
| (gcry_pk_encrypt): And here. | |
| (pubkey_verify): Add debug code. | |
| (sexp_to_enc): Handle flags in the input and return the pkcs1 flag | |
| in a new parameter. | |
| (gcry_pk_decrypt): Prepare for future pkcs1 handling. | |
| 2002-12-19 Werner Koch <wk@gnupg.org> | |
| * random.c (_gcry_random_initialize): New. | |
| 2002-12-16 Werner Koch <wk@gnupg.org> | |
| * cipher.c: Added a Teletrust specific OID for 3DES. | |
| 2002-12-12 Werner Koch <wk@gnupg.org> | |
| * md.c: Added another oddball OIW OID (sha-1WithRSAEncryption). | |
| 2002-11-23 Werner Koch <wk@gnupg.org> | |
| * md.c (load_digest_module): Enlarged checked_algos bitmap. | |
| * md4.c (func_table): Fixed entry for md4. | |
| Both by Simon Josephson. | |
| (transform): Copy data to get the alignment straight. Tested only | |
| on i386. | |
| 2002-11-10 Simon Josefsson <jas@extundo.com> | |
| * cipher.c (gcry_cipher_open): Don't reject CTS flag. | |
| (do_cbc_encrypt, do_cbc_decrypt, cipher_encrypt) | |
| (gcry_cipher_encrypt, cipher_decrypt) | |
| (gcry_cipher_decrypt): Support CTS flag. | |
| (gcry_cipher_ctl): Toggle CTS flag. | |
| 2002-11-10 Werner Koch <wk@gnupg.org> | |
| * md4.c: New. By Simon Josefsson. | |
| * Makefile.am (EXTRA_PROGRAMS): Add md4.c. | |
| * md.c (oid_table,gcry_md_get_algo_dlen): MD4 support. | |
| 2002-10-14 Werner Koch <wk@gnupg.org> | |
| * arcfour.c (do_encrypt_stream): Don't use increment op when | |
| assigning to the same variable. | |
| 2002-10-10 Timo Schulz <ts@winpt.org> | |
| * pubkey.c (gcry_pk_genkey): Check boundaries. | |
| * md.c (gcry_md_open): Check that algo is available and only | |
| valid flag values are used. | |
| (gcry_md_get_algo): Add error handling. | |
| 2002-09-26 Werner Koch <wk@gnupg.org> | |
| * md.c: Include an OID for TIGER. | |
| * tiger.c (tiger_get_info): Use a regular OID. | |
| 2002-09-17 Werner Koch <wk@gnupg.org> | |
| * random.c: Replaced mutex.h by the new ath.h. Changed all calls. | |
| 2002-09-16 Werner Koch <wk@gnupg.org> | |
| * arcfour.c (do_encrypt_stream): Use register modifier and modulo. | |
| According to Nikos Mavroyanopoulos this increases perfromace on | |
| i386 system noticable. And I always tought gcc is clever enough. | |
| * md5.c (transform): Use register modifier. | |
| * rmd160.c (transform): Ditto. | |
| * sha1.c (transform): Ditto. We hope that there are 6 free registers. | |
| * random.c (gcry_randomize): Rewrote to avoid malloc calls. | |
| * rndlinux.c (gather_random): Replaced remaining fprintfs by log_*. | |
| * arcfour.c (do_arcfour_setkey): Ditto. | |
| * twofish.c (do_twofish_setkey): Ditto. | |
| * rndegd.c (gather_random): Ditto. | |
| * rijndael.c (do_setkey): Ditto. | |
| * random.c (_gcry_random_dump_stats): Ditto. | |
| * primegen.c (_gcry_generate_elg_prime): Ditto. | |
| * des.c (_gcry_des_get_info): Ditto. | |
| * cast5.c (do_cast_setkey): Ditto. | |
| * blowfish.c (do_bf_setkey): Ditto. | |
| 2002-08-26 Werner Koch <wk@gnupg.org> | |
| * des.c (weak_keys): Fixed one entry in the table and compared | |
| all entries against the literature. | |
| (selftest): Checksum the weak key table. | |
| 2002-08-21 Werner Koch <wk@gnupg.org> | |
| * pubkey.c: Enable keygrip calculation for "openpgp-rsa". | |
| 2002-08-17 Werner Koch <wk@gnupg.org> | |
| * cipher.c (setup_cipher_table): Don't overwrite the DES entry | |
| with the entry for DUMMY. | |
| 2002-08-14 Werner Koch <wk@gnupg.org> | |
| * des.c (do_des_setkey,do_des_encrypt, do_des_decrypt): New. | |
| (_gcry_des_get_info): Support plain old DES. | |
| * cipher.c (setup_cipher_table): Put DES into the table. | |
| 2002-07-25 Werner Koch <wk@gnupg.org> | |
| * rndunix.c (_gcry_rndunix_constructor): Prefixed with _gcry_. | |
| Noted by Stephan Austermuehle. | |
| 2002-07-08 Timo Schulz <ts@winpt.org> | |
| * rndw32.c: Replaced the m_ memory functions with the real | |
| gcry_ functions. Renamed all g10_ prefixed functions to log_. | |
| 2002-06-12 Werner Koch <wk@gnupg.org> | |
| * rsa.c (generate): Use e = 65537 for now. | |
| 2002-06-11 Werner Koch <wk@gnupg.org> | |
| * pubkey.c (gcry_pk_get_keygrip): Allow a "protected-private-key". | |
| 2002-06-05 Timo Schulz <ts@winpt.org> | |
| * cipher.c (gcry_cipher_encrypt, gcry_cipher_decrypt): | |
| Check that the input size is a multiple of the blocksize. | |
| 2002-05-23 Werner Koch <wk@gnupg.org> | |
| * md.c (oid_table): Add an rsadsi OID for MD5. | |
| 2002-05-21 Werner Koch <wk@gnupg.org> | |
| * primegen.c, elgamal.c, dsa.c (progress): Do not print anything | |
| by default. Pass an extra identifying string to the callback and | |
| reserved 2 argumenst for current and total counters. Changed the | |
| register function prototype. | |
| 2002-05-17 Werner Koch <wk@gnupg.org> | |
| * rndegd.c (rndegd_constructor): Fixed name of register function | |
| and prefixed the function name with _gcry_. | |
| * rndw32.c (rndw32_constructor): Ditto. | |
| * tiger.c (tiger_constructor): Ditto. | |
| * Makefile.am: Removed all dynamic loading stuff. | |
| * dynload.c: Ditto. Now only used for the constructor system. | |
| 2002-05-15 Werner Koch <wk@gnupg.org> | |
| * random.c (gcry_random_bytes,gcry_random_bytes_secure) | |
| (gcry_randomize): Make sure we are initialized. | |
| 2002-05-14 Werner Koch <wk@gnupg.org> | |
| Changed license of most files to the LGPL. | |
| 2002-05-02 Werner Koch <wk@gnupg.org> | |
| * random.c (_gcry_fast_random_poll): Initialize the module so the | |
| mutex can be used. | |
| * primegen.c (small_prime_numbers): Moved table from smallprime.c | |
| * smallprime.c: File removed. | |
| * des.c (leftkey_swap, rightkey_swap, working_memcmp): Made static. | |
| * cipher.c (gcry_cipher_map_name): Map "RIJNDAEL" to "AES". | |
| * rijndael.c (rijndael_get_info): We do only support a 128 bit | |
| blocksize so it makes sense to change the algorithm strings to | |
| AES. | |
| * tiger.c (tiger_final): Removed superfluous token pasting operators. | |
| * md5.c (md5_final): Ditto. | |
| 2002-04-30 Werner Koch <wk@gnupg.org> | |
| * cipher.c: Fixed list of copyright years. | |
| 2002-03-18 Werner Koch <wk@gnupg.org> | |
| * random.c (initialize): Initialize the new pool lock mutex. | |
| (_gcry_fast_random_poll): Add locking and moved main | |
| code out to... | |
| (do_fast_random_poll): new function. | |
| (read_pool): Use the new function here. | |
| (get_random_bytes): Add locking. | |
| (_gcry_update_random_seed_file): Ditto. | |
| 2002-03-11 Werner Koch <wk@gnupg.org> | |
| * md.c: Add rsaSignatureWithripemd160 to OID table. | |
| 2002-02-20 Werner Koch <wk@gnupg.org> | |
| * sha1.c: Removed a left over comment note. The code has been | |
| rewritten from scratch in 1998. Thanks to Niels Möller for | |
| reporting this misleading comment. | |
| 2002-02-18 Werner Koch <wk@gnupg.org> | |
| * rndunix.c (rndunix_constructor): Use the the new prefixed | |
| function name. Reported by Jordi Mallach. | |
| 2002-02-10 Werner Koch <wk@gnupg.org> | |
| * random.c (mix_pool): Carry an extra failsafe_digest buffer | |
| around to make the function more robust. | |
| 2002-02-08 Werner Koch <wk@gnupg.org> | |
| * random.c (add_randomness): Xor new data into the pool and not | |
| just copy it. This avoids any choosen input attacks which are not | |
| serious in our setting because an outsider won't be able to mix | |
| data in and even then we keep going with a PRNG. Thanks to Stefan | |
| Keller for pointing this out. | |
| 2002-01-04 Werner Koch <wk@gnupg.org> | |
| * pubkey.c (gcry_pk_genkey): Do not release skey - it is static. | |
| * primegen.c (gen_prime): Of course we should use set_bit | |
| and not set_highbit to set the second high bit. | |
| 2001-12-18 Werner Koch <wk@gnupg.org> | |
| * rsa.c (generate): Loop until we find the exact modulus size. | |
| Changed the exponent to 41. | |
| (rsa_get_info): s/usage/r_usage/ to avoid shadow warnings. | |
| * primegen.c (gen_prime): Set 2 high order bits for secret primes. | |
| * Makefile.am (DISTCLEANFILES): Include construct.c. | |
| 2001-12-17 Werner Koch <wk@gnupg.org> | |
| * pubkey.c (gcry_pk_get_keygrip): New - experimental. | |
| 2001-12-11 Werner Koch <wk@gnupg.org> | |
| * cipher.c: Added OIDs for AES. | |
| (gcry_cipher_mode_from_oid): New. | |
| (gcry_cipher_map_name): Moved OID search code to .. | |
| (search_oid): .. new function. | |
| 2001-12-10 Werner Koch <wk@gnupg.org> | |
| * pubkey.c (gcry_pk_encrypt): Find the signature algorithm by name | |
| and not by number. | |
| * pubkey.c (gcry_pk_encrypt,gcry_pk_decrypt,gcry_pk_sign) | |
| (gcry_pk_verify,gcry_pk_testkey, gcry_pk_genkey) | |
| (gcry_pk_get_nbits): Release the arrays. Noted by Nikos | |
| Mavroyanopoulos. | |
| 2001-12-06 Werner Koch <wk@gnupg.org> | |
| * cipher.c (gcry_cipher_map_name): Look also for OIDs prefixed | |
| with "oid." or "OID.". | |
| 2001-12-05 Werner Koch <wk@gnupg.org> | |
| * pubkey.c (algo_info_table): Fixed entry for openpgp-rsa. | |
| 2001-11-24 Werner Koch <wk@gnupg.org> | |
| * pubkey.c: Added the rsaEncryption OID to the tables. | |
| (sexp_to_key): Add an arg to return the index of the algorithm, | |
| changed all callers. | |
| (gcry_pk_sign): Find the signature algorithm by name and not by | |
| number. | |
| (gcry_pk_get_nbits): Fixed so that we can now really pass a secret | |
| key to get the result. | |
| * md.c (gcry_md_map_name): Look also for OIDs prefixed with "oid." | |
| or "OID." so that an OID string can be used as an S-Exp token. | |
| 2001-11-20 Werner Koch <wk@gnupg.org> | |
| * md.c (gcry_md_map_name): Lookup by OID if the the name begins | |
| with a digit. | |
| (oid_table): New. | |
| 2001-11-16 Werner Koch <wk@gnupg.org> | |
| * md.c (gcry_md_info): New operator GCRYCTL_IS_ALGO_ENABLED. | |
| 2001-11-07 Werner Koch <wk@gnupg.org> | |
| * md.c (gcry_md_hash_buffer): Close the handle which was left open | |
| for algorithms other than rmd160. | |
| 2001-08-08 Werner Koch <wk@gnupg.org> | |
| * rndw32.c (gather_random): Use toolhelp in addition to the NT | |
| gatherer for Windows2000. Suggested by Sami Tolvanen. | |
| * random.c (read_pool): Fixed length check, this used to be one | |
| byte to strict. Made an assert out of it because the caller has | |
| already made sure that only poolsize bytes are requested. | |
| Reported by Marcus Brinkmann. | |
| 2001-08-03 Werner Koch <wk@gnupg.org> | |
| * cipher.c (cipher_encrypt, cipher_decrypt): Prepare to return | |
| errors. We have to change the interface to all ciphers to make | |
| this really work but we should do so to prepare for hardware | |
| encryption modules. | |
| (gcry_cipher_encrypt, gcry_cipher_decrypt): Return the error and | |
| set lasterr. | |
| (gcry_cipher_ctl): Make sure that errors from setkey are returned. | |
| 2001-08-02 Werner Koch <wk@gnupg.org> | |
| * rndlinux.c (gather_random): casted a size_t arg to int so that | |
| the format string is correct. Casting is okay here and avoids | |
| translation changes. | |
| * random.c (fast_random_poll): Do not check the return code of | |
| getrusage. | |
| * rndunix.c: Add a signal.h header to avoid warnings on Solaris 7 | |
| and 8. | |
| * tiger.c (print_abc,print_data): Removed. | |
| * rijndael.c, des.c, blowfish.c, twofish.c, cast5.c, arcfour.c | |
| (burn_stack): New. Add wrappers for most functions to be able to | |
| call burn_stack after the function invocation. This methods seems | |
| to be the most portable way to zeroise the stack used. It does | |
| only work on stack frame based machines but it is highly portable | |
| and has no side effects. Just setting the automatic variables at | |
| the end of a function to zero does not work well because the | |
| compiler will optimize them away - marking them as volatile would | |
| be bad for performance. | |
| * md5.c, sha1.c, rmd160.c, tiger.c (burn_stack): Likewise. | |
| * random.c (burn_stack): New. | |
| (mix_pool): Use it here to burn the stack of the mixblock function. | |
| * primegen.c (_gcry_generate_elg_prime): Freed q at 3 places. | |
| Thanks to Tommi Komulainen. | |
| * arcfour.c (arcfour_setkey): Check the minimim keylength against | |
| bytes and not bits. | |
| (selftest): Must reset the key before decryption. | |
| 2001-05-31 Werner Koch <wk@gnupg.org> | |
| * sha1.c (sha1_init): Made static. | |
| Changed all g10_ prefixed function names as well as some mpi_ | |
| function names to cope with the introduced naming changes. | |
| * md.c (prepare_macpads): Made key const. | |
| 2001-05-28 Werner Koch <wk@gnupg.org> | |
| * rndegd.c (gather_random): Removed the use of tty_printf. | |
| 2001-03-29 Werner Koch <wk@gnupg.org> | |
| * md5.c (md5_final): Fixed calculation of hashed length. Thanks | |
| to disastry@saiknes.lv for pointing out that it was horrible wrong | |
| for more than 512MB of input. | |
| * sha1.c (sha1_final): Ditto. | |
| * rmd160.c (rmd160_final): Ditto. | |
| * tiger.c (tiger_final): Ditto. | |
| * blowfish.c (encrypt,do_encrypt): Changed name to do_encrypt to | |
| avoid name clashes with an encrypt function in stdlib.h of | |
| Dynix/PIX. Thanks to Gene Carter. | |
| * elgamal.c (encrypt,do_encrypt): Ditto. | |
| * twofish.c (gnupgext_enum_func): Use only when when compiled as a | |
| module. | |
| * rijndael.c (gnupgext_enum_func): Ditto. | |
| * tiger.c (tiger_get_info): Return "TIGER192" and not just | |
| "TIGER". By Edwin Woudt. | |
| * random.c: Always include time.h - standard requirement. Thanks | |
| to James Troup. | |
| * rndw32.c: Fixes to the macros. | |
| 2001-01-11 Werner Koch <wk@gnupg.org> | |
| * cipher.c (cipher_encrypt,gcry_cipher_encrypt): Use blocksize and | |
| not 8. | |
| 2000-12-19 Werner Koch <wk@gnupg.org> | |
| Major change: | |
| Removed all GnuPG stuff and renamed this piece of software | |
| to gcrypt. | |
| 2000-11-14 Werner Koch <wk@gnupg.org> | |
| * dsa.c (test_keys): Replaced mpi_alloc by gcry_mpi_new and | |
| mpi_free by gcry_mpi_release. | |
| * elgamal.c (test_keys,generate): Ditto, also for mpi_alloc_secure. | |
| * rsa.c (test_keys,generate,rsa_verify): Ditto. | |
| * primegen.c (generate_elg_prime): Ditto. | |
| (gen_prime): Ditto and removed nlimbs. | |
| * rsa.c (generate): Allocate 2 more vars in secure memory. | |
| * Makefile.am (OMIT_DEPENDENCIES): Hack to work around dependency | |
| problems. | |
| 2000-10-09 Werner Koch <wk@gnupg.org> | |
| * arcfour.c, arcfour.h: New. | |
| * cipher.c (cipher_encrypt, cipher_decrypt): Add stream mode. | |
| (setup_cipher_table): Add Arcfour. | |
| (gcry_cipher_open): Kludge to allow stream mode. | |
| Wed Oct 4 13:16:18 CEST 2000 Werner Koch <wk@openit.de> | |
| * sha1.c (transform): Use rol() macro. Actually this is not needed | |
| for a newer gcc but there are still aoter compilers. | |
| * rsa.c (test_keys): Use new random function. | |
| * md.c (gcry_md_setkey): New function to overcome problems with | |
| const conflics. | |
| (gcry_md_ctl): Pass set key to the new functions. | |
| * rijndael.c: New. | |
| * cipher.c: Add Rijndael support. | |
| Mon Sep 18 16:35:45 CEST 2000 Werner Koch <wk@openit.de> | |
| * rndlinux.c (open_device): Loose random device checking. | |
| By Nils Ellmenreich. | |
| * random.c (fast_random_poll): Check ENOSYS for getrusage. | |
| * rndunix.c: Add 2 sources for QNX. By Sam Roberts. | |
| * pubkey.c (gcry_pk_algo_info): Add GCRYCTL_GET_ALGO_USAGE. | |
| * rsa.c: Changed the comment about the patent. | |
| (secret): Speed up by using the CRT. For a 2k keys this | |
| is about 3 times faster. | |
| (stronger_key_check): New but unused code to check the secret key. | |
| * Makefile.am: Included rsa.[ch]. | |
| * pubkey.c: Enabled RSA support. | |
| (pubkey_get_npkey): Removed RSA workaround. | |
| Mon Jul 31 10:04:47 CEST 2000 Werner Koch <wk@openit.de> | |
| * pubkey.c: Replaced all gcry_sexp_{car,cdr}_{data,mpi} by the new | |
| gcry_sexp_nth_{data,mpi} functions. | |
| Tue Jul 25 17:44:15 CEST 2000 Werner Koch <wk@openit.de> | |
| * pubkey.c (exp_to_key,sexp_to_sig,sexp_to_enc,gcry_pk_encrypt, | |
| gcry_pk_decrypt,gcry_pk_sign,gcry_pk_genkey): Changed to work with | |
| the new S-Exp interface. | |
| Mon Jul 17 16:35:47 CEST 2000 Werner Koch <wk@> | |
| * random.c (gather_faked): Replaced make_timestamp by time(2) again. | |
| Fri Jul 14 19:38:23 CEST 2000 Werner Koch <wk@> | |
| * md.c (gcry_md_ctl): Support GCRYCTL_{START,STOP}_DUMP. | |
| * Makefile.am: Never compile mingw32 as module. | |
| * Makefile.am: Tweaked module build and removed libtool | |
| * Makefile.am: Replaced -O1 by -O. Suggested by Alec Habig. | |
| * elgamal.c (sign): Removed inactive code. | |
| * rsa.c, rsa.h: New based on the old module version (only in CVS for now). | |
| * pubkey.c (setup_pubkey_table): Added commented support for RSA. | |
| * rndunix.c (waitpid): New. For UTS 2.1. All by Dave Dykstra. | |
| (my_popen): Do the FD_CLOEXEC only if it is available | |
| (start_gatherer): Cope with missing _SC_OPEN_MAX | |
| * rndunix.c: Add some more headers for QNX. By Sam Roberts. | |
| * rndegd.c (gather_random): Shortcut level 0. | |
| * rndunix.c (gather_random): Ditto. | |
| * rndw32.c (gather_random): Ditto. | |
| * rndw32.c: Replaced with code from Cryptlib and commented the old stuff. | |
| * rndw32.c: Add some debuging code enabled by an environment variable. | |
| * random.c (read_seed_file): Binary open for DOSish system | |
| (update_random_seed_file): Ditto. | |
| * random.c [MINGW32]: Include process.h for getpid. | |
| * random.c (fast_random_poll): Add clock_gettime() as fallback for | |
| system which support this POSIX.4 fucntion. By Sam Roberts. | |
| * random.c (read_seed_file): Removed the S_ISLNK test becuase it | |
| is already covered by !S_ISREG and is not defined in Unixware. | |
| Reported by Dave Dykstra. | |
| (update_random_seed_file): Silently ignore update request when pool | |
| is not filled. | |
| * random.c (read_seed_file): New. | |
| (set_random_seed_file): New. | |
| (read_pool): Try to read the seeding file. | |
| (update_random_seed_file): New. | |
| (read_pool): Do an initial extra seeding when level 2 quality random | |
| is requested the first time. This requestes at least POOLSIZE/2 bytes | |
| of entropy. Compined with the seeding file this should make normal | |
| random bytes cheaper and increase the quality of the random bytes | |
| used for key generation. | |
| * random.c (read_pool): Print a more friendly error message in | |
| cases when too much random is requested in one call. | |
| * random.c (fast_random_poll): Check whether RUSAGE_SELF is defined; | |
| this is not the case for some ESIX and Unixware, although they have | |
| getrusage(). | |
| * primegen.c (generate_elg_prime): All primes are now generated with | |
| the lowest random quality level. Because they are public anyway we | |
| don't need stronger random and by this we do not drain the systems | |
| entropy so much. | |
| * primegen.c (register_primegen_progress): New. | |
| * dsa.c (register_pk_dsa_progress): New. | |
| * elgamal.c (register_pk_elg_progress): New. | |
| * elgamal.c (wiener_map): New. | |
| (gen_k): Use a much smaller k. | |
| (generate): Calculate the qbits using the wiener map and | |
| choose an x at a size comparable to the one choosen in gen_k | |
| * rmd160.c (rmd160_get_info): Moved casting to the left side due to a | |
| problem with UTS4.3. Suggested by Dave Dykstra. | |
| * sha1.c (sha1_get_info): Ditto. | |
| * tiger.c (tiger_get_info): Ditto. | |
| * md5.c (md5_get_info): Ditto | |
| * des.c (des_get_info): Ditto. | |
| * blowfish.c (blowfish_get_info): Ditto. | |
| * cast5.c (cast5_get_info): Ditto. | |
| * twofish.c (twofish_get_info): Ditto. | |
| Fri Mar 24 11:25:45 CET 2000 Werner Koch <wk@openit.de> | |
| * md.c (md_open): Add hmac arg and allocate space for the pads. | |
| (md_finalize): Add HMAC support. | |
| (md_copy): Ditto. | |
| (md_close): Ditto. | |
| (gcry_md_reset): Ditto. | |
| (gcry_md_ctl): Ditto. | |
| (prepare_macpdas): New. | |
| Mon Mar 13 19:22:46 CET 2000 Werner Koch <wk@openit.de> | |
| * md.c (gcry_md_hash_buffer): Add support for the other algorithms. | |
| Mon Jan 31 16:37:34 CET 2000 Werner Koch <wk@gnupg.de> | |
| * genprime.c (generate_elg_prime): Fixed returned factors which never | |
| worked for non-DSA keys. | |
| Thu Jan 27 18:00:44 CET 2000 Werner Koch <wk@gnupg.de> | |
| * pubkey.c (sexp_to_key): Fixed mem leaks in case of errors. | |
| Mon Jan 24 22:24:38 CET 2000 Werner Koch <wk@gnupg.de> | |
| * pubkey.c (gcry_pk_decrypt): Implemented. | |
| (gcry_pk_encrypt): Implemented. | |
| (gcry_pk_testkey): New. | |
| (gcry_pk_genkey): New. | |
| (pubkey_decrypt): Made static. | |
| (pubkey_encrypt): Ditto. | |
| (pubkey_check_secret_key): Ditto. | |
| (pubkey_generate): Ditto. | |
| Mon Jan 24 13:04:28 CET 2000 Werner Koch <wk@gnupg.de> | |
| * pubkey.c (pubkey_nbits): Removed and replaced by ... | |
| (gcry_pk_get_nbits): this new one. | |
| Wed Dec 8 21:58:32 CET 1999 Werner Koch <wk@gnupg.de> | |
| * dsa.c: s/mpi_powm/gcry_mpi_powm/g | |
| * elgamal.c: Ditto. | |
| * primegen.c: Ditto. | |
| * : Replaced g10_opt_verbose by g10_log_verbosity(). | |
| * Makefile.am (INCLUDES): removed intl, add ../gcrypt | |
| Fri Nov 19 17:15:20 CET 1999 Werner Koch <wk@gnupg.de> | |
| * dynload.c (cmp_filenames): New to replaced compare_filename() in | |
| module. | |
| (register_cipher_extension): Removed the tilde expansion stuff. | |
| * rndeg.c (my_make_filename): New. | |
| * : Replaced header util.h by g10lib.h | |
| * random.c (gather_faked): Replaced make_timestamp by time(2). | |
| Disabled wrning printed with tty_printf. | |
| * rndlinux.c (gather_random): Always use fprintf instead of tty_xxx; | |
| this should be replaced by a callback function. | |
| * primegen.c (gen_prime): Use gcry_mpi_randomize. | |
| (is_prime): Ditto. | |
| * elgamal.c (test_keys): Ditto. | |
| * dsa.c (test_keys): Ditto. | |
| * cipher.c (gcry_cipher_close): Die on invalid handle. | |
| Mon Nov 15 21:36:02 CET 1999 Werner Koch <wk@gnupg.de> | |
| * elgamal.c (gen_k): Use the new random API. | |
| (generate): Ditto. | |
| * dsa.c (gen_k): Ditto. | |
| (generate): Ditto. | |
| Sat Nov 13 17:44:23 CET 1999 Werner Koch <wk@gnupg.de> | |
| * pubkey.c (disable_pubkey_algo): Made static. | |
| (gcry_pk_ctl): New. | |
| * random.c (get_random_bits): Renamed to ... | |
| (get_random_bytes): ... this and made static. | |
| (gcry_random_bytes): New. | |
| (gcry_random_bytes_secure): New. | |
| (randomize_buffer): Renamed to ... | |
| (gcry_randomize): ...this. | |
| * md.c (gcry_md_hash_buffer): New. | |
| * pubkey.c (gcry_pk_algo_info): 4 new commands. | |
| (pubkey_get_npkey): Made static. | |
| (pubkey_get_nskey): Made static. | |
| (pubkey_get_nsig): Made static. | |
| (pubkey_get_nenc): Made static. | |
| * pubkey.c: Removed all G10ERR_xxx. | |
| * cipher.c: Changed all GCRYERR_INV_ALGO to GCRYERR_INV_CIPHER_ALGO. | |
| * md.c: Changed all GCRYERR_INV_ALGO to GCRYERR_INV_MD_ALGO. | |
| * cast5.c (cast_setkey): Changed errocodes to GCRYERR_xxx. | |
| * blowfish.c: Ditto. | |
| * des.c: Ditto. | |
| * twofish.c: Ditto. | |
| * dsa.c: Ditto. | |
| * elgamal.c: Ditto. | |
| * g10c.c: Removed | |
| * cipher.c (gcry_cipher_open): Replaced alloc functions and return NULL | |
| if we are out of core. | |
| * dynload.c: Replaced all memory allocation functions. | |
| * md.c: Ditto. | |
| * primegen.c: Ditto. | |
| * pubkey.c: Ditto. | |
| * random.c: Ditto. | |
| * rndw32.c: Ditto. | |
| * elgamal.c: Ditto. | |
| * dsa.c: Ditto. | |
| Tue Oct 26 14:10:21 CEST 1999 Werner Koch <wk@gnupg.de> | |
| * elgamal.c (sign): Hugh found strange code here. Replaced by BUG(). | |
| * cipher.c: Merged with gcrypt/symapi.c. | |
| * pubkey.c (string_to_pubkey_algo): Renamed function to ... | |
| (gcry_pk_map_name): ... this. | |
| (pubkey_algo_to_string): Renamed function to ... | |
| (gcry_pk_algo_name): ... this. | |
| (gcry_pk_algo_info): New. | |
| * pubkey.c: Merged with gcrypt/pkapi.c. | |
| * md.c (md_reset): Clear finalized; thanks to Ulf Moeller for | |
| fixing this bug. | |
| * md.c: Merged with gcrypt/mdapi.c | |
| Wed Sep 15 14:39:59 CEST 1999 Michael Roth <mroth@nessie.de> | |
| * des.c: Various speed improvements: One bit pre rotation | |
| trick after initial permutation (Richard Outerbridge). | |
| Finished test of SSLeay Tripple-DES patterns. | |
| Wed Sep 15 16:22:17 CEST 1999 Werner Koch <wk@isil.d.shuttle.de> | |
| * rndw32.c: New. | |
| Mon Sep 13 10:51:29 CEST 1999 Werner Koch <wk@isil.d.shuttle.de> | |
| * bithelp.h: New. | |
| * rmd160.h, sha1.h, md5.h: Use the rol macro from bithelp.h | |
| Tue Sep 7 16:23:36 CEST 1999 Werner Koch <wk@isil.d.shuttle.de> | |
| * Makefile.am: Fixed seds for latest egcc. By Ollivier Robert. | |
| Mon Sep 6 19:59:08 CEST 1999 Werner Koch <wk@isil.d.shuttle.de> | |
| * des.c (selftest): Add some testpattern | |
| Mon Aug 30 20:38:33 CEST 1999 Werner Koch <wk@isil.d.shuttle.de> | |
| * cipher.c (do_cbc_encrypt): Fixed serious bug occuring when not using | |
| in place encryption. Pointed out by Frank Stajano. | |
| Mon Jul 26 09:34:46 CEST 1999 Werner Koch <wk@isil.d.shuttle.de> | |
| * md5.c (md5_final): Fix for a SCO cpp bug. | |
| Thu Jul 15 10:15:35 CEST 1999 Werner Koch <wk@isil.d.shuttle.de> | |
| * elgamal.c (elg_check_secret_key,elg_encrypt | |
| elg_decrypt,elg_sign,elg_verify): Sanity check on the args. | |
| * dsa.c (dsa_check_secret_key,dsa_sign,dsa_verify): Ditto. | |
| * pubkey.c (disable_pubkey_algo): New. | |
| (check_pubkey_algo2): Look at disabled algo table. | |
| * cipher.c (disable_cipher_algo): New. | |
| (check_cipher_algo): Look at disabled algo table. | |
| Wed Jul 7 13:08:40 CEST 1999 Werner Koch <wk@isil.d.shuttle.de> | |
| * Makefile.am: Support for libtool. | |
| Fri Jul 2 11:45:54 CEST 1999 Werner Koch <wk@isil.d.shuttle.de> | |
| * dsa.c (gen_k): Changed algorithm to consume less random bytes | |
| * elgamal.c (gen_k): Ditto. | |
| * random.c (random_dump_stats): New. | |
| Thu Jul 1 12:47:31 CEST 1999 Werner Koch <wk@isil.d.shuttle.de> | |
| * primegen.c, elgamal.c, dsa.c (progess): New and replaced all | |
| fputc with a call to this function. | |
| Sat Jun 26 12:15:59 CEST 1999 Werner Koch <wk@isil.d.shuttle.de> | |
| * rndegd.c (do_write): s/ssize_t/int/ due to SunOS 4.1 probs. | |
| * cipher.c (do_cbc_encrypt, do_cbc_decrypt): New. | |
| * dynload.c (HAVE_DL_SHL_LOAD): Map hpux API to dlopen (Dave Dykstra). | |
| * Makefile.am (install-exec-hook): Removed. | |
| Sun May 23 14:20:22 CEST 1999 Werner Koch <wk@isil.d.shuttle.de> | |
| * cipher.c (setup_cipher_table): Enable Twofish | |
| * random.c (fast_random_poll): Disable use of times() for mingw32. | |
| Mon May 17 21:54:43 CEST 1999 Werner Koch <wk@isil.d.shuttle.de> | |
| * dynload.c (register_internal_cipher_extension): Minor init fix. | |
| Tue May 4 15:47:53 CEST 1999 Werner Koch <wk@isil.d.shuttle.de> | |
| * primegen.c (gen_prime): Readded the Fermat test. Fixed the bug | |
| that we didn't correct for step when passing the prime to the | |
| Rabin-Miller test which led to bad performance (Stefan Keller). | |
| (check_prime): Add a first Fermat test. | |
| Sun Apr 18 10:11:28 CEST 1999 Werner Koch <wk@isil.d.shuttle.de> | |
| * cipher.c (cipher_setiv): Add ivlen arg, changed all callers. | |
| * random.c (randomize_buffer): alway use secure memory because | |
| we can't use m_is_secure() on a statically allocated buffer. | |
| * twofish.c: Replaced some macros by a loop to reduce text size. | |
| * Makefile.am (twofish): No more need for sed editing. | |
| Fri Apr 9 12:26:25 CEST 1999 Werner Koch <wk@isil.d.shuttle.de> | |
| * cipher.c (cipher_open): Reversed the changes for AUTO_CFB. | |
| * blowfish.c: Dropped the Blowfish 160 mode. | |
| * cipher.c (cipher_open): Ditto. | |
| (setup_cipher_table): Ditto. And removed support of twofish128 | |
| Wed Apr 7 20:51:39 CEST 1999 Werner Koch <wk@isil.d.shuttle.de> | |
| * random.c (get_random_bits): Can now handle requests > POOLSIZE | |
| * cipher.c (cipher_open): Now uses standard CFB for automode if | |
| the blocksize is gt 8 (according to rfc2440). | |
| * twofish.c: Applied Matthew Skala's patches for 256 bit key. | |
| Tue Apr 6 19:58:12 CEST 1999 Werner Koch <wk@isil.d.shuttle.de> | |
| * random.c (get_random_bits): Can now handle requests > POOLSIZE | |
| * cipher.c (cipher_open): Now uses standard CFB for automode if | |
| the blocksize is gt 8 (according to rfc2440). | |
| Sat Mar 20 11:44:21 CET 1999 Werner Koch <wk@isil.d.shuttle.de> | |
| * rndlinux.c (tty_printf) [IS_MODULE]: Removed. | |
| * rndegd.c (gather_random): Some fixes. | |
| Wed Mar 17 13:09:03 CET 1999 Werner Koch <wk@isil.d.shuttle.de> | |
| * rndegd.c (do_read): New. | |
| (gather_random): Changed the implementation. | |
| Mon Mar 8 20:47:17 CET 1999 Werner Koch <wk@isil.d.shuttle.de> | |
| * dynload.c (DLSYM_NEEDS_UNDERSCORE): Renamed. | |
| Fri Feb 26 17:55:41 CET 1999 Werner Koch <wk@isil.d.shuttle.de> | |
| * md.c: Nearly a total rewrote. | |
| Wed Feb 24 11:07:27 CET 1999 Werner Koch <wk@isil.d.shuttle.de> | |
| * cipher.c (context): Fixed alignment | |
| * md.c: Ditto. | |
| * rndegd.c: New | |
| Mon Feb 22 20:04:00 CET 1999 Werner Koch <wk@isil.d.shuttle.de> | |
| * rndegd.c: New. | |
| Wed Feb 10 17:15:39 CET 1999 Werner Koch <wk@isil.d.shuttle.de> | |
| * Makefile.am: Modules are now figured out by configure | |
| * construct.c: New. Generated by configure. Changed all modules | |
| to work with that. | |
| * sha1.h: Removed. | |
| * md5.h: Removed. | |
| * twofish.c: Changed interface to allow Twofish/256 | |
| * rndunix.c (start_gatherer): Die on SIGPIPE. | |
| Wed Jan 20 18:59:49 CET 1999 Werner Koch <wk@isil.d.shuttle.de> | |
| * rndunix.c (gather_random): Fix to avoid infinite loop. | |
| Sun Jan 17 11:04:33 CET 1999 Werner Koch <wk@isil.d.shuttle.de> | |
| * des.c (is_weak_key): Replace system memcmp due to bugs | |
| in SunOS's memcmp. | |
| (des_get_info): Return error on failed selftest. | |
| * twofish.c (twofish_setkey): Return error on failed selftest or | |
| invalid keylength. | |
| * cast5.c (cast_setkey): Ditto. | |
| * blowfish.c (bf_setkey): Return error on failed selftest. | |
| Tue Jan 12 11:17:18 CET 1999 Werner Koch <wk@isil.d.shuttle.de> | |
| * random.c (random_is_faked): New. | |
| * tiger.c: Only compile if we have the u64 type | |
| Sat Jan 9 16:02:23 CET 1999 Werner Koch <wk@isil.d.shuttle.de> | |
| * rndunix.c (gather_random): check for setuid. | |
| * Makefile.am: Add a way to staically link random modules | |
| Thu Jan 7 18:00:58 CET 1999 Werner Koch <wk@isil.d.shuttle.de> | |
| * md.c (md_stop_debug): Do a flush first. | |
| (md_open): size of buffer now depends on the secure parameter | |
| Sun Jan 3 15:28:44 CET 1999 Werner Koch <wk@isil.d.shuttle.de> | |
| * rndunix.c (start_gatherer): Fixed stupid ==/= bug | |
| 1998-12-31 Geoff Keating <geoffk@ozemail.com.au> | |
| * des.c (is_weak_key): Rewrite loop end condition. | |
| Tue Dec 29 14:41:47 CET 1998 Werner Koch <wk@isil.d.shuttle.de> | |
| * random.c: add unistd.h for getpid(). | |
| (RAND_MAX): Fallback value for Sun. | |
| Wed Dec 23 17:12:24 CET 1998 Werner Koch <wk@isil.d.shuttle.de> | |
| * md.c (md_copy): Reset debug. | |
| Mon Dec 14 21:18:49 CET 1998 Werner Koch <wk@isil.d.shuttle.de> | |
| * random.c (read_random_source): Changed the interface to the | |
| random gathering function. | |
| (gather_faked): Use new interface. | |
| * dynload.c (dynload_getfnc_fast_random_poll): Ditto. | |
| (dynload_getfnc_gather_random): Ditto. | |
| * rndlinux.c (gather_random): Ditto. | |
| * rndunix.c (gather_random): Ditto. | |
| Sat Dec 12 18:40:32 CET 1998 Werner Koch <wk@isil.d.shuttle.de> | |
| * dynload.c (SYMBOL_VERSION): New to cope with system which needs | |
| underscores. | |
| * rndunix.c: Rewrote large parts | |
| Thu Dec 10 20:15:36 CET 1998 Werner Koch <wk@isil.d.shuttle.de> | |
| * dynload.c (load_extension): increased needed verbosity level. | |
| * random.c (fast_random_poll): Fallback to a default fast random | |
| poll function. | |
| (read_random_source): Always use the faked entroy gatherer if no | |
| gather module is available. | |
| * rndlinux.c (fast_poll): Removed. | |
| * rndunix.c (fast_poll): Removed. | |
| Wed Nov 25 12:33:41 1998 Werner Koch (wk@isil.d.shuttle.de) | |
| * rand-*.c: Removed. | |
| * rndlinux.c : New. | |
| * rndunix.c : New. | |
| * random.c : Restructured the interface to the gather modules. | |
| (intialize): Call constructor functions | |
| (read_radnom_source): Moved to here. | |
| * dynload.c (dynload_getfnc_gather_random): New. | |
| (dynload_getfnc_fast_random_poll): New. | |
| (register_internal_cipher_extension): New. | |
| (register_cipher_extension): Support of internal modules. | |
| Sun Nov 8 17:44:36 1998 Werner Koch (wk@isil.d.shuttle.de) | |
| * rand-unix.c (read_random_source): Removed the assert. | |
| Mon Oct 19 18:34:30 1998 me,,, (wk@tobold) | |
| * pubkey.c: Hack to allow us to give some info about RSA keys back. | |
| Thu Oct 15 11:47:57 1998 Werner Koch (wk@isil.d.shuttle.de) | |
| * dynload.c: Support for DLD | |
| Wed Oct 14 12:13:07 1998 Werner Koch (wk@isil.d.shuttle.de) | |
| * rand-unix.c: Now uses names from configure for /dev/random. | |
| 1998-10-10 SL Baur <steve@altair.xemacs.org> | |
| * Makefile.am: fix sed -O substitutions to catch -O6, etc. | |
| Tue Oct 6 10:06:32 1998 Werner Koch (wk@isil.d.shuttle.de) | |
| * rand-unix.c (HAVE_GETTIMEOFDAY): Fixed (was ..GETTIMEOFTIME :-) | |
| * rand-dummy.c (HAVE_GETTIMEOFDAY): Ditto. | |
| Mon Sep 28 13:23:09 1998 Werner Koch (wk@isil.d.shuttle.de) | |
| * md.c (md_digest): New. | |
| (md_reset): New. | |
| Wed Sep 23 12:27:02 1998 Werner Koch (wk@isil.d.shuttle.de) | |
| * tiger.c (TIGER_CONTEXT): moved "buf", so that it is 64 bit aligned. | |
| Mon Sep 21 06:22:53 1998 Werner Koch (wk@(none)) | |
| * des.c: Some patches from Michael. | |
| Thu Sep 17 19:00:06 1998 Werner Koch (wk@(none)) | |
| * des.c : New file from Michael Roth <mroth@nessie.de> | |
| Mon Sep 14 11:10:55 1998 Werner Koch (wk@(none)) | |
| * blowfish.c (bf_setkey): Niklas Hernaeus patch to detect weak keys. | |
| Mon Sep 14 09:19:25 1998 Werner Koch (wk@(none)) | |
| * dynload.c (RTLD_NOW): Now defined to 1 if it is undefined. | |
| Mon Sep 7 17:04:33 1998 Werner Koch (wk@(none)) | |
| * Makefile.am: Fixes to allow a different build directory | |
| Thu Aug 6 17:25:38 1998 Werner Koch,mobil,,, (wk@tobold) | |
| * random.c (get_random_byte): Removed and changed all callers | |
| to use get_random_bits() | |
| Mon Jul 27 10:30:22 1998 Werner Koch (wk@(none)) | |
| * cipher.c : Support for other blocksizes | |
| (cipher_get_blocksize): New. | |
| * twofish.c: New. | |
| * Makefile.am: Add twofish module. | |
| Mon Jul 13 21:30:52 1998 Werner Koch (wk@isil.d.shuttle.de) | |
| * random.c (read_pool): Simple alloc if secure_alloc is not set. | |
| (get_random_bits): Ditto. | |
| Thu Jul 9 13:01:14 1998 Werner Koch (wk@isil.d.shuttle.de) | |
| * dynload.c (load_extension): Function now nbails out if | |
| the program is run setuid. | |
| Wed Jul 8 18:58:23 1998 Werner Koch (wk@isil.d.shuttle.de) | |
| * rmd160.c (rmd160_hash_buffer): New. | |
| Thu Jul 2 10:50:30 1998 Werner Koch (wk@isil.d.shuttle.de) | |
| * cipher.c (cipher_open): algos >=100 use standard CFB | |
| Thu Jun 25 11:18:25 1998 Werner Koch (wk@isil.d.shuttle.de) | |
| * Makefile.am: Support for extensions | |
| Thu Jun 18 12:09:38 1998 Werner Koch (wk@isil.d.shuttle.de) | |
| * random.c (mix_pool): simpler handling for level 0 | |
| Mon Jun 15 14:40:48 1998 Werner Koch (wk@isil.d.shuttle.de) | |
| * tiger.c: Removed from dist, will reappear as dynload module | |
| Sat Jun 13 14:16:57 1998 Werner Koch (wk@isil.d.shuttle.de) | |
| * pubkey.c: Major changes to allow extensions. Changed the inteface | |
| of all public key ciphers and added the ability to load extensions | |
| on demand. | |
| * misc.c: Removed. | |
| Wed Jun 10 07:52:08 1998 Werner Koch,mobil,,, (wk@tobold) | |
| * dynload.c: New. | |
| * cipher.c: Major changes to allow extensions. | |
| Mon Jun 8 22:43:00 1998 Werner Koch (wk@isil.d.shuttle.de) | |
| * cipher.c: Major internal chnages to support extensions. | |
| * blowfish.c (blowfish_get_info): New and made all internal | |
| functions static, changed heder. | |
| * cast5.c (cast5_get_info): Likewise. | |
| Mon Jun 8 12:27:52 1998 Werner Koch (wk@isil.d.shuttle.de) | |
| * tiger.c (transform): Fix for big endian | |
| * cipher.c (do_cfb_decrypt): Big endian fix. | |
| Fri May 22 07:30:39 1998 Werner Koch (wk@isil.d.shuttle.de) | |
| * md.c (md_get_oid): Add a new one for TIGER. | |
| Thu May 21 13:24:52 1998 Werner Koch (wk@isil.d.shuttle.de) | |
| * cipher.c: Add support for a dummy cipher | |
| Thu May 14 15:40:36 1998 Werner Koch (wk@isil.d.shuttle.de) | |
| * rmd160.c (transform): fixed sigbus - I should better | |
| add Christian von Roques's new implemenation of rmd160_write. | |
| Fri May 8 18:07:44 1998 Werner Koch (wk@isil.d.shuttle.de) | |
| * rand-internal.h, rand-unix.c, rand-w32.c, rand_dummy.c: New | |
| * random.c: Moved system specific functions to rand-****.c | |
| Fri May 8 14:01:17 1998 Werner Koch (wk@isil.d.shuttle.de) | |
| * random.c (fast_random_poll): add call to gethrtime. | |
| Tue May 5 21:28:55 1998 Werner Koch (wk@isil.d.shuttle.de) | |
| * elgamal.c (elg_generate): choosing x was not correct, could | |
| yield 6 bytes which are not from the random pool, tsss, tsss.. | |
| Tue May 5 14:09:06 1998 Werner Koch (wk@isil.d.shuttle.de) | |
| * primegen.c (generate_elg_prime): Add arg mode, changed all | |
| callers and implemented mode 1. | |
| Mon Apr 27 14:41:58 1998 Werner Koch (wk@isil.d.shuttle.de) | |
| * cipher.c (cipher_get_keylen): New. | |
| Sun Apr 26 14:44:52 1998 Werner Koch (wk@isil.d.shuttle.de) | |
| * tiger.c, tiger.h: New. | |
| Wed Apr 8 14:57:11 1998 Werner Koch (wk@isil.d.shuttle.de) | |
| * misc.c (check_pubkey_algo2): New. | |
| Tue Apr 7 18:46:49 1998 Werner Koch (wk@isil.d.shuttle.de) | |
| * cipher.c: New | |
| * misc.c (check_cipher_algo): Moved to cipher.c | |
| * cast5.c: Moved many functions to cipher.c | |
| * blowfish.c: Likewise. | |
| Sat Apr 4 19:52:08 1998 Werner Koch (wk@isil.d.shuttle.de) | |
| * cast5.c: Implemented and tested. | |
| Wed Apr 1 16:38:27 1998 Werner Koch (wk@isil.d.shuttle.de) | |
| * elgamal.c (elg_generate): Faster generation of x in some cases. | |
| Thu Mar 19 13:54:48 1998 Werner Koch (wk@isil.d.shuttle.de) | |
| * blowfish.c (blowfish_decode_cfb): changed XOR operation | |
| (blowfish_encode_cfb): Ditto. | |
| Thu Mar 12 14:04:05 1998 Werner Koch (wk@isil.d.shuttle.de) | |
| * sha1.c (transform): Rewrote | |
| * blowfish.c (encrypt): Unrolled for rounds == 16 | |
| (decrypt): Ditto. | |
| Tue Mar 10 16:32:08 1998 Werner Koch (wk@isil.d.shuttle.de) | |
| * rmd160.c (transform): Unrolled the loop. | |
| Tue Mar 10 13:05:14 1998 Werner Koch (wk@isil.d.shuttle.de) | |
| * random.c (read_pool): Add pool_balance stuff. | |
| (get_random_bits): New. | |
| * elgamal.c (elg_generate): Now uses get_random_bits to generate x. | |
| Tue Mar 10 11:33:51 1998 Werner Koch (wk@isil.d.shuttle.de) | |
| * md.c (md_digest_length): New. | |
| Tue Mar 10 11:27:41 1998 Werner Koch (wk@isil.d.shuttle.de) | |
| * dsa.c (dsa_verify): Works. | |
| Mon Mar 9 12:59:08 1998 Werner Koch (wk@isil.d.shuttle.de) | |
| * dsa.c, dsa.h: Removed some unused code. | |
| Wed Mar 4 10:39:22 1998 Werner Koch (wk@isil.d.shuttle.de) | |
| * md.c (md_open): Add call to fast_random_poll. | |
| blowfish.c (blowfish_setkey): Ditto. | |
| Tue Mar 3 13:32:54 1998 Werner Koch (wk@isil.d.shuttle.de) | |
| * rmd160.c (rmd160_mixblock): New. | |
| * random.c: Restructured to start with a new RNG implementation. | |
| * random.h: New. | |
| Mon Mar 2 19:21:46 1998 Werner Koch (wk@isil.d.shuttle.de) | |
| * gost.c, gost.h: Removed because they did only contain trash. | |
| Sun Mar 1 16:42:29 1998 Werner Koch (wk@isil.d.shuttle.de) | |
| * random.c (fill_buffer): removed error message if n == -1. | |
| Fri Feb 27 16:39:34 1998 Werner Koch (wk@isil.d.shuttle.de) | |
| * md.c (md_enable): No init if called twice. | |
| Thu Feb 26 07:57:02 1998 Werner Koch (wk@isil.d.shuttle.de) | |
| * primegen.c (generate_elg_prime): Changed the progress printing. | |
| (gen_prime): Ditto. | |
| Tue Feb 24 12:28:42 1998 Werner Koch (wk@isil.d.shuttle.de) | |
| * md5.c, md.5 : Replaced by a modified version of md5.c from | |
| GNU textutils 1.22. | |
| Wed Feb 18 14:08:30 1998 Werner Koch (wk@isil.d.shuttle.de) | |
| * md.c, md.h : New debugging support | |
| Mon Feb 16 10:08:47 1998 Werner Koch (wk@isil.d.shuttle.de) | |
| * misc.c (cipher_algo_to_string): New | |
| (pubkey_algo_to_string): New. | |
| (digest_algo_to_string): New. | |
| Copyright 1998,1999,2000,2001,2002,2003,2004,2005,2006 | |
| 2007, 2008, 2009 Free Software Foundation, Inc. | |
| This file is free software; as a special exception the author gives | |
| unlimited permission to copy and/or distribute it, with or without | |
| modifications, as long as this notice is preserved. | |
| This file is distributed in the hope that it will be useful, but | |
| WITHOUT ANY WARRANTY, to the extent permitted by law; without even the | |
| implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. |