The unified diff between revisions [829d93b3..] and [b699c68f..] is displayed below. It can also be downloaded as a raw diff.
#
#
# delete "PLAN"
#
# delete "ampi.c"
#
# delete "authors"
#
# delete "base64.c"
#
# delete "demos/test/test.h"
#
# delete "demos/test.c"
#
# delete "examples"
#
# delete "examples/ch1-01.c"
#
# delete "examples/ch1-02.c"
#
# delete "examples/ch1-03.c"
#
# delete "examples/ch2-01.c"
#
# delete "gf.c"
#
# delete "keyring.c"
#
# delete "makefile.cygwin_dll"
#
# delete "modes_test.c"
#
# delete "mpi.c"
#
# delete "mycrypt_gf.h"
#
# delete "mycrypt_kr.h"
#
# delete "pkcs_1_v15_es_decode.c"
#
# delete "pkcs_1_v15_es_encode.c"
#
# delete "pkcs_1_v15_sa_decode.c"
#
# delete "pkcs_1_v15_sa_encode.c"
#
# delete "rsa.c"
#
# delete "rsa_sys.c"
#
# delete "serpent.c"
#
# delete "strings.c"
#
# delete "tim_exptmod.c"
#
# delete "tommath.h"
#
# rename "aes.c"
# to "src/ciphers/aes/aes.c"
#
# rename "aes_tab.c"
# to "src/ciphers/aes/aes_tab.c"
#
# rename "base64_decode.c"
# to "src/misc/base64/base64_decode.c"
#
# rename "base64_encode.c"
# to "src/misc/base64/base64_encode.c"
#
# rename "blowfish.c"
# to "src/ciphers/blowfish.c"
#
# rename "burn_stack.c"
# to "src/misc/burn_stack.c"
#
# rename "cast5.c"
# to "src/ciphers/cast5.c"
#
# rename "cbc_decrypt.c"
# to "src/modes/cbc/cbc_decrypt.c"
#
# rename "cbc_encrypt.c"
# to "src/modes/cbc/cbc_encrypt.c"
#
# rename "cbc_getiv.c"
# to "src/modes/cbc/cbc_getiv.c"
#
# rename "cbc_setiv.c"
# to "src/modes/cbc/cbc_setiv.c"
#
# rename "cbc_start.c"
# to "src/modes/cbc/cbc_start.c"
#
# rename "cfb_decrypt.c"
# to "src/modes/cfb/cfb_decrypt.c"
#
# rename "cfb_encrypt.c"
# to "src/modes/cfb/cfb_encrypt.c"
#
# rename "cfb_getiv.c"
# to "src/modes/cfb/cfb_getiv.c"
#
# rename "cfb_setiv.c"
# to "src/modes/cfb/cfb_setiv.c"
#
# rename "cfb_start.c"
# to "src/modes/cfb/cfb_start.c"
#
# rename "crypt.c"
# to "src/misc/crypt/crypt.c"
#
# rename "crypt_argchk.c"
# to "src/misc/crypt/crypt_argchk.c"
#
# rename "crypt_cipher_descriptor.c"
# to "src/misc/crypt/crypt_cipher_descriptor.c"
#
# rename "crypt_cipher_is_valid.c"
# to "src/misc/crypt/crypt_cipher_is_valid.c"
#
# rename "crypt_find_cipher.c"
# to "src/misc/crypt/crypt_find_cipher.c"
#
# rename "crypt_find_cipher_any.c"
# to "src/misc/crypt/crypt_find_cipher_any.c"
#
# rename "crypt_find_cipher_id.c"
# to "src/misc/crypt/crypt_find_cipher_id.c"
#
# rename "crypt_find_hash.c"
# to "src/misc/crypt/crypt_find_hash.c"
#
# rename "crypt_find_hash_any.c"
# to "src/misc/crypt/crypt_find_hash_any.c"
#
# rename "crypt_find_hash_id.c"
# to "src/misc/crypt/crypt_find_hash_id.c"
#
# rename "crypt_find_prng.c"
# to "src/misc/crypt/crypt_find_prng.c"
#
# rename "crypt_hash_descriptor.c"
# to "src/misc/crypt/crypt_hash_descriptor.c"
#
# rename "crypt_hash_is_valid.c"
# to "src/misc/crypt/crypt_hash_is_valid.c"
#
# rename "crypt_prng_descriptor.c"
# to "src/misc/crypt/crypt_prng_descriptor.c"
#
# rename "crypt_prng_is_valid.c"
# to "src/misc/crypt/crypt_prng_is_valid.c"
#
# rename "crypt_register_cipher.c"
# to "src/misc/crypt/crypt_register_cipher.c"
#
# rename "crypt_register_hash.c"
# to "src/misc/crypt/crypt_register_hash.c"
#
# rename "crypt_register_prng.c"
# to "src/misc/crypt/crypt_register_prng.c"
#
# rename "crypt_unregister_cipher.c"
# to "src/misc/crypt/crypt_unregister_cipher.c"
#
# rename "crypt_unregister_hash.c"
# to "src/misc/crypt/crypt_unregister_hash.c"
#
# rename "crypt_unregister_prng.c"
# to "src/misc/crypt/crypt_unregister_prng.c"
#
# rename "ctr_decrypt.c"
# to "src/modes/ctr/ctr_decrypt.c"
#
# rename "ctr_encrypt.c"
# to "src/modes/ctr/ctr_encrypt.c"
#
# rename "ctr_getiv.c"
# to "src/modes/ctr/ctr_getiv.c"
#
# rename "ctr_setiv.c"
# to "src/modes/ctr/ctr_setiv.c"
#
# rename "ctr_start.c"
# to "src/modes/ctr/ctr_start.c"
#
# rename "demos/test"
# to "testprof"
#
# rename "demos/x86_prof.c"
# to "testprof/x86_prof.c"
#
# rename "des.c"
# to "src/ciphers/des.c"
#
# rename "dh.c"
# to "src/pk/dh/dh.c"
#
# rename "dh_sys.c"
# to "src/pk/dh/dh_sys.c"
#
# rename "dsa_export.c"
# to "src/pk/dsa/dsa_export.c"
#
# rename "dsa_free.c"
# to "src/pk/dsa/dsa_free.c"
#
# rename "dsa_import.c"
# to "src/pk/dsa/dsa_import.c"
#
# rename "dsa_make_key.c"
# to "src/pk/dsa/dsa_make_key.c"
#
# rename "dsa_sign_hash.c"
# to "src/pk/dsa/dsa_sign_hash.c"
#
# rename "dsa_verify_hash.c"
# to "src/pk/dsa/dsa_verify_hash.c"
#
# rename "dsa_verify_key.c"
# to "src/pk/dsa/dsa_verify_key.c"
#
# rename "eax_addheader.c"
# to "src/encauth/eax/eax_addheader.c"
#
# rename "eax_decrypt.c"
# to "src/encauth/eax/eax_decrypt.c"
#
# rename "eax_decrypt_verify_memory.c"
# to "src/encauth/eax/eax_decrypt_verify_memory.c"
#
# rename "eax_done.c"
# to "src/encauth/eax/eax_done.c"
#
# rename "eax_encrypt.c"
# to "src/encauth/eax/eax_encrypt.c"
#
# rename "eax_encrypt_authenticate_memory.c"
# to "src/encauth/eax/eax_encrypt_authenticate_memory.c"
#
# rename "eax_init.c"
# to "src/encauth/eax/eax_init.c"
#
# rename "eax_test.c"
# to "src/encauth/eax/eax_test.c"
#
# rename "ecb_decrypt.c"
# to "src/modes/ecb/ecb_decrypt.c"
#
# rename "ecb_encrypt.c"
# to "src/modes/ecb/ecb_encrypt.c"
#
# rename "ecb_start.c"
# to "src/modes/ecb/ecb_start.c"
#
# rename "ecc.c"
# to "src/pk/ecc/ecc.c"
#
# rename "ecc_sys.c"
# to "src/pk/ecc/ecc_sys.c"
#
# rename "error_to_string.c"
# to "src/misc/error_to_string.c"
#
# rename "hash_file.c"
# to "src/hashes/helper/hash_file.c"
#
# rename "hash_filehandle.c"
# to "src/hashes/helper/hash_filehandle.c"
#
# rename "hash_memory.c"
# to "src/hashes/helper/hash_memory.c"
#
# rename "hmac_done.c"
# to "src/mac/hmac/hmac_done.c"
#
# rename "hmac_file.c"
# to "src/mac/hmac/hmac_file.c"
#
# rename "hmac_init.c"
# to "src/mac/hmac/hmac_init.c"
#
# rename "hmac_memory.c"
# to "src/mac/hmac/hmac_memory.c"
#
# rename "hmac_process.c"
# to "src/mac/hmac/hmac_process.c"
#
# rename "hmac_test.c"
# to "src/mac/hmac/hmac_test.c"
#
# rename "is_prime.c"
# to "src/misc/mpi/is_prime.c"
#
# rename "ltc_tommath.h"
# to "src/headers/ltc_tommath.h"
#
# rename "md2.c"
# to "src/hashes/md2.c"
#
# rename "md4.c"
# to "src/hashes/md4.c"
#
# rename "md5.c"
# to "src/hashes/md5.c"
#
# rename "mpi_to_ltc_error.c"
# to "src/misc/mpi/mpi_to_ltc_error.c"
#
# rename "mycrypt.h"
# to "src/headers/tomcrypt.h"
#
# rename "mycrypt_argchk.h"
# to "src/headers/tomcrypt_argchk.h"
#
# rename "mycrypt_cfg.h"
# to "src/headers/tomcrypt_cfg.h"
#
# rename "mycrypt_cipher.h"
# to "src/headers/tomcrypt_cipher.h"
#
# rename "mycrypt_custom.h"
# to "src/headers/tomcrypt_custom.h"
#
# rename "mycrypt_hash.h"
# to "src/headers/tomcrypt_hash.h"
#
# rename "mycrypt_macros.h"
# to "src/headers/tomcrypt_macros.h"
#
# rename "mycrypt_misc.h"
# to "src/headers/tomcrypt_misc.h"
#
# rename "mycrypt_pk.h"
# to "src/headers/tomcrypt_pk.h"
#
# rename "mycrypt_pkcs.h"
# to "src/headers/tomcrypt_pkcs.h"
#
# rename "mycrypt_prng.h"
# to "src/headers/tomcrypt_prng.h"
#
# rename "noekeon.c"
# to "src/ciphers/noekeon.c"
#
# rename "ocb_decrypt.c"
# to "src/encauth/ocb/ocb_decrypt.c"
#
# rename "ocb_decrypt_verify_memory.c"
# to "src/encauth/ocb/ocb_decrypt_verify_memory.c"
#
# rename "ocb_done_decrypt.c"
# to "src/encauth/ocb/ocb_done_decrypt.c"
#
# rename "ocb_done_encrypt.c"
# to "src/encauth/ocb/ocb_done_encrypt.c"
#
# rename "ocb_encrypt.c"
# to "src/encauth/ocb/ocb_encrypt.c"
#
# rename "ocb_encrypt_authenticate_memory.c"
# to "src/encauth/ocb/ocb_encrypt_authenticate_memory.c"
#
# rename "ocb_init.c"
# to "src/encauth/ocb/ocb_init.c"
#
# rename "ocb_ntz.c"
# to "src/encauth/ocb/ocb_ntz.c"
#
# rename "ocb_shift_xor.c"
# to "src/encauth/ocb/ocb_shift_xor.c"
#
# rename "ocb_test.c"
# to "src/encauth/ocb/ocb_test.c"
#
# rename "ofb_decrypt.c"
# to "src/modes/ofb/ofb_decrypt.c"
#
# rename "ofb_encrypt.c"
# to "src/modes/ofb/ofb_encrypt.c"
#
# rename "ofb_getiv.c"
# to "src/modes/ofb/ofb_getiv.c"
#
# rename "ofb_setiv.c"
# to "src/modes/ofb/ofb_setiv.c"
#
# rename "ofb_start.c"
# to "src/modes/ofb/ofb_start.c"
#
# rename "omac_done.c"
# to "src/mac/omac/omac_done.c"
#
# rename "omac_file.c"
# to "src/mac/omac/omac_file.c"
#
# rename "omac_init.c"
# to "src/mac/omac/omac_init.c"
#
# rename "omac_memory.c"
# to "src/mac/omac/omac_memory.c"
#
# rename "omac_process.c"
# to "src/mac/omac/omac_process.c"
#
# rename "omac_test.c"
# to "src/mac/omac/omac_test.c"
#
# rename "packet_store_header.c"
# to "src/pk/packet_store_header.c"
#
# rename "packet_valid_header.c"
# to "src/pk/packet_valid_header.c"
#
# rename "pkcs_1_i2osp.c"
# to "src/pk/pkcs1/pkcs_1_i2osp.c"
#
# rename "pkcs_1_mgf1.c"
# to "src/pk/pkcs1/pkcs_1_mgf1.c"
#
# rename "pkcs_1_oaep_decode.c"
# to "src/pk/pkcs1/pkcs_1_oaep_decode.c"
#
# rename "pkcs_1_oaep_encode.c"
# to "src/pk/pkcs1/pkcs_1_oaep_encode.c"
#
# rename "pkcs_1_os2ip.c"
# to "src/pk/pkcs1/pkcs_1_os2ip.c"
#
# rename "pkcs_1_pss_decode.c"
# to "src/pk/pkcs1/pkcs_1_pss_decode.c"
#
# rename "pkcs_1_pss_encode.c"
# to "src/pk/pkcs1/pkcs_1_pss_encode.c"
#
# rename "pkcs_5_1.c"
# to "src/misc/pkcs5/pkcs_5_1.c"
#
# rename "pkcs_5_2.c"
# to "src/misc/pkcs5/pkcs_5_2.c"
#
# rename "pmac_done.c"
# to "src/mac/pmac/pmac_done.c"
#
# rename "pmac_file.c"
# to "src/mac/pmac/pmac_file.c"
#
# rename "pmac_init.c"
# to "src/mac/pmac/pmac_init.c"
#
# rename "pmac_memory.c"
# to "src/mac/pmac/pmac_memory.c"
#
# rename "pmac_ntz.c"
# to "src/mac/pmac/pmac_ntz.c"
#
# rename "pmac_process.c"
# to "src/mac/pmac/pmac_process.c"
#
# rename "pmac_shift_xor.c"
# to "src/mac/pmac/pmac_shift_xor.c"
#
# rename "pmac_test.c"
# to "src/mac/pmac/pmac_test.c"
#
# rename "rand_prime.c"
# to "src/misc/mpi/rand_prime.c"
#
# rename "rc2.c"
# to "src/ciphers/rc2.c"
#
# rename "rc4.c"
# to "src/prngs/rc4.c"
#
# rename "rc5.c"
# to "src/ciphers/rc5.c"
#
# rename "rc6.c"
# to "src/ciphers/rc6.c"
#
# rename "rmd128.c"
# to "src/hashes/rmd128.c"
#
# rename "rmd160.c"
# to "src/hashes/rmd160.c"
#
# rename "rng_get_bytes.c"
# to "src/prngs/rng_get_bytes.c"
#
# rename "rng_make_prng.c"
# to "src/prngs/rng_make_prng.c"
#
# rename "rsa_decrypt_key.c"
# to "src/pk/rsa/rsa_decrypt_key.c"
#
# rename "rsa_encrypt_key.c"
# to "src/pk/rsa/rsa_encrypt_key.c"
#
# rename "rsa_export.c"
# to "src/pk/rsa/rsa_export.c"
#
# rename "rsa_exptmod.c"
# to "src/pk/rsa/rsa_exptmod.c"
#
# rename "rsa_free.c"
# to "src/pk/rsa/rsa_free.c"
#
# rename "rsa_import.c"
# to "src/pk/rsa/rsa_import.c"
#
# rename "rsa_make_key.c"
# to "src/pk/rsa/rsa_make_key.c"
#
# rename "rsa_sign_hash.c"
# to "src/pk/rsa/rsa_sign_hash.c"
#
# rename "rsa_verify_hash.c"
# to "src/pk/rsa/rsa_verify_hash.c"
#
# rename "s_ocb_done.c"
# to "src/encauth/ocb/s_ocb_done.c"
#
# rename "safer.c"
# to "src/ciphers/safer/safer.c"
#
# rename "safer_tab.c"
# to "src/ciphers/safer/safer_tab.c"
#
# rename "saferp.c"
# to "src/ciphers/safer/saferp.c"
#
# rename "sha1.c"
# to "src/hashes/sha1.c"
#
# rename "sha224.c"
# to "src/hashes/sha2/sha224.c"
#
# rename "sha256.c"
# to "src/hashes/sha2/sha256.c"
#
# rename "sha384.c"
# to "src/hashes/sha2/sha384.c"
#
# rename "sha512.c"
# to "src/hashes/sha2/sha512.c"
#
# rename "skipjack.c"
# to "src/ciphers/skipjack.c"
#
# rename "sprng.c"
# to "src/prngs/sprng.c"
#
# rename "tiger.c"
# to "src/hashes/tiger.c"
#
# rename "twofish.c"
# to "src/ciphers/twofish/twofish.c"
#
# rename "twofish_tab.c"
# to "src/ciphers/twofish/twofish_tab.c"
#
# rename "whirl.c"
# to "src/hashes/whirl/whirl.c"
#
# rename "whirltab.c"
# to "src/hashes/whirl/whirltab.c"
#
# rename "xtea.c"
# to "src/ciphers/xtea.c"
#
# rename "yarrow.c"
# to "src/prngs/yarrow.c"
#
# rename "zeromem.c"
# to "src/misc/zeromem.c"
#
# add_dir "doc"
#
# add_dir "src"
#
# add_dir "src/ciphers"
#
# add_dir "src/ciphers/aes"
#
# add_dir "src/ciphers/safer"
#
# add_dir "src/ciphers/twofish"
#
# add_dir "src/encauth"
#
# add_dir "src/encauth/ccm"
#
# add_dir "src/encauth/eax"
#
# add_dir "src/encauth/gcm"
#
# add_dir "src/encauth/ocb"
#
# add_dir "src/hashes"
#
# add_dir "src/hashes/chc"
#
# add_dir "src/hashes/helper"
#
# add_dir "src/hashes/sha2"
#
# add_dir "src/hashes/whirl"
#
# add_dir "src/headers"
#
# add_dir "src/mac"
#
# add_dir "src/mac/hmac"
#
# add_dir "src/mac/omac"
#
# add_dir "src/mac/pelican"
#
# add_dir "src/mac/pmac"
#
# add_dir "src/misc"
#
# add_dir "src/misc/base64"
#
# add_dir "src/misc/crypt"
#
# add_dir "src/misc/mpi"
#
# add_dir "src/misc/pkcs5"
#
# add_dir "src/modes"
#
# add_dir "src/modes/cbc"
#
# add_dir "src/modes/cfb"
#
# add_dir "src/modes/ctr"
#
# add_dir "src/modes/ecb"
#
# add_dir "src/modes/ofb"
#
# add_dir "src/pk"
#
# add_dir "src/pk/asn1"
#
# add_dir "src/pk/asn1/der"
#
# add_dir "src/pk/asn1/der/bit"
#
# add_dir "src/pk/asn1/der/choice"
#
# add_dir "src/pk/asn1/der/ia5"
#
# add_dir "src/pk/asn1/der/integer"
#
# add_dir "src/pk/asn1/der/object_identifier"
#
# add_dir "src/pk/asn1/der/octet"
#
# add_dir "src/pk/asn1/der/printable_string"
#
# add_dir "src/pk/asn1/der/sequence"
#
# add_dir "src/pk/asn1/der/short_integer"
#
# add_dir "src/pk/asn1/der/utctime"
#
# add_dir "src/pk/dh"
#
# add_dir "src/pk/dsa"
#
# add_dir "src/pk/ecc"
#
# add_dir "src/pk/pkcs1"
#
# add_dir "src/pk/rsa"
#
# add_dir "src/prngs"
#
# add_file "Doxyfile"
# content [965b49681f503adb5625decbe4f06b31d0d8b97d]
#
# add_file "Makefile.in"
# content [614d14564e7a7c0ce719492a15b58da29a4c239d]
#
# add_file "TODO"
# content [ee08adca96454cc03b64631f65020b7195d9b298]
#
# add_file "build.sh"
# content [6fdd754df5acb227ee2bbcbb62ee469bccabcb52]
#
# add_file "demos/multi.c"
# content [fbc94e576fc2728f537a8de2a1581ed16d015dab]
#
# add_file "demos/test.c"
# content [471f4ac922aeb44563b18bfb40f20ecf60009684]
#
# add_file "demos/timing.c"
# content [3acf7517eabfd4f62530a8ca210ab84f2b8c8b1c]
#
# add_file "doc/footer.html"
# content [0e5ae37d02adb83ae291182903c4fe4152cdbd92]
#
# add_file "doc/header.html"
# content [5f20c36d444f35084d054ddee5d6e6b56f98aeb0]
#
# add_file "genlist.sh"
# content [f798fe9b01aef8b0ab9402ea9969c82eec907789]
#
# add_file "makefile.shared"
# content [c0bd3aa7c8ff8332e2b67b42813d469c66a03f5b]
#
# add_file "mess.sh"
# content [ee34aef379627e97871efac71f93ebe600548bd7]
#
# add_file "notes/ccm_tv.txt"
# content [02f0ca69d572ed7be51eba2e1d925aaff7e92e83]
#
# add_file "notes/etc/saferp_optimizer.c"
# content [5b6ec6012f78c872b12eb0180ccf712b031689c5]
#
# add_file "notes/gcm_tv.txt"
# content [bebe29d01aef67ad00f6659c21454901b3c45542]
#
# add_file "notes/tech0004.txt"
# content [6c0ab00a05d530e1c2fac27465885ae6e1d7bab7]
#
# add_file "notes/tech0005.txt"
# content [f4853d5fd1c3b89604d601783e5d07302dd7e187]
#
# add_file "notes/tech0006.txt"
# content [808b72012bf29653039b60246d3a93e1ef04ff56]
#
# add_file "parsenames.pl"
# content [648a2b24ff66ef63c8665f79d7c0b697796d4df8]
#
# add_file "run.sh"
# content [a3de4a3233961d1d7bcb88781e0c224d624523f2]
#
# add_file "src/ciphers/anubis.c"
# content [3b6a366bd3fcc9f36f13b1679b4aab1e2743f663]
#
# add_file "src/ciphers/khazad.c"
# content [0766ec05b06b590736fa5b18f993a47aaca418b6]
#
# add_file "src/encauth/ccm/ccm_memory.c"
# content [364966474d7b4b52ae448086ece214f7038555e6]
#
# add_file "src/encauth/ccm/ccm_test.c"
# content [b5ecd2f4b12a9fec084f3f8e7e6708f61954d0c7]
#
# add_file "src/encauth/gcm/gcm_add_aad.c"
# content [488e4c8c70591a40cfcd6c5d45446e10177923a6]
#
# add_file "src/encauth/gcm/gcm_add_iv.c"
# content [22fbdfc1061e756f0792b8f1e69e0eb942b67d85]
#
# add_file "src/encauth/gcm/gcm_done.c"
# content [96afa40e4e5358f4e7e085776fbee295f79b2257]
#
# add_file "src/encauth/gcm/gcm_gf_mult.c"
# content [09e626c86af66066a742f6a68f39a2ee08b3bc2b]
#
# add_file "src/encauth/gcm/gcm_init.c"
# content [6896f998f78576e73d3b9268be1ababf7295acc4]
#
# add_file "src/encauth/gcm/gcm_memory.c"
# content [625deeec8ef20f964c0474f38eb3a6e96964e501]
#
# add_file "src/encauth/gcm/gcm_process.c"
# content [b4ce8258428a094930d55d694d31f3f55bc05acf]
#
# add_file "src/encauth/gcm/gcm_reset.c"
# content [07dd1ed36b20f797f3dcd871beab9fb3bad00ae0]
#
# add_file "src/encauth/gcm/gcm_test.c"
# content [09bd29cd7482a235a5cea20197992d2748b97f66]
#
# add_file "src/hashes/chc/chc.c"
# content [c9c6a67e0c435fb792451272a84d9ad3060c515e]
#
# add_file "src/hashes/helper/hash_memory_multi.c"
# content [65d168ca0e97b879f9ad1e4cd327e319459259ed]
#
# add_file "src/headers/tomcrypt_mac.h"
# content [e248dfe77f26271526185bf96c21aa20f87f0381]
#
# add_file "src/headers/tommath_class.h"
# content [bfdec2d39bd21cf3cbba50b791f687c8021ec6e1]
#
# add_file "src/headers/tommath_superclass.h"
# content [804d02f839ed9eb510c0357c8c5f668eab0ea0fc]
#
# add_file "src/mac/hmac/hmac_memory_multi.c"
# content [db5e84752ff3b9eb06bd029fad08b4077f4707d7]
#
# add_file "src/mac/omac/omac_memory_multi.c"
# content [a09d05a87abb45f526c417a5a4d46d31b27de0e1]
#
# add_file "src/mac/pelican/pelican.c"
# content [821e8c39d43f95fb7f67dc9a61f2321c57974fef]
#
# add_file "src/mac/pelican/pelican_memory.c"
# content [810cae7759949e01fb93ed019f6cf7fac43ff23d]
#
# add_file "src/mac/pelican/pelican_test.c"
# content [a594625260e82831bd75fb04ad91de1e83b791f1]
#
# add_file "src/mac/pmac/pmac_memory_multi.c"
# content [44576abaa594d6b762d9a5b0b76a44a750cc4918]
#
# add_file "src/modes/cbc/cbc_done.c"
# content [8ebf4b6eac171b79f7f84c189c55fe38ed3013f8]
#
# add_file "src/modes/cfb/cfb_done.c"
# content [fb7c9f663fb3bc9673d396763bba10e8f2c63cc1]
#
# add_file "src/modes/ctr/ctr_done.c"
# content [9b7159a30e6466f872463f3015ac30f5e1475a1f]
#
# add_file "src/modes/ecb/ecb_done.c"
# content [b989329af83ff1da7cdfb6bba77cc4a80987d4f8]
#
# add_file "src/modes/ofb/ofb_done.c"
# content [bab707be6ba6e854f7e9a51641a7188dec22ece6]
#
# add_file "src/pk/asn1/der/bit/der_decode_bit_string.c"
# content [124502ebdcfa0aea9821d1802ad27049a32b177c]
#
# add_file "src/pk/asn1/der/bit/der_encode_bit_string.c"
# content [7519cc10aa368d7d3087ab638721900989ffb2f7]
#
# add_file "src/pk/asn1/der/bit/der_length_bit_string.c"
# content [9e7e35c66dcb874c1888a4e1e3366bc9c8246db9]
#
# add_file "src/pk/asn1/der/choice/der_decode_choice.c"
# content [b42f2aa51999ab1a1643d208cd17ec663dfd9ac4]
#
# add_file "src/pk/asn1/der/ia5/der_decode_ia5_string.c"
# content [0368564f032b9fbaf4a430673fe306cc0677a725]
#
# add_file "src/pk/asn1/der/ia5/der_encode_ia5_string.c"
# content [57c849eb06ad7816e0080a9935794f7e208a022b]
#
# add_file "src/pk/asn1/der/ia5/der_length_ia5_string.c"
# content [0d538c963b79b6d3ecaa7e7fbb50eecf7f9edf7b]
#
# add_file "src/pk/asn1/der/integer/der_decode_integer.c"
# content [75ee83a26e358f83d5c2832295605e9832038e7f]
#
# add_file "src/pk/asn1/der/integer/der_encode_integer.c"
# content [60c202f266990c9679aeccfaaf6eb42d61cfad10]
#
# add_file "src/pk/asn1/der/integer/der_length_integer.c"
# content [3dac3242be79c3e134776cf9c7a65846fc32efe9]
#
# add_file "src/pk/asn1/der/object_identifier/der_decode_object_identifier.c"
# content [cbb123740cbdc724887e647afc83f0b5a9cab421]
#
# add_file "src/pk/asn1/der/object_identifier/der_encode_object_identifier.c"
# content [f40286bd83c9ea6154a0cf683f499c0895f00e06]
#
# add_file "src/pk/asn1/der/object_identifier/der_length_object_identifier.c"
# content [46fae94eb84b5af85543acb5092f4388171be261]
#
# add_file "src/pk/asn1/der/octet/der_decode_octet_string.c"
# content [818bd4829a592568427715a489744fe851004b17]
#
# add_file "src/pk/asn1/der/octet/der_encode_octet_string.c"
# content [dc6651e9ec3c1ddb52ff6211d1c3caa9d7d3b796]
#
# add_file "src/pk/asn1/der/octet/der_length_octet_string.c"
# content [e08f461aba3ce9e9d438f5bba2dd3d5435a1d912]
#
# add_file "src/pk/asn1/der/printable_string/der_decode_printable_string.c"
# content [24a774be26f0cf141b9f08058ed2006708354122]
#
# add_file "src/pk/asn1/der/printable_string/der_encode_printable_string.c"
# content [94ad3500660c20651849ea72d0cdcc81edd26ee4]
#
# add_file "src/pk/asn1/der/printable_string/der_length_printable_string.c"
# content [dfe9a2d25d55a1911b64f3367444f980438cb278]
#
# add_file "src/pk/asn1/der/sequence/der_decode_sequence.c"
# content [86f50d2479bdff803c068e121885175c032b66cc]
#
# add_file "src/pk/asn1/der/sequence/der_decode_sequence_multi.c"
# content [ab0211f4ea4eed25dd552edefe4028bea38c8c0a]
#
# add_file "src/pk/asn1/der/sequence/der_encode_sequence.c"
# content [792c3db0d29568f7fa3450e3eeabfd2e49d0348d]
#
# add_file "src/pk/asn1/der/sequence/der_encode_sequence_multi.c"
# content [1857a51d055148003b171b6208bc23c73d9b0268]
#
# add_file "src/pk/asn1/der/sequence/der_length_sequence.c"
# content [37ec5773651e7e3e7d30d1dc3e35777b8b2f4ba1]
#
# add_file "src/pk/asn1/der/short_integer/der_decode_short_integer.c"
# content [0e27a507a14d4fa094f32e05631711e63a714f6e]
#
# add_file "src/pk/asn1/der/short_integer/der_encode_short_integer.c"
# content [329ac63b8cfe79d2341d93c89e21dc8f692ca26e]
#
# add_file "src/pk/asn1/der/short_integer/der_length_short_integer.c"
# content [10df89f9544bfaedbc67e69bd2637fd700fc117f]
#
# add_file "src/pk/asn1/der/utctime/der_decode_utctime.c"
# content [4cb5bf42eeb9b9b83d6610dd3eae7203788e8792]
#
# add_file "src/pk/asn1/der/utctime/der_encode_utctime.c"
# content [f1623656c31d86e8710820430eedd270b678a8bb]
#
# add_file "src/pk/asn1/der/utctime/der_length_utctime.c"
# content [6b212542ca8b50c47e8c0ed1e2dba7b7f6486c99]
#
# add_file "src/prngs/fortuna.c"
# content [f838282dd7d485c4f0ffa3e2d0c33dd9187c11c2]
#
# add_file "src/prngs/sober128.c"
# content [1e355bfc23e7c561458223dda3c7b77f43744084]
#
# add_file "src/prngs/sober128tab.c"
# content [f29b14ed0c4b70fead2b8a633925772bb5e1e700]
#
# add_file "testbuild.sh"
# content [5cb55071e5e0ec5d913365d0c47ab3586618dfad]
#
# add_file "testme.sh"
# content [4b8c8a593055e7938d63f87784cdec02d235d4dc]
#
# add_file "testprof/der_tests.c"
# content [b5f481758588466833d312515066672e0d4687e4]
#
# add_file "testprof/makefile.shared"
# content [61e10b17bb77481e43f410c32fc426a64b6a2d23]
#
# add_file "testprof/test.key"
# content [c17a11eef02d7a2ad7250bc2ee22bdf37ed21f0f]
#
# add_file "testprof/tomcrypt_test.h"
# content [a2099caba584563b2eaab9796afefdfbda76578f]
#
# patch "LICENSE"
# from [8ef2e3b4375b98bba0e625a7e894d9eb3fbcc021]
# to [508b945e292ebcd6336b50138bfaeac376a24db2]
#
# patch "changes"
# from [b68f47aa1ca092c730b59b38f794c822f473902e]
# to [5e6b2dd772d307708dd2c22e367ecc803518f452]
#
# patch "crypt.tex"
# from [f230cd06ff9351b7e4a36fa9a6932a55cedc295f]
# to [9d0e4b16e9c58b110c0453b7be0ba6f044efc4bb]
#
# patch "demos/encrypt.c"
# from [cacd9497c33c1eb9e5bd0eee953816c83819fb5b]
# to [96f2bb8b37cb3b0e6a4760c5ee09c87a32e82e81]
#
# patch "demos/hashsum.c"
# from [97fd054e2e0a0ee78db12cdcca02313e7b4a8cef]
# to [34d53d4e033abb3b56d3ca91ff329d3d050cb441]
#
# patch "demos/small.c"
# from [440bca5f72e64be156dbc6485f6068ce0fe8b794]
# to [f75f2118189c56534ada98bb6e71ae540578360d]
#
# patch "demos/tv_gen.c"
# from [856f0290bd75cd8b1b9baf789ee9ec8f987dfb6f]
# to [89aa4504677d22aa321893d6d9c06788896733b2]
#
# patch "makefile.icc"
# from [e951e45a38738fb5a3d61ac43bc039140d34c535]
# to [1db577d7146b5024f1371e70169f8ea57f8dde4c]
#
# patch "makefile.msvc"
# from [79b8467715506130a3f3cb20525399f225e623b1]
# to [06471f26754ab2b8fe4a9a065a25c0305a1eb08b]
#
# patch "notes/cipher_tv.txt"
# from [f8dae5c2cf748df324315c5347b092e5b8fcc3cc]
# to [e9125a62dd9309cb1ea31dd82f20e5f06651c3ee]
#
# patch "notes/eax_tv.txt"
# from [06385b44fd3e0164310a28ef335090b03ec21bda]
# to [631a9fa96aea11c1cd4c3b60e5ba925d3ed9a630]
#
# patch "notes/etc/whirlgen.c"
# from [78675b211c37e90fa7a64c0bffb2e3fd254fd72d]
# to [39afe9cdced89ceb25048818d116d50e2d0be43c]
#
# patch "notes/etc/whirltest.c"
# from [0e2850e3f2d84392eb2157d92e741356723189e2]
# to [54db1492094068526c4227fa0001a73bdec87eec]
#
# patch "notes/hash_tv.txt"
# from [c9ae10ce780aa50df1e3d5dd18b35cc2e65eb2a2]
# to [024f24ce33c20d6a7fb9d9be70659d99d4394a95]
#
# patch "notes/hmac_tv.txt"
# from [26e737bb5c1d0e4fb334cf25bda092f1beae3028]
# to [192ee2c1e7468a407e4aebbd0eb6377a424b0af5]
#
# patch "notes/ocb_tv.txt"
# from [edd596575e75a87532b5a8d58e266cfb9d41a63f]
# to [f56bd00eafc2ebe3ff38d10f097763027a5e59f4]
#
# patch "notes/omac_tv.txt"
# from [4a4d2c99a6724278c0a5ba18f6e707127a7d3597]
# to [c9b59640d6f464770f304ad7c5ad5a79b875a6a6]
#
# patch "notes/pmac_tv.txt"
# from [beb8e58b7961cc01ff8d253b9c96166cb2b1c1ef]
# to [a055d18af7f95091c0a6c9e567ec04282210c862]
#
# patch "src/ciphers/aes/aes.c"
# from [34c70069a1c05c3e8d6e42f1ef10495b271f425d]
# to [2b4241346e0b72c826331a558b790b5154659390]
#
# patch "src/ciphers/aes/aes_tab.c"
# from [8d84d7ccee23e01c4a8f876735478b5a44d4bd42]
# to [5e4d1fdedbd4d284e5f55b6c0000049811a3a3fe]
#
# patch "src/ciphers/blowfish.c"
# from [7a60c1cd06fde4cd386a62b52c7f7ee504d105cd]
# to [abd3966672a621c393c5cab9ed71f39ff94c9efb]
#
# patch "src/ciphers/cast5.c"
# from [1684bfd2fb7344ddfc3d24d31bdb9114e8063397]
# to [36575be89764f5deaee436b6d12851be50240ea3]
#
# patch "src/ciphers/des.c"
# from [92cf73c2d6c7fdd9f923d062d504cac141c7323c]
# to [061580d86b86d272ef888272b8e604f70d7eec9a]
#
# patch "src/ciphers/noekeon.c"
# from [a9e879b28bae51af230708c8542f24708b77691d]
# to [6f888239996d36533be59e6ee031c709536be083]
#
# patch "src/ciphers/rc2.c"
# from [e1af63b9d595c28b5141678322130ad6164a8fed]
# to [5d4f983538e061f3b3f4e1f2d52f6c06cec61ad9]
#
# patch "src/ciphers/rc5.c"
# from [7d2a23df3ecce50dfceec6f4b18db16c0f813932]
# to [eb19e99598ce9b4fe3674776af617791adee47eb]
#
# patch "src/ciphers/rc6.c"
# from [9661edf1c34eb1676671b0b7c9023d8b70214d2a]
# to [f19d158bab217262a5b6a48711b7af6e198b0c66]
#
# patch "src/ciphers/safer/safer.c"
# from [571359ff3cbfddb43c12675a7d6ecb4fd6969252]
# to [7caa9b5ca07bf10d2101c59c74fff9105975e5c7]
#
# patch "src/ciphers/safer/safer_tab.c"
# from [4d6f92885751487cc0708707cf982beedf75235f]
# to [ae782cabbd071676d9794deec9583827873b0bb1]
#
# patch "src/ciphers/safer/saferp.c"
# from [1c617cfd7e20d499193ec1137e2c50059d13ea02]
# to [69028fce205b8daab0dad11e482028fc50d8ba8a]
#
# patch "src/ciphers/skipjack.c"
# from [b327a0289d14db97f9ef66ef7208f8b7ce4491d2]
# to [868611ba96f0b59d98cf5cf0b47cbd05ebebf460]
#
# patch "src/ciphers/twofish/twofish.c"
# from [7b8500deb59d5402d924b48993d5d2b8022c6f9d]
# to [cc01e431050c57f8fbe010bb7b71514a824e7f0d]
#
# patch "src/ciphers/twofish/twofish_tab.c"
# from [38a98159689f390c37fec13ab751be201de0694a]
# to [3c7f1812d71ca5c5311f3bc051a33da0bff126c7]
#
# patch "src/ciphers/xtea.c"
# from [ba5df367ddfce00e1eb2428d0570d497029bee4a]
# to [763d882c9fa168cb8faa35e851234437d8284a3a]
#
# patch "src/encauth/eax/eax_addheader.c"
# from [ef6242901e0cad156128435e76b5aaf40b208683]
# to [26d1a3b5c117295aa1bf6566f0e6b9a17d42d7e8]
#
# patch "src/encauth/eax/eax_decrypt.c"
# from [1938c0f99a0165813bb2583f8945e12629d130db]
# to [156800632e38ca156699cfb725362370850eeef6]
#
# patch "src/encauth/eax/eax_decrypt_verify_memory.c"
# from [607977a5fc5fbfcf5bedecab85eb4a4118b80f0e]
# to [06cafe2a350a6242bc3449b0740c567689d0bffd]
#
# patch "src/encauth/eax/eax_done.c"
# from [a96bc843dc6c0963902e9d390d976b37b57965de]
# to [f02e476731d9abd88475afe5f9674f34e37a715e]
#
# patch "src/encauth/eax/eax_encrypt.c"
# from [d604b26eb655decb8b96ada7c941ad8af28cbddc]
# to [6b4d667de01909400a1bd0e6741a01c09c6e00b7]
#
# patch "src/encauth/eax/eax_encrypt_authenticate_memory.c"
# from [f834cc663170e5514404da78a07bc7e94f8a08e4]
# to [a36dbe130915db7e5b7cef809b251ea682903007]
#
# patch "src/encauth/eax/eax_init.c"
# from [8bcc094d334db90e5927de1f7fb567403de6f8e6]
# to [20be71323fe74756d9db03cb5b7673afc7c7e9e0]
#
# patch "src/encauth/eax/eax_test.c"
# from [5ab2def47b840be1dfc8ef3e9c47f3a7873a4a21]
# to [6a6a6b02c3bf640b758892017cc2b7f59d516ed7]
#
# patch "src/encauth/ocb/ocb_decrypt.c"
# from [d36abea76b375107933ed6e71564de088a203682]
# to [4cff476e9b4623b23affbba6d31c5438b4fb74a6]
#
# patch "src/encauth/ocb/ocb_decrypt_verify_memory.c"
# from [5170a895e2c9360f92fec046c8549cc07d995bc4]
# to [411dddfb0c9061dd19a6b8e30240e65ff1e5cbe2]
#
# patch "src/encauth/ocb/ocb_done_decrypt.c"
# from [2dd1bf4a13085b799833646b6a672cbf5150b12f]
# to [cdc2cb34f2720284888fa739e7e41c63ff7052f5]
#
# patch "src/encauth/ocb/ocb_done_encrypt.c"
# from [026f6ed3478d8284dc0ccef9ce4782e5de73c963]
# to [0a9b215485c9f7a7e9377796125c9ff09b566083]
#
# patch "src/encauth/ocb/ocb_encrypt.c"
# from [90cc7d949f2310ea70dfca1524503c519b16de8f]
# to [f15bfb6578fdf3347e24b3afb035d81747e9417d]
#
# patch "src/encauth/ocb/ocb_encrypt_authenticate_memory.c"
# from [a9353687a7dd431f9ad1447884acc3ab6ac0e18c]
# to [1ca962172743bf96e16a57b3cecc4b4d703dda3e]
#
# patch "src/encauth/ocb/ocb_init.c"
# from [bf197c5eafe8db4f4b1b4d542767bc4e1d15ce44]
# to [008797b24b779e6ec0a2f6dd9bcd73cf474d09fd]
#
# patch "src/encauth/ocb/ocb_ntz.c"
# from [a5245424093cb4130d7af35973392317f62ff2cb]
# to [9ad7b7590813bf5f43d25333b12ec64ede12fd51]
#
# patch "src/encauth/ocb/ocb_shift_xor.c"
# from [9e1be19958cb5271b9d8df5bb831967065a2309e]
# to [589c159c3edc95900a59a0568d46f4946b0dbab2]
#
# patch "src/encauth/ocb/ocb_test.c"
# from [bfb15bd1cd852f8f9e91e081546ee5dd1ba1bb0e]
# to [0a3442d6499d19427a77f367bef1de3bfd56054d]
#
# patch "src/encauth/ocb/s_ocb_done.c"
# from [7cc2963e1d4f59afc4ae048d44b834f7503644c5]
# to [900ebdeb1cb674d2155e665ed55b104683c0c868]
#
# patch "src/hashes/helper/hash_file.c"
# from [164e91fcd7b57df48ee3d9fa7c42aa7785d681c5]
# to [2e09e32cfcfa2e42ddc4a3e47da9b3cf351b23fd]
#
# patch "src/hashes/helper/hash_filehandle.c"
# from [674d5846be5bda07f36073b71a1758adfc4ed8b3]
# to [6f35e6b5122858e0d46b715cecc2317d447f5ea1]
#
# patch "src/hashes/helper/hash_memory.c"
# from [3444fb049a44bc31a704900021aaee6fdb05ee81]
# to [ca78222a4b9bd8f916c3f5f079d3bbe7d24a36ec]
#
# patch "src/hashes/md2.c"
# from [446a9d5577967f794c594cfb724dcf1dc48f94fb]
# to [ece687f327a355a7fd71fcc2cc44e038d48cb87d]
#
# patch "src/hashes/md4.c"
# from [834f4fe24b63861b8787897b033d4f124c064dd4]
# to [08aeeeb1371290f8a8fbe208e8fe01780120356b]
#
# patch "src/hashes/md5.c"
# from [146b63b358a6d9e087ff5921e29b5a530ec2e7cd]
# to [eaaf0037124ae924f9c70cd895ca24c643d69dde]
#
# patch "src/hashes/rmd128.c"
# from [749732011d84577bed3c9366ea090b9b6a5c2441]
# to [bef52df8af069e995d5ab0332c4e5c016e62177e]
#
# patch "src/hashes/rmd160.c"
# from [b8595a8ed7d693ee5c60c5e8e71f722eb6c41092]
# to [d07679b36c4ce346b73e68a3ca35b327a85724e9]
#
# patch "src/hashes/sha1.c"
# from [82ab6899fadd59a69f080fcedea62a128c60acc7]
# to [d7f5eecff190b32e59f7ef83298fcae7ffe50099]
#
# patch "src/hashes/sha2/sha224.c"
# from [7a2466729d8dbe51079d1ea89b42a1e422e0ab98]
# to [49ddb25abd6a93eaea004950287a84d2f08de7b4]
#
# patch "src/hashes/sha2/sha256.c"
# from [2087aaa8b96b7f63cb7025e6abb3f812aaf354bd]
# to [41472ac44b4f7db06b11b9ef804404dfc2eb8035]
#
# patch "src/hashes/sha2/sha384.c"
# from [4f1a92e2a188be6eb754d19b718a2450a921e2c6]
# to [78272b4f576fcc46ab0f313c93654bf4a18ed1d4]
#
# patch "src/hashes/sha2/sha512.c"
# from [a656eaab1f2dd2fbbeb63b88967cad0c11fa1f7d]
# to [0abb7bf30c6d27e6c3dceaa48a88b3c5b9b39f74]
#
# patch "src/hashes/tiger.c"
# from [7250776761a9c629f1a2ff94764f0ba57f830726]
# to [b52c2abe4250b5de9ed4120c6ae7fb9f7c33214a]
#
# patch "src/hashes/whirl/whirl.c"
# from [4036d1c6ad3f1421be81c3e928483f40ae3334c8]
# to [fa54a1033580737b4084442a9eb5e86d9c65e38a]
#
# patch "src/hashes/whirl/whirltab.c"
# from [c75a4e0b7f7f4b6a994e52d650d0f77420e98d0d]
# to [b46a2443ddb64fe1c0ed34b92d3ffbaeed61d95b]
#
# patch "src/headers/ltc_tommath.h"
# from [c8e202d5b2b69feb8a255872514685eccf82bb03]
# to [a6ad1c8a7e280669d3ec8b6d150451ec1d1c9ea0]
#
# patch "src/headers/tomcrypt.h"
# from [4c6d450555db3e46b7e1c79c2bbfc2976af74ea1]
# to [bceecf59bf6a6fd02640e37dc21590c4327c88f2]
#
# patch "src/headers/tomcrypt_argchk.h"
# from [f5830ae12b0564a0c8027d777228accc76d8cb0c]
# to [0f2e2d74131de68de1dbf8b80ffb897e3c92f5d6]
#
# patch "src/headers/tomcrypt_cfg.h"
# from [c93d6721429010e5811ff4811e5b9ef83162a9fa]
# to [2183f8b4456136feda31f32d056862eb3ce6a5ac]
#
# patch "src/headers/tomcrypt_cipher.h"
# from [c3ce8966f910ff29ec719b9af7d87b70686a02c4]
# to [111bd8bf66cb23359cdb27b5f3ec1479cbbdb380]
#
# patch "src/headers/tomcrypt_custom.h"
# from [f507a7f652467682ad0b842bc0b1b8a572c325d5]
# to [baa9c701e90b3de1330da7c185a90cb5256ebc44]
#
# patch "src/headers/tomcrypt_hash.h"
# from [93c98acbf5e1bf8a08ee1e9934bfa55881986c47]
# to [c1ced8ed0a7bd83ba58a98f40e0827d8bc7f13fa]
#
# patch "src/headers/tomcrypt_macros.h"
# from [42fc94aeffd1989a8bfeff69860c2d06c59f4cee]
# to [90831ab5a2fb50959e9d9bc6a2e426b039cdb1ef]
#
# patch "src/headers/tomcrypt_misc.h"
# from [d5598df96abb6c47260895f88d817f53242127b1]
# to [2137350d66d2b64205947792b5b89208510d6c50]
#
# patch "src/headers/tomcrypt_pk.h"
# from [ec5fb7007b02c76f82ff0f24fc340d95396cdefa]
# to [0cbe63bd012ca6ed3e248c7a621cb4e363e2465e]
#
# patch "src/headers/tomcrypt_pkcs.h"
# from [9f28361cb5f5126bc309575ca33b0e30e884ff2e]
# to [1af35751a7494c7f89904aeda462e6baa7720e95]
#
# patch "src/headers/tomcrypt_prng.h"
# from [6a8dfd0ee87bed3c505064966211c756c5c4b715]
# to [89674e4e0d214164a2e0db6917ae3731a9fa2edc]
#
# patch "src/mac/hmac/hmac_done.c"
# from [89b154b48f42b4ca04c1d933eb12490fd1aa93a7]
# to [830ce002191b07ed010cfbe3ebafaf599514e35c]
#
# patch "src/mac/hmac/hmac_file.c"
# from [f816898ed6533305a41ebef221f056055d925800]
# to [cba21a9e8f1ffdbf0bdadec345118d8056f15b00]
#
# patch "src/mac/hmac/hmac_init.c"
# from [6654bb5759db0f86a0de389acdf123c8d2c81e8b]
# to [8b4d50b9190d94a292d038776667ac5e68469f73]
#
# patch "src/mac/hmac/hmac_memory.c"
# from [d30aa0b3233d9015b875f22cde38f5c08b891719]
# to [2ac221c04ad057319e58880c54fc6a223265bf2e]
#
# patch "src/mac/hmac/hmac_process.c"
# from [574fed7b7ee6fd54e5b5f3af187c1b273f583b75]
# to [cf938a2b5d5c09f1cdd2f833c8f222664a7ef623]
#
# patch "src/mac/hmac/hmac_test.c"
# from [58bd446b61f06549a9c15d1e01f202731b95cbd6]
# to [7da9b4c2226351f5648c2cae38e41a2228f25163]
#
# patch "src/mac/omac/omac_done.c"
# from [efa16df7c6d131bd205cab6b038739c93fb68f63]
# to [e2d78a61797e4ff9adbc1dedd5da98a7d2e95830]
#
# patch "src/mac/omac/omac_file.c"
# from [2afef1699a4fbd0a07ed0963ae488c6459b34c26]
# to [f8153f37ea40c07c9fef04ac36ba9bcf43d1744b]
#
# patch "src/mac/omac/omac_init.c"
# from [3fd8ee95af8b4e0b722e0a843647698f5e8c055d]
# to [16be47c6d1baea3ef6177d605fc11843e17439f0]
#
# patch "src/mac/omac/omac_memory.c"
# from [24fffa428b0172279f7df8cae6e6347d29ecf4ef]
# to [085f9691bc92bc058f013c893a41280490b33307]
#
# patch "src/mac/omac/omac_process.c"
# from [33377d8e42b40d06d6b69800eba482d75730b498]
# to [5c4a530ab94b6eb25e7c07ad422548e05497d75d]
#
# patch "src/mac/omac/omac_test.c"
# from [c9ce28d25831df9a989037e931ec95728ff328eb]
# to [89b8600f5b778f718d2e2586a963e1365312096b]
#
# patch "src/mac/pmac/pmac_done.c"
# from [ef8714d92c6a7795a9193d9286134912d40862a5]
# to [395bd725adec86ea03d81fd24e389a2235826fc0]
#
# patch "src/mac/pmac/pmac_file.c"
# from [5b27072710aef3a82cb40c762531cbaaead77d2a]
# to [23525f3b42869e2ff69db36c8b5e83c7b769a2bd]
#
# patch "src/mac/pmac/pmac_init.c"
# from [d1c6d0ae04c089d7b40715cb96e9e123d61f1f6f]
# to [f1b9cd65c1ac3cf84f450821c8154ed5060dabb2]
#
# patch "src/mac/pmac/pmac_memory.c"
# from [36e00c93ab5d5eba692ab8ab8e88b8dae696f1f9]
# to [4d9991501038856d19d31de036f4172d91077111]
#
# patch "src/mac/pmac/pmac_ntz.c"
# from [f8896e2a63d0aa5fef2d72d5df02d3bca5bd08e2]
# to [b2e8bb923b5560bb7f3aedfc71fc19cb3242acc6]
#
# patch "src/mac/pmac/pmac_process.c"
# from [8096c8493f5aaac814ebf8580eb37e0cf931688b]
# to [6810c45353e9430a866cde47f272004a4240b7a1]
#
# patch "src/mac/pmac/pmac_shift_xor.c"
# from [5ed633d51fa3cc18e33d83648056a625e6ced735]
# to [c8e491c7131ce4e912f1180789b280ed52554c02]
#
# patch "src/mac/pmac/pmac_test.c"
# from [9d89604d123c22b1b5d7c635cc556ec3ff7bdb0b]
# to [b51f7ac831d65ef710b98ff9c09af8be7c2425f2]
#
# patch "src/misc/base64/base64_decode.c"
# from [49ccbccfc3b994abf9539af29b18d0d37991e060]
# to [06a5ce800927e83cea98ed256790fca8e8fd22bc]
#
# patch "src/misc/base64/base64_encode.c"
# from [41306437f35d6fd1a1462446b9b9967237a4572d]
# to [f7bc6e9ceb8f1a484f886437cc419bed4712164f]
#
# patch "src/misc/burn_stack.c"
# from [d0cf0fe0df8c60bbc9776df33875c42429f93401]
# to [caf4bc2d8db35135ee7574b9b2b002e6051eef40]
#
# patch "src/misc/crypt/crypt.c"
# from [7ebd454ea652bfc8ef1c36fb14bb624667f4c16b]
# to [3e6e49ccaf2067e1ebe1df669eb58a927c43a6a0]
#
# patch "src/misc/crypt/crypt_argchk.c"
# from [d5fc8b797f1eb724eb6dcf88d2725e9b0db01233]
# to [2c479f471c4075cf4e4f9e59a2a10946a0201256]
#
# patch "src/misc/crypt/crypt_cipher_descriptor.c"
# from [e852e0c5297f1290ba0859fa90adfca9544bcf0e]
# to [73f932c13ab5f26a7b58215f892aaf81eaabcb14]
#
# patch "src/misc/crypt/crypt_cipher_is_valid.c"
# from [87d3564c70eebe120547085c3df7f9eca7361270]
# to [0709756d15e9c7406036d894fd8d8557c024a809]
#
# patch "src/misc/crypt/crypt_find_cipher.c"
# from [bc923fa8169affeb2a4ab79fb2125948b46969ed]
# to [2b7184d907e3dec8b07602f2a2a728a3117ab35d]
#
# patch "src/misc/crypt/crypt_find_cipher_any.c"
# from [d17e11b94ba6a749254287894a91d6f9a8482e44]
# to [5ab0723b521cb2e0573076ee7b2443336fc440c0]
#
# patch "src/misc/crypt/crypt_find_cipher_id.c"
# from [7b506d0615d6623dfe08b00cc16db7f69d005c3d]
# to [ff397ce99ac1432e850426c871246fd9150539da]
#
# patch "src/misc/crypt/crypt_find_hash.c"
# from [f76c18025cbcf46bc352092b97f72c028391af5e]
# to [476b4976ac23a6b0f8c04f1ee2c7c76c7b316321]
#
# patch "src/misc/crypt/crypt_find_hash_any.c"
# from [660c414f829cfc492b5898c1ae6dba87016bd5ab]
# to [11de7fc09c2192142aabf52bc4b1717f8661f2de]
#
# patch "src/misc/crypt/crypt_find_hash_id.c"
# from [1780dcad9d594be07a6dbbbc132993ca5f7191db]
# to [e1ba2002d82e219d2e56275a7130ca0cd3f79d55]
#
# patch "src/misc/crypt/crypt_find_prng.c"
# from [cbaf0bf3b07a1c03bf0c0327f3c41321d23353c4]
# to [34967f9e2afb080c6e265cdbf3850110940750f4]
#
# patch "src/misc/crypt/crypt_hash_descriptor.c"
# from [25cf2d4caabdf7d198700c00683aa64bca510d0c]
# to [e3dbe0f53fc63730885e25e8abf9c6bd12223eda]
#
# patch "src/misc/crypt/crypt_hash_is_valid.c"
# from [9c6a521e5f28f2483382d0448e1183a9a950d72e]
# to [b39564f1f2cf44b8ebff19c6f020f7dd2e2c9c1a]
#
# patch "src/misc/crypt/crypt_prng_descriptor.c"
# from [9653300de86bf2030e9b65bda2ee3d8b26b0731f]
# to [2ede0fb59891ecc5304e4ded54df4c66d3ff600c]
#
# patch "src/misc/crypt/crypt_prng_is_valid.c"
# from [796eeeffe481eb08358c2658c551d1aab0f510a1]
# to [e659acc91909966777347558f8557210e840edfb]
#
# patch "src/misc/crypt/crypt_register_cipher.c"
# from [a14e1b5754c9a855f8d324ae44e176700f1a7b86]
# to [e1b80d76dd8e11a78a53bab2672a1c6a6ccad9aa]
#
# patch "src/misc/crypt/crypt_register_hash.c"
# from [6a21ad7f488fe36029231d30660a37d50afca33d]
# to [1dba421730f0d54e2e5f761d04920711c283cada]
#
# patch "src/misc/crypt/crypt_register_prng.c"
# from [3f113c77f27f5f1d0bcfae872a908c60a160f3a7]
# to [d2d86c2d1258b5fdbbbc9a8cd74ef9ad1435c356]
#
# patch "src/misc/crypt/crypt_unregister_cipher.c"
# from [419f32d16de0c11d5f719390fa8fdce9c8c0539f]
# to [e4d1c233e4a5a978ddc45e3a172b22d874ca01d8]
#
# patch "src/misc/crypt/crypt_unregister_hash.c"
# from [2adb78fd5cdcfc7ea7a6d369ac75d31ef50f62cf]
# to [372403e67f0e6cc7853fe2f210939bc92f1e0548]
#
# patch "src/misc/crypt/crypt_unregister_prng.c"
# from [63be532cc3f25df9347597bdb9f8af57d3995bf8]
# to [66f1ec4730e95d001b2ba18c1b354c064a4cca40]
#
# patch "src/misc/error_to_string.c"
# from [4b53223659cd11cfedabf2dbd1ac1f00064ec812]
# to [8f05e03460d34499712060ecd422a51ce0654c51]
#
# patch "src/misc/mpi/is_prime.c"
# from [fba76e22f66b4f36cb45b84d7ba7aa45f1223b08]
# to [83e72f8c29bf7644a2b345a531fd5d702d51cdd8]
#
# patch "src/misc/mpi/mpi_to_ltc_error.c"
# from [7d237900c806bdaf1b45494089d37020aa4051f9]
# to [f395a4779049cfef3611b316463cfdbe673e75e0]
#
# patch "src/misc/mpi/rand_prime.c"
# from [716723552a2ccc6a70d253135151d4595825359a]
# to [194d34e51de2b0a1468133a049c129a15de13162]
#
# patch "src/misc/pkcs5/pkcs_5_1.c"
# from [941d7b61359c749cb1ced2434babf891c369fcdb]
# to [793dc22fe06f752db28714d47b9bcce1683375cf]
#
# patch "src/misc/pkcs5/pkcs_5_2.c"
# from [aff02c6ef4537bc865b5b45fdcedbbbd4bb509b5]
# to [cb0e63ae9481366f2372a7a6f337271d20ba281a]
#
# patch "src/misc/zeromem.c"
# from [65274ac7cadc50f41d031543f4468c6950651218]
# to [b2a19872a28f4b41103dd44c9f0f8159530949a9]
#
# patch "src/modes/cbc/cbc_decrypt.c"
# from [290fb8f65b1037f8479d118dd94340458eeaed8d]
# to [5657191904b53c1e2306c6e6c4a7875133994326]
#
# patch "src/modes/cbc/cbc_encrypt.c"
# from [f7a8ee79312f4ed4fdc864f7dd46eafa096a8203]
# to [3807fb6073ece9d2640e6f3de47a1342d62c9757]
#
# patch "src/modes/cbc/cbc_getiv.c"
# from [e988ddd3049ba757b3fd6597cf7668edfb00f5a6]
# to [7f5b71fc6a30f319cf0f77d5172e3674ab2fd98d]
#
# patch "src/modes/cbc/cbc_setiv.c"
# from [8e48c5f46e2363cd36e0d27081f7d52c0ea571df]
# to [0eb7da8bb5c8947b3db9e0895a5d4229b996e5c9]
#
# patch "src/modes/cbc/cbc_start.c"
# from [ddec855ac3df281dd730c1b00cc6afaa261bf450]
# to [d72bc2140a079b057b5d613a52e76b21683c6856]
#
# patch "src/modes/cfb/cfb_decrypt.c"
# from [7acd9462cff157796dd3985cab22ed034d4e4719]
# to [e8607545ea7b5979ed6e6b9904dbbb18c6d0c393]
#
# patch "src/modes/cfb/cfb_encrypt.c"
# from [fd31d42c8a102268ebd31d6cab7b53756eafac91]
# to [14a69e6a4a06fa12eb4dc435249caa8478d11fcf]
#
# patch "src/modes/cfb/cfb_getiv.c"
# from [59ac5e237c81e1f436a0b8da54bcc5c353506fe1]
# to [eaf7c390991e4883bc3758be55877dfd799c7988]
#
# patch "src/modes/cfb/cfb_setiv.c"
# from [639e29970bb27da0715e6c70eb528e3b6f6aa749]
# to [124740d4b6fff12f3c9e643a0cf3b355055e0ea1]
#
# patch "src/modes/cfb/cfb_start.c"
# from [26504f879ea692e9dc9a8c5740742e41b32fdb6b]
# to [9abd8e45c4122c3c22ae012bfcbd58406161d6f9]
#
# patch "src/modes/ctr/ctr_decrypt.c"
# from [a0963f9ecf86df5992704cc8d0df2297f7736845]
# to [ee776d7959d119c232920d1e3d42ee257f8b07ca]
#
# patch "src/modes/ctr/ctr_encrypt.c"
# from [95d1d7c5d3a1fbaf24dc7655d10901fff1e98530]
# to [21fe301efa077202148343f086ff6f9926725447]
#
# patch "src/modes/ctr/ctr_getiv.c"
# from [6bd784631074f758a426149338a9c276034bc3e1]
# to [028d7e4f016b3bd22a704c647fa477e5b6584d0d]
#
# patch "src/modes/ctr/ctr_setiv.c"
# from [6ba792cb56a6d9298a143de79da714c2c99b82e5]
# to [6574faa288336fce210c09574de3dcd79680d089]
#
# patch "src/modes/ctr/ctr_start.c"
# from [e5ec03b7bb554c9bedbbdecb3e932874957fa953]
# to [93c4e9fc22ddedd10f8d5e45aa4fed6120d3112a]
#
# patch "src/modes/ecb/ecb_decrypt.c"
# from [92321c1426f8be007eac0df4caf7635cbb5e216f]
# to [c58ea543f299be0533fb37d04568a14e7c0e529f]
#
# patch "src/modes/ecb/ecb_encrypt.c"
# from [cd87943d90f32a2fd5f8cf9b34ebd1548881a05f]
# to [7f394644cc1a95161b106b57f323ac3f1f887f43]
#
# patch "src/modes/ecb/ecb_start.c"
# from [06a805a4973c5fcc05301744e5a708765f7e4943]
# to [4603e4eabd823ac3da3ae4f510ec14bddde2d008]
#
# patch "src/modes/ofb/ofb_decrypt.c"
# from [47866fd52d8724ddbfbc7808d3e6bc563c7233c1]
# to [65c8d77312929be4b5929ba72c92494d21adb6dd]
#
# patch "src/modes/ofb/ofb_encrypt.c"
# from [933ad71fe38d0cbfdb1c9ac86fdf0d0a94c5a1c2]
# to [df30fbb6b98c983dd1b4fa943e1526f23c8637f1]
#
# patch "src/modes/ofb/ofb_getiv.c"
# from [78815a65ad0934db29c875cf19333887ad1d46e5]
# to [9ce11360bca1c3ee68a27b6d80476e50ab1ac657]
#
# patch "src/modes/ofb/ofb_setiv.c"
# from [45017eac234d24e2f2f6c766f36ec6d7ff72788a]
# to [49257bf651c61a12fae022b8c04b916f202f715c]
#
# patch "src/modes/ofb/ofb_start.c"
# from [26601c4c9223e3b3dc998464c2635dd16c637bfe]
# to [6729f0bbfe04bbd0765937cf726de4da58ef91dc]
#
# patch "src/pk/dh/dh.c"
# from [0fd1777a9eec8eade466efc4dada7b7879f38435]
# to [2bc979826ab57121c5a0ed62dc9cf207436b3d59]
#
# patch "src/pk/dh/dh_sys.c"
# from [27d992e40157db0321732981918423cc11564d93]
# to [0e6061291a0e4f8c571e2ee6371e4267341c3e4c]
#
# patch "src/pk/dsa/dsa_export.c"
# from [a14e4aef007a39cc12d42c98ccdc37dc6fc6f865]
# to [b97ff705c170c99fc987b8f131e61662abeacd6f]
#
# patch "src/pk/dsa/dsa_free.c"
# from [50742e1d880adbd617bbacb07e38f69b2894d7f0]
# to [664f22a829d3ae5e388407a75457a5af3029b2fb]
#
# patch "src/pk/dsa/dsa_import.c"
# from [482eef5b43343cf670fc6f22ac3c5d6010bf0ec7]
# to [3461896a9037efdb61f635c57a21fbe23b5efbf9]
#
# patch "src/pk/dsa/dsa_make_key.c"
# from [4d121be5254809078395e38cf6420f088f5d9b53]
# to [c6316d13e52ab41823979e637a4e564778eaffed]
#
# patch "src/pk/dsa/dsa_sign_hash.c"
# from [03e729979ee9894d40f91bde6786675fe762ab2a]
# to [a3a3e813b9e004e5c0ca38dff304ddd3fb5c5ea9]
#
# patch "src/pk/dsa/dsa_verify_hash.c"
# from [a83243cf6c40d2c9141f0ee59032cc1d653823b6]
# to [42dda609eebadc9503471c2c41e416eb4266bc3a]
#
# patch "src/pk/dsa/dsa_verify_key.c"
# from [191b573f1390add795612313e1576d2f2304dfe3]
# to [10c2d2ad066a096b31d9d4b88327e63343278c4a]
#
# patch "src/pk/ecc/ecc.c"
# from [7a57f0ed231bd44f635756cf7ddea6cfe9f1997b]
# to [f49c8df95ba46b8dec02e240d5f465fe0c91846f]
#
# patch "src/pk/ecc/ecc_sys.c"
# from [bd4c218a6e4cfec85c5b5329851f741426efe385]
# to [cfb691aef44b3d8aad694f35a5e4b12657845097]
#
# patch "src/pk/packet_store_header.c"
# from [d0bef10d2f6c40a015d6ee2fef6ba89a08d1bc51]
# to [6f052b5c5d1248914a836f192a3afd5480219680]
#
# patch "src/pk/packet_valid_header.c"
# from [21898441385ef02e45c3034e11fa5c7f6783ddf7]
# to [c9c2f9dd6e0a5f4ad3b4cdd40494cc6ab270d138]
#
# patch "src/pk/pkcs1/pkcs_1_i2osp.c"
# from [bc3dd90b27617ec61f4265f24f6896103060cab1]
# to [946bf839fe6c4558ce80b099844df4d80265ac7c]
#
# patch "src/pk/pkcs1/pkcs_1_mgf1.c"
# from [a634d075ea5a110e6f7c3a4757e7dae0ed6459e3]
# to [7b0cae632d1b1a023a78f9b7278606985e57b8a9]
#
# patch "src/pk/pkcs1/pkcs_1_oaep_decode.c"
# from [ff3eb43d282de73d129242a35ad6ee9fbff0209c]
# to [ed3f16f08b8576ed2e6569f06982e3aaf38bc164]
#
# patch "src/pk/pkcs1/pkcs_1_oaep_encode.c"
# from [4e2fad693071f6eab8883542033a88320709b883]
# to [64b76d3b83a274f828d908f87076a0f805ab2855]
#
# patch "src/pk/pkcs1/pkcs_1_os2ip.c"
# from [c8522c7a8eba308bc9d8032aaf94c58c00fec192]
# to [fe259380a76ccccca37ca70a0e024e3fbffa6b95]
#
# patch "src/pk/pkcs1/pkcs_1_pss_decode.c"
# from [4098b3b99c9f32ac78ca7aa7d9fe4154e14dd23f]
# to [66a0b128f829e54f3aa24ff7b6678dfdd0804c89]
#
# patch "src/pk/pkcs1/pkcs_1_pss_encode.c"
# from [a0c15b111517e97a0f55182ad9f8ccf9a6167c4e]
# to [e2cba20e37780fc0e490d2f59df630069c560042]
#
# patch "src/pk/rsa/rsa_decrypt_key.c"
# from [471c35e6305e3e3a7819d08525526b0019248723]
# to [d56135d77a951341213a7f569c2986efe006c205]
#
# patch "src/pk/rsa/rsa_encrypt_key.c"
# from [1ca9226d54ce36a9e700000145db98a22b3753d5]
# to [7a61f097fdab859a81e5405e2e13a13a5020ffa9]
#
# patch "src/pk/rsa/rsa_export.c"
# from [520f23951ac1fd1e28ab14a9283ef84abacc8baa]
# to [e13eb090612e6570f2264c403110bd5a3c6b6de5]
#
# patch "src/pk/rsa/rsa_exptmod.c"
# from [c23f2543a33b6fe7b8d0bab375336352c85ee739]
# to [aa0fdf5842b2890f26c0eac6c2c5cf4025230f7a]
#
# patch "src/pk/rsa/rsa_free.c"
# from [f71d737fc8ebc5fb655089bddaaef76fd28f9479]
# to [57bf35b38eae8c17b59e760dac8b1bcd90633fb6]
#
# patch "src/pk/rsa/rsa_import.c"
# from [4a7e1456f13ac5313a999164c2f7e41022c3419b]
# to [8b35baf83699e0e45136734a2000902d7fb0b09c]
#
# patch "src/pk/rsa/rsa_make_key.c"
# from [59612917f688ba173a370b6e6cb5274c151047dd]
# to [3e9ffaabcad59f039c280d9c14110aecbad56947]
#
# patch "src/pk/rsa/rsa_sign_hash.c"
# from [d3856ae248e093d7f73f48dee96911f2293cd4a5]
# to [ce264f97caf9276b92b2f18be3b6e6784217d1ab]
#
# patch "src/pk/rsa/rsa_verify_hash.c"
# from [a1667bf6fa35453ae0b69bfec574ab3c39525935]
# to [c48a5a47fe407fae89b90d7a6079397213d206cc]
#
# patch "src/prngs/rc4.c"
# from [5ec2edad9a2769ea2db2291d17518868efa58bb1]
# to [ced2dc5bab5331e47ac7f2404e28dd8e57a10700]
#
# patch "src/prngs/rng_get_bytes.c"
# from [7376a0b634a5f07b47ef743ad91a3cb275ea44f8]
# to [62a3db1e644dc6ce0c7df5aaef7ff740e7083fe2]
#
# patch "src/prngs/rng_make_prng.c"
# from [77bf6290e6bfb4bce5e017b1018dee77f7015316]
# to [b2a5921f56d12a5e4088302756535b8c9af6f2f5]
#
# patch "src/prngs/sprng.c"
# from [7d9829bc6e7a6cab3fd2593a6a2a000b2dd1350c]
# to [87c2c1dc6c2a17e1593f5131d224691187266607]
#
# patch "src/prngs/yarrow.c"
# from [443c387d2a917a521ba0a203e674bc6781155296]
# to [093607543fb36bfe851d499780fc7acef89206a7]
#
# patch "testprof/base64_test.c"
# from [8563403c95aa7f401d28e079a11ae1546f53a819]
# to [a21ba8b7210d2417651f3f3564a3a996a4adb2c3]
#
# patch "testprof/cipher_hash_test.c"
# from [5583bea1f573708f68ac52da3c4852e9708b94ed]
# to [15a9af5dc06b90801964cf5cfe0f455ac1ecd03b]
#
# patch "testprof/dh_tests.c"
# from [db5836adc0a960ff208b529cc1a8060ddf3840b8]
# to [60d7c6ec06bf550373e5349e0ffaf1f3f870a75d]
#
# patch "testprof/dsa_test.c"
# from [dda7a8784e843636c1b201a616989e7deadda832]
# to [71f8cd03e6e3e09778507fe4503e62fb4d490eaf]
#
# patch "testprof/ecc_test.c"
# from [c6f856ccd26a648520e74dfc3671db2423887755]
# to [618734615cb07e6076dd9175863699c15f03aebe]
#
# patch "testprof/mac_test.c"
# from [b146fe51848f5a83eca8b0d3019a18e51e35eed1]
# to [0c666d90789a5706db8f32f3d7af8a342a8f988a]
#
# patch "testprof/makefile"
# from [41cb74e27182085077426a8a65ce689d74631997]
# to [88349cb07ee42c338d1b4c3449a156b848224e43]
#
# patch "testprof/makefile.icc"
# from [ba1e3cae1c73187489c4366a45bc0333b0138be3]
# to [f05458758a1b5419ebdc00ff616f0239141a6c7f]
#
# patch "testprof/makefile.msvc"
# from [e1dce5e5ec45d9d7d54f6de85c86bb9077e214a4]
# to [3f3f0470dee723f6a584f004ba39de572a4fa3a3]
#
# patch "testprof/modes_test.c"
# from [82f5d5a22220c23604ef85c0b6365a9dd044b165]
# to [bc64ebd47786eb069d28f75b43b7329671f19a34]
#
# patch "testprof/pkcs_1_test.c"
# from [5cd09f8b0ebd98bb507bbd83b1ea22a31e4bfa9b]
# to [af5e9e49a064f9d64e7a650f80cd900d1bec9533]
#
# patch "testprof/rsa_test.c"
# from [5c282302d927e2683f17ff312cf50d7afbfd9080]
# to [360b59353dbb66388e745ba30ae141bda417359b]
#
# patch "testprof/store_test.c"
# from [d202711443c1aee0e06d8fcc691883ea5f8e56c5]
# to [293da8118a56bc08a77813dd8c0302767b636dfc]
#
# patch "testprof/test.c"
# from [671f2b2af594fcf024cf2c7819d3bb11b520372b]
# to [d31df3bbea875e73632d75cab3c7c7f8dc805bd1]
#
# patch "testprof/x86_prof.c"
# from [611ffecc1e0bc74ea5659f80f66016f1e3e3aef9]
# to [ecbf14dad9f800da52723d3485c7f3f99a26977a]
#
============================================================
--- Doxyfile 965b49681f503adb5625decbe4f06b31d0d8b97d
+++ Doxyfile 965b49681f503adb5625decbe4f06b31d0d8b97d
@@ -0,0 +1,1155 @@
+# Doxyfile 1.3.9.1
+
+# This file describes the settings to be used by the documentation system
+# doxygen (www.doxygen.org) for a project
+#
+# All text after a hash (#) is considered a comment and will be ignored
+# The format is:
+# TAG = value [value, ...]
+# For lists items can also be appended using:
+# TAG += value [value, ...]
+# Values that contain spaces should be placed between quotes (" ")
+
+#---------------------------------------------------------------------------
+# Project related configuration options
+#---------------------------------------------------------------------------
+
+# The PROJECT_NAME tag is a single word (or a sequence of words surrounded
+# by quotes) that should identify the project.
+
+PROJECT_NAME = LibTomCrypt
+
+# The PROJECT_NUMBER tag can be used to enter a project or revision number.
+# This could be handy for archiving the generated documentation or
+# if some version control system is used.
+
+PROJECT_NUMBER = 1.05
+
+# The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute)
+# base path where the generated documentation will be put.
+# If a relative path is entered, it will be relative to the location
+# where doxygen was started. If left blank the current directory will be used.
+
+OUTPUT_DIRECTORY = doc/doxygen
+
+# If the CREATE_SUBDIRS tag is set to YES, then doxygen will create
+# 4096 sub-directories (in 2 levels) under the output directory of each output
+# format and will distribute the generated files over these directories.
+# Enabling this option can be useful when feeding doxygen a huge amount of source
+# files, where putting all generated files in the same directory would otherwise
+# cause performance problems for the file system.
+
+CREATE_SUBDIRS = NO
+
+# The OUTPUT_LANGUAGE tag is used to specify the language in which all
+# documentation generated by doxygen is written. Doxygen will use this
+# information to generate all constant output in the proper language.
+# The default language is English, other supported languages are:
+# Brazilian, Catalan, Chinese, Chinese-Traditional, Croatian, Czech, Danish,
+# Dutch, Finnish, French, German, Greek, Hungarian, Italian, Japanese,
+# Japanese-en (Japanese with English messages), Korean, Korean-en, Norwegian,
+# Polish, Portuguese, Romanian, Russian, Serbian, Slovak, Slovene, Spanish,
+# Swedish, and Ukrainian.
+
+OUTPUT_LANGUAGE = English
+
+# This tag can be used to specify the encoding used in the generated output.
+# The encoding is not always determined by the language that is chosen,
+# but also whether or not the output is meant for Windows or non-Windows users.
+# In case there is a difference, setting the USE_WINDOWS_ENCODING tag to YES
+# forces the Windows encoding (this is the default for the Windows binary),
+# whereas setting the tag to NO uses a Unix-style encoding (the default for
+# all platforms other than Windows).
+
+USE_WINDOWS_ENCODING = NO
+
+# If the BRIEF_MEMBER_DESC tag is set to YES (the default) Doxygen will
+# include brief member descriptions after the members that are listed in
+# the file and class documentation (similar to JavaDoc).
+# Set to NO to disable this.
+
+BRIEF_MEMBER_DESC = YES
+
+# If the REPEAT_BRIEF tag is set to YES (the default) Doxygen will prepend
+# the brief description of a member or function before the detailed description.
+# Note: if both HIDE_UNDOC_MEMBERS and BRIEF_MEMBER_DESC are set to NO, the
+# brief descriptions will be completely suppressed.
+
+REPEAT_BRIEF = YES
+
+# This tag implements a quasi-intelligent brief description abbreviator
+# that is used to form the text in various listings. Each string
+# in this list, if found as the leading text of the brief description, will be
+# stripped from the text and the result after processing the whole list, is used
+# as the annotated text. Otherwise, the brief description is used as-is. If left
+# blank, the following values are used ("$name" is automatically replaced with the
+# name of the entity): "The $name class" "The $name widget" "The $name file"
+# "is" "provides" "specifies" "contains" "represents" "a" "an" "the"
+
+ABBREVIATE_BRIEF =
+
+# If the ALWAYS_DETAILED_SEC and REPEAT_BRIEF tags are both set to YES then
+# Doxygen will generate a detailed section even if there is only a brief
+# description.
+
+ALWAYS_DETAILED_SEC = NO
+
+# If the INLINE_INHERITED_MEMB tag is set to YES, doxygen will show all inherited
+# members of a class in the documentation of that class as if those members were
+# ordinary class members. Constructors, destructors and assignment operators of
+# the base classes will not be shown.
+
+INLINE_INHERITED_MEMB = NO
+
+# If the FULL_PATH_NAMES tag is set to YES then Doxygen will prepend the full
+# path before files name in the file list and in the header files. If set
+# to NO the shortest path that makes the file name unique will be used.
+
+FULL_PATH_NAMES = YES
+
+# If the FULL_PATH_NAMES tag is set to YES then the STRIP_FROM_PATH tag
+# can be used to strip a user-defined part of the path. Stripping is
+# only done if one of the specified strings matches the left-hand part of
+# the path. The tag can be used to show relative paths in the file list.
+# If left blank the directory from which doxygen is run is used as the
+# path to strip.
+
+STRIP_FROM_PATH = src
+
+# The STRIP_FROM_INC_PATH tag can be used to strip a user-defined part of
+# the path mentioned in the documentation of a class, which tells
+# the reader which header file to include in order to use a class.
+# If left blank only the name of the header file containing the class
+# definition is used. Otherwise one should specify the include paths that
+# are normally passed to the compiler using the -I flag.
+
+STRIP_FROM_INC_PATH = src/headers
+
+# If the SHORT_NAMES tag is set to YES, doxygen will generate much shorter
+# (but less readable) file names. This can be useful is your file systems
+# doesn't support long names like on DOS, Mac, or CD-ROM.
+
+SHORT_NAMES = NO
+
+# If the JAVADOC_AUTOBRIEF tag is set to YES then Doxygen
+# will interpret the first line (until the first dot) of a JavaDoc-style
+# comment as the brief description. If set to NO, the JavaDoc
+# comments will behave just like the Qt-style comments (thus requiring an
+# explicit @brief command for a brief description.
+
+JAVADOC_AUTOBRIEF = YES
+
+# The MULTILINE_CPP_IS_BRIEF tag can be set to YES to make Doxygen
+# treat a multi-line C++ special comment block (i.e. a block of //! or ///
+# comments) as a brief description. This used to be the default behaviour.
+# The new default is to treat a multi-line C++ comment block as a detailed
+# description. Set this tag to YES if you prefer the old behaviour instead.
+
+MULTILINE_CPP_IS_BRIEF = NO
+
+# If the DETAILS_AT_TOP tag is set to YES then Doxygen
+# will output the detailed description near the top, like JavaDoc.
+# If set to NO, the detailed description appears after the member
+# documentation.
+
+DETAILS_AT_TOP = YES
+
+# If the INHERIT_DOCS tag is set to YES (the default) then an undocumented
+# member inherits the documentation from any documented member that it
+# re-implements.
+
+INHERIT_DOCS = YES
+
+# If member grouping is used in the documentation and the DISTRIBUTE_GROUP_DOC
+# tag is set to YES, then doxygen will reuse the documentation of the first
+# member in the group (if any) for the other members of the group. By default
+# all members of a group must be documented explicitly.
+
+DISTRIBUTE_GROUP_DOC = NO
+
+# The TAB_SIZE tag can be used to set the number of spaces in a tab.
+# Doxygen uses this value to replace tabs by spaces in code fragments.
+
+TAB_SIZE = 4
+
+# This tag can be used to specify a number of aliases that acts
+# as commands in the documentation. An alias has the form "name=value".
+# For example adding "sideeffect=\par Side Effects:\n" will allow you to
+# put the command \sideeffect (or @sideeffect) in the documentation, which
+# will result in a user-defined paragraph with heading "Side Effects:".
+# You can put \n's in the value part of an alias to insert newlines.
+
+ALIASES =
+
+# Set the OPTIMIZE_OUTPUT_FOR_C tag to YES if your project consists of C sources
+# only. Doxygen will then generate output that is more tailored for C.
+# For instance, some of the names that are used will be different. The list
+# of all members will be omitted, etc.
+
+OPTIMIZE_OUTPUT_FOR_C = YES
+
+# Set the OPTIMIZE_OUTPUT_JAVA tag to YES if your project consists of Java sources
+# only. Doxygen will then generate output that is more tailored for Java.
+# For instance, namespaces will be presented as packages, qualified scopes
+# will look different, etc.
+
+OPTIMIZE_OUTPUT_JAVA = NO
+
+# Set the SUBGROUPING tag to YES (the default) to allow class member groups of
+# the same type (for instance a group of public functions) to be put as a
+# subgroup of that type (e.g. under the Public Functions section). Set it to
+# NO to prevent subgrouping. Alternatively, this can be done per class using
+# the \nosubgrouping command.
+
+SUBGROUPING = YES
+
+#---------------------------------------------------------------------------
+# Build related configuration options
+#---------------------------------------------------------------------------
+
+# If the EXTRACT_ALL tag is set to YES doxygen will assume all entities in
+# documentation are documented, even if no documentation was available.
+# Private class members and static file members will be hidden unless
+# the EXTRACT_PRIVATE and EXTRACT_STATIC tags are set to YES
+
+EXTRACT_ALL = YES
+
+# If the EXTRACT_PRIVATE tag is set to YES all private members of a class
+# will be included in the documentation.
+
+EXTRACT_PRIVATE = YES
+
+# If the EXTRACT_STATIC tag is set to YES all static members of a file
+# will be included in the documentation.
+
+EXTRACT_STATIC = YES
+
+# If the EXTRACT_LOCAL_CLASSES tag is set to YES classes (and structs)
+# defined locally in source files will be included in the documentation.
+# If set to NO only classes defined in header files are included.
+
+EXTRACT_LOCAL_CLASSES = YES
+
+# This flag is only useful for Objective-C code. When set to YES local
+# methods, which are defined in the implementation section but not in
+# the interface are included in the documentation.
+# If set to NO (the default) only methods in the interface are included.
+
+EXTRACT_LOCAL_METHODS = YES
+
+# If the HIDE_UNDOC_MEMBERS tag is set to YES, Doxygen will hide all
+# undocumented members of documented classes, files or namespaces.
+# If set to NO (the default) these members will be included in the
+# various overviews, but no documentation section is generated.
+# This option has no effect if EXTRACT_ALL is enabled.
+
+HIDE_UNDOC_MEMBERS = NO
+
+# If the HIDE_UNDOC_CLASSES tag is set to YES, Doxygen will hide all
+# undocumented classes that are normally visible in the class hierarchy.
+# If set to NO (the default) these classes will be included in the various
+# overviews. This option has no effect if EXTRACT_ALL is enabled.
+
+HIDE_UNDOC_CLASSES = NO
+
+# If the HIDE_FRIEND_COMPOUNDS tag is set to YES, Doxygen will hide all
+# friend (class|struct|union) declarations.
+# If set to NO (the default) these declarations will be included in the
+# documentation.
+
+HIDE_FRIEND_COMPOUNDS = NO
+
+# If the HIDE_IN_BODY_DOCS tag is set to YES, Doxygen will hide any
+# documentation blocks found inside the body of a function.
+# If set to NO (the default) these blocks will be appended to the
+# function's detailed documentation block.
+
+HIDE_IN_BODY_DOCS = NO
+
+# The INTERNAL_DOCS tag determines if documentation
+# that is typed after a \internal command is included. If the tag is set
+# to NO (the default) then the documentation will be excluded.
+# Set it to YES to include the internal documentation.
+
+INTERNAL_DOCS = NO
+
+# If the CASE_SENSE_NAMES tag is set to NO then Doxygen will only generate
+# file names in lower-case letters. If set to YES upper-case letters are also
+# allowed. This is useful if you have classes or files whose names only differ
+# in case and if your file system supports case sensitive file names. Windows
+# and Mac users are advised to set this option to NO.
+
+CASE_SENSE_NAMES = YES
+
+# If the HIDE_SCOPE_NAMES tag is set to NO (the default) then Doxygen
+# will show members with their full class and namespace scopes in the
+# documentation. If set to YES the scope will be hidden.
+
+HIDE_SCOPE_NAMES = NO
+
+# If the SHOW_INCLUDE_FILES tag is set to YES (the default) then Doxygen
+# will put a list of the files that are included by a file in the documentation
+# of that file.
+
+SHOW_INCLUDE_FILES = YES
+
+# If the INLINE_INFO tag is set to YES (the default) then a tag [inline]
+# is inserted in the documentation for inline members.
+
+INLINE_INFO = YES
+
+# If the SORT_MEMBER_DOCS tag is set to YES (the default) then doxygen
+# will sort the (detailed) documentation of file and class members
+# alphabetically by member name. If set to NO the members will appear in
+# declaration order.
+
+SORT_MEMBER_DOCS = YES
+
+# If the SORT_BRIEF_DOCS tag is set to YES then doxygen will sort the
+# brief documentation of file, namespace and class members alphabetically
+# by member name. If set to NO (the default) the members will appear in
+# declaration order.
+
+SORT_BRIEF_DOCS = NO
+
+# If the SORT_BY_SCOPE_NAME tag is set to YES, the class list will be
+# sorted by fully-qualified names, including namespaces. If set to
+# NO (the default), the class list will be sorted only by class name,
+# not including the namespace part.
+# Note: This option is not very useful if HIDE_SCOPE_NAMES is set to YES.
+# Note: This option applies only to the class list, not to the
+# alphabetical list.
+
+SORT_BY_SCOPE_NAME = YES
+
+# The GENERATE_TODOLIST tag can be used to enable (YES) or
+# disable (NO) the todo list. This list is created by putting \todo
+# commands in the documentation.
+
+GENERATE_TODOLIST = YES
+
+# The GENERATE_TESTLIST tag can be used to enable (YES) or
+# disable (NO) the test list. This list is created by putting \test
+# commands in the documentation.
+
+GENERATE_TESTLIST = YES
+
+# The GENERATE_BUGLIST tag can be used to enable (YES) or
+# disable (NO) the bug list. This list is created by putting \bug
+# commands in the documentation.
+
+GENERATE_BUGLIST = YES
+
+# The GENERATE_DEPRECATEDLIST tag can be used to enable (YES) or
+# disable (NO) the deprecated list. This list is created by putting
+# \deprecated commands in the documentation.
+
+GENERATE_DEPRECATEDLIST= YES
+
+# The ENABLED_SECTIONS tag can be used to enable conditional
+# documentation sections, marked by \if sectionname ... \endif.
+
+ENABLED_SECTIONS =
+
+# The MAX_INITIALIZER_LINES tag determines the maximum number of lines
+# the initial value of a variable or define consists of for it to appear in
+# the documentation. If the initializer consists of more lines than specified
+# here it will be hidden. Use a value of 0 to hide initializers completely.
+# The appearance of the initializer of individual variables and defines in the
+# documentation can be controlled using \showinitializer or \hideinitializer
+# command in the documentation regardless of this setting.
+
+MAX_INITIALIZER_LINES = 30
+
+# Set the SHOW_USED_FILES tag to NO to disable the list of files generated
+# at the bottom of the documentation of classes and structs. If set to YES the
+# list will mention the files that were used to generate the documentation.
+
+SHOW_USED_FILES = YES
+
+#---------------------------------------------------------------------------
+# configuration options related to warning and progress messages
+#---------------------------------------------------------------------------
+
+# The QUIET tag can be used to turn on/off the messages that are generated
+# by doxygen. Possible values are YES and NO. If left blank NO is used.
+
+QUIET = NO
+
+# The WARNINGS tag can be used to turn on/off the warning messages that are
+# generated by doxygen. Possible values are YES and NO. If left blank
+# NO is used.
+
+WARNINGS = YES
+
+# If WARN_IF_UNDOCUMENTED is set to YES, then doxygen will generate warnings
+# for undocumented members. If EXTRACT_ALL is set to YES then this flag will
+# automatically be disabled.
+
+WARN_IF_UNDOCUMENTED = YES
+
+# If WARN_IF_DOC_ERROR is set to YES, doxygen will generate warnings for
+# potential errors in the documentation, such as not documenting some
+# parameters in a documented function, or documenting parameters that
+# don't exist or using markup commands wrongly.
+
+WARN_IF_DOC_ERROR = YES
+
+# The WARN_FORMAT tag determines the format of the warning messages that
+# doxygen can produce. The string should contain the $file, $line, and $text
+# tags, which will be replaced by the file and line number from which the
+# warning originated and the warning text.
+
+WARN_FORMAT = "$file:$line: $text"
+
+# The WARN_LOGFILE tag can be used to specify a file to which warning
+# and error messages should be written. If left blank the output is written
+# to stderr.
+
+WARN_LOGFILE =
+
+#---------------------------------------------------------------------------
+# configuration options related to the input files
+#---------------------------------------------------------------------------
+
+# The INPUT tag can be used to specify the files and/or directories that contain
+# documented source files. You may enter file names like "myfile.cpp" or
+# directories like "/usr/src/myproject". Separate the files or directories
+# with spaces.
+
+INPUT = src
+
+# If the value of the INPUT tag contains directories, you can use the
+# FILE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp
+# and *.h) to filter out the source-files in the directories. If left
+# blank the following patterns are tested:
+# *.c *.cc *.cxx *.cpp *.c++ *.java *.ii *.ixx *.ipp *.i++ *.inl *.h *.hh *.hxx *.hpp
+# *.h++ *.idl *.odl *.cs *.php *.php3 *.inc *.m *.mm
+
+FILE_PATTERNS =
+
+# The RECURSIVE tag can be used to turn specify whether or not subdirectories
+# should be searched for input files as well. Possible values are YES and NO.
+# If left blank NO is used.
+
+RECURSIVE = YES
+
+# The EXCLUDE tag can be used to specify files and/or directories that should
+# excluded from the INPUT source files. This way you can easily exclude a
+# subdirectory from a directory tree whose root is specified with the INPUT tag.
+
+EXCLUDE =
+
+# The EXCLUDE_SYMLINKS tag can be used select whether or not files or directories
+# that are symbolic links (a Unix filesystem feature) are excluded from the input.
+
+EXCLUDE_SYMLINKS = NO
+
+# If the value of the INPUT tag contains directories, you can use the
+# EXCLUDE_PATTERNS tag to specify one or more wildcard patterns to exclude
+# certain files from those directories.
+
+EXCLUDE_PATTERNS =
+
+# The EXAMPLE_PATH tag can be used to specify one or more files or
+# directories that contain example code fragments that are included (see
+# the \include command).
+
+EXAMPLE_PATH =
+
+# If the value of the EXAMPLE_PATH tag contains directories, you can use the
+# EXAMPLE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp
+# and *.h) to filter out the source-files in the directories. If left
+# blank all files are included.
+
+EXAMPLE_PATTERNS =
+
+# If the EXAMPLE_RECURSIVE tag is set to YES then subdirectories will be
+# searched for input files to be used with the \include or \dontinclude
+# commands irrespective of the value of the RECURSIVE tag.
+# Possible values are YES and NO. If left blank NO is used.
+
+EXAMPLE_RECURSIVE = NO
+
+# The IMAGE_PATH tag can be used to specify one or more files or
+# directories that contain image that are included in the documentation (see
+# the \image command).
+
+IMAGE_PATH =
+
+# The INPUT_FILTER tag can be used to specify a program that doxygen should
+# invoke to filter for each input file. Doxygen will invoke the filter program
+# by executing (via popen()) the command <filter> <input-file>, where <filter>
+# is the value of the INPUT_FILTER tag, and <input-file> is the name of an
+# input file. Doxygen will then use the output that the filter program writes
+# to standard output. If FILTER_PATTERNS is specified, this tag will be
+# ignored.
+
+INPUT_FILTER =
+
+# The FILTER_PATTERNS tag can be used to specify filters on a per file pattern
+# basis. Doxygen will compare the file name with each pattern and apply the
+# filter if there is a match. The filters are a list of the form:
+# pattern=filter (like *.cpp=my_cpp_filter). See INPUT_FILTER for further
+# info on how filters are used. If FILTER_PATTERNS is empty, INPUT_FILTER
+# is applied to all files.
+
+FILTER_PATTERNS =
+
+# If the FILTER_SOURCE_FILES tag is set to YES, the input filter (if set using
+# INPUT_FILTER) will be used to filter the input files when producing source
+# files to browse (i.e. when SOURCE_BROWSER is set to YES).
+
+FILTER_SOURCE_FILES = NO
+
+#---------------------------------------------------------------------------
+# configuration options related to source browsing
+#---------------------------------------------------------------------------
+
+# If the SOURCE_BROWSER tag is set to YES then a list of source files will
+# be generated. Documented entities will be cross-referenced with these sources.
+# Note: To get rid of all source code in the generated output, make sure also
+# VERBATIM_HEADERS is set to NO.
+
+SOURCE_BROWSER = YES
+
+# Setting the INLINE_SOURCES tag to YES will include the body
+# of functions and classes directly in the documentation.
+
+INLINE_SOURCES = YES
+
+# Setting the STRIP_CODE_COMMENTS tag to YES (the default) will instruct
+# doxygen to hide any special comment blocks from generated source code
+# fragments. Normal C and C++ comments will always remain visible.
+
+STRIP_CODE_COMMENTS = NO
+
+# If the REFERENCED_BY_RELATION tag is set to YES (the default)
+# then for each documented function all documented
+# functions referencing it will be listed.
+
+REFERENCED_BY_RELATION = YES
+
+# If the REFERENCES_RELATION tag is set to YES (the default)
+# then for each documented function all documented entities
+# called/used by that function will be listed.
+
+REFERENCES_RELATION = YES
+
+# If the VERBATIM_HEADERS tag is set to YES (the default) then Doxygen
+# will generate a verbatim copy of the header file for each class for
+# which an include is specified. Set to NO to disable this.
+
+VERBATIM_HEADERS = YES
+
+#---------------------------------------------------------------------------
+# configuration options related to the alphabetical class index
+#---------------------------------------------------------------------------
+
+# If the ALPHABETICAL_INDEX tag is set to YES, an alphabetical index
+# of all compounds will be generated. Enable this if the project
+# contains a lot of classes, structs, unions or interfaces.
+
+ALPHABETICAL_INDEX = YES
+
+# If the alphabetical index is enabled (see ALPHABETICAL_INDEX) then
+# the COLS_IN_ALPHA_INDEX tag can be used to specify the number of columns
+# in which this list will be split (can be a number in the range [1..20])
+
+COLS_IN_ALPHA_INDEX = 5
+
+# In case all classes in a project start with a common prefix, all
+# classes will be put under the same header in the alphabetical index.
+# The IGNORE_PREFIX tag can be used to specify one or more prefixes that
+# should be ignored while generating the index headers.
+
+IGNORE_PREFIX =
+
+#---------------------------------------------------------------------------
+# configuration options related to the HTML output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_HTML tag is set to YES (the default) Doxygen will
+# generate HTML output.
+
+GENERATE_HTML = YES
+
+# The HTML_OUTPUT tag is used to specify where the HTML docs will be put.
+# If a relative path is entered the value of OUTPUT_DIRECTORY will be
+# put in front of it. If left blank `html' will be used as the default path.
+
+HTML_OUTPUT = html
+
+# The HTML_FILE_EXTENSION tag can be used to specify the file extension for
+# each generated HTML page (for example: .htm,.php,.asp). If it is left blank
+# doxygen will generate files with .html extension.
+
+HTML_FILE_EXTENSION = .html
+
+# The HTML_HEADER tag can be used to specify a personal HTML header for
+# each generated HTML page. If it is left blank doxygen will generate a
+# standard header.
+
+HTML_HEADER = doc/header.html
+
+# The HTML_FOOTER tag can be used to specify a personal HTML footer for
+# each generated HTML page. If it is left blank doxygen will generate a
+# standard footer.
+
+HTML_FOOTER = doc/footer.html
+
+# The HTML_STYLESHEET tag can be used to specify a user-defined cascading
+# style sheet that is used by each HTML page. It can be used to
+# fine-tune the look of the HTML output. If the tag is left blank doxygen
+# will generate a default style sheet. Note that doxygen will try to copy
+# the style sheet file to the HTML output directory, so don't put your own
+# stylesheet in the HTML output directory as well, or it will be erased!
+
+HTML_STYLESHEET =
+
+# If the HTML_ALIGN_MEMBERS tag is set to YES, the members of classes,
+# files or namespaces will be aligned in HTML using tables. If set to
+# NO a bullet list will be used.
+
+HTML_ALIGN_MEMBERS = YES
+
+# If the GENERATE_HTMLHELP tag is set to YES, additional index files
+# will be generated that can be used as input for tools like the
+# Microsoft HTML help workshop to generate a compressed HTML help file (.chm)
+# of the generated HTML documentation.
+
+GENERATE_HTMLHELP = NO
+
+# If the GENERATE_HTMLHELP tag is set to YES, the CHM_FILE tag can
+# be used to specify the file name of the resulting .chm file. You
+# can add a path in front of the file if the result should not be
+# written to the html output directory.
+
+CHM_FILE =
+
+# If the GENERATE_HTMLHELP tag is set to YES, the HHC_LOCATION tag can
+# be used to specify the location (absolute path including file name) of
+# the HTML help compiler (hhc.exe). If non-empty doxygen will try to run
+# the HTML help compiler on the generated index.hhp.
+
+HHC_LOCATION =
+
+# If the GENERATE_HTMLHELP tag is set to YES, the GENERATE_CHI flag
+# controls if a separate .chi index file is generated (YES) or that
+# it should be included in the master .chm file (NO).
+
+GENERATE_CHI = NO
+
+# If the GENERATE_HTMLHELP tag is set to YES, the BINARY_TOC flag
+# controls whether a binary table of contents is generated (YES) or a
+# normal table of contents (NO) in the .chm file.
+
+BINARY_TOC = NO
+
+# The TOC_EXPAND flag can be set to YES to add extra items for group members
+# to the contents of the HTML help documentation and to the tree view.
+
+TOC_EXPAND = NO
+
+# The DISABLE_INDEX tag can be used to turn on/off the condensed index at
+# top of each HTML page. The value NO (the default) enables the index and
+# the value YES disables it.
+
+DISABLE_INDEX = NO
+
+# This tag can be used to set the number of enum values (range [1..20])
+# that doxygen will group on one line in the generated HTML documentation.
+
+ENUM_VALUES_PER_LINE = 1
+
+# If the GENERATE_TREEVIEW tag is set to YES, a side panel will be
+# generated containing a tree-like index structure (just like the one that
+# is generated for HTML Help). For this to work a browser that supports
+# JavaScript, DHTML, CSS and frames is required (for instance Mozilla 1.0+,
+# Netscape 6.0+, Internet explorer 5.0+, or Konqueror). Windows users are
+# probably better off using the HTML help feature.
+
+GENERATE_TREEVIEW = YES
+
+# If the treeview is enabled (see GENERATE_TREEVIEW) then this tag can be
+# used to set the initial width (in pixels) of the frame in which the tree
+# is shown.
+
+TREEVIEW_WIDTH = 250
+
+#---------------------------------------------------------------------------
+# configuration options related to the LaTeX output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_LATEX tag is set to YES (the default) Doxygen will
+# generate Latex output.
+
+GENERATE_LATEX = YES
+
+# The LATEX_OUTPUT tag is used to specify where the LaTeX docs will be put.
+# If a relative path is entered the value of OUTPUT_DIRECTORY will be
+# put in front of it. If left blank `latex' will be used as the default path.
+
+LATEX_OUTPUT = latex
+
+# The LATEX_CMD_NAME tag can be used to specify the LaTeX command name to be
+# invoked. If left blank `latex' will be used as the default command name.
+
+LATEX_CMD_NAME = latex
+
+# The MAKEINDEX_CMD_NAME tag can be used to specify the command name to
+# generate index for LaTeX. If left blank `makeindex' will be used as the
+# default command name.
+
+MAKEINDEX_CMD_NAME = makeindex
+
+# If the COMPACT_LATEX tag is set to YES Doxygen generates more compact
+# LaTeX documents. This may be useful for small projects and may help to
+# save some trees in general.
+
+COMPACT_LATEX = NO
+
+# The PAPER_TYPE tag can be used to set the paper type that is used
+# by the printer. Possible values are: a4, a4wide, letter, legal and
+# executive. If left blank a4wide will be used.
+
+PAPER_TYPE = a4wide
+
+# The EXTRA_PACKAGES tag can be to specify one or more names of LaTeX
+# packages that should be included in the LaTeX output.
+
+EXTRA_PACKAGES =
+
+# The LATEX_HEADER tag can be used to specify a personal LaTeX header for
+# the generated latex document. The header should contain everything until
+# the first chapter. If it is left blank doxygen will generate a
+# standard header. Notice: only use this tag if you know what you are doing!
+
+LATEX_HEADER =
+
+# If the PDF_HYPERLINKS tag is set to YES, the LaTeX that is generated
+# is prepared for conversion to pdf (using ps2pdf). The pdf file will
+# contain links (just like the HTML output) instead of page references
+# This makes the output suitable for online browsing using a pdf viewer.
+
+PDF_HYPERLINKS = YES
+
+# If the USE_PDFLATEX tag is set to YES, pdflatex will be used instead of
+# plain latex in the generated Makefile. Set this option to YES to get a
+# higher quality PDF documentation.
+
+USE_PDFLATEX = YES
+
+# If the LATEX_BATCHMODE tag is set to YES, doxygen will add the \\batchmode.
+# command to the generated LaTeX files. This will instruct LaTeX to keep
+# running if errors occur, instead of asking the user for help.
+# This option is also used when generating formulas in HTML.
+
+LATEX_BATCHMODE = NO
+
+# If LATEX_HIDE_INDICES is set to YES then doxygen will not
+# include the index chapters (such as File Index, Compound Index, etc.)
+# in the output.
+
+LATEX_HIDE_INDICES = NO
+
+#---------------------------------------------------------------------------
+# configuration options related to the RTF output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_RTF tag is set to YES Doxygen will generate RTF output
+# The RTF output is optimized for Word 97 and may not look very pretty with
+# other RTF readers or editors.
+
+GENERATE_RTF = NO
+
+# The RTF_OUTPUT tag is used to specify where the RTF docs will be put.
+# If a relative path is entered the value of OUTPUT_DIRECTORY will be
+# put in front of it. If left blank `rtf' will be used as the default path.
+
+RTF_OUTPUT = rtf
+
+# If the COMPACT_RTF tag is set to YES Doxygen generates more compact
+# RTF documents. This may be useful for small projects and may help to
+# save some trees in general.
+
+COMPACT_RTF = NO
+
+# If the RTF_HYPERLINKS tag is set to YES, the RTF that is generated
+# will contain hyperlink fields. The RTF file will
+# contain links (just like the HTML output) instead of page references.
+# This makes the output suitable for online browsing using WORD or other
+# programs which support those fields.
+# Note: wordpad (write) and others do not support links.
+
+RTF_HYPERLINKS = YES
+
+# Load stylesheet definitions from file. Syntax is similar to doxygen's
+# config file, i.e. a series of assignments. You only have to provide
+# replacements, missing definitions are set to their default value.
+
+RTF_STYLESHEET_FILE =
+
+# Set optional variables used in the generation of an rtf document.
+# Syntax is similar to doxygen's config file.
+
+RTF_EXTENSIONS_FILE =
+
+#---------------------------------------------------------------------------
+# configuration options related to the man page output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_MAN tag is set to YES (the default) Doxygen will
+# generate man pages
+
+GENERATE_MAN = NO
+
+# The MAN_OUTPUT tag is used to specify where the man pages will be put.
+# If a relative path is entered the value of OUTPUT_DIRECTORY will be
+# put in front of it. If left blank `man' will be used as the default path.
+
+MAN_OUTPUT = man
+
+# The MAN_EXTENSION tag determines the extension that is added to
+# the generated man pages (default is the subroutine's section .3)
+
+MAN_EXTENSION = .3
+
+# If the MAN_LINKS tag is set to YES and Doxygen generates man output,
+# then it will generate one additional man file for each entity
+# documented in the real man page(s). These additional files
+# only source the real man page, but without them the man command
+# would be unable to find the correct page. The default is NO.
+
+MAN_LINKS = NO
+
+#---------------------------------------------------------------------------
+# configuration options related to the XML output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_XML tag is set to YES Doxygen will
+# generate an XML file that captures the structure of
+# the code including all documentation.
+
+GENERATE_XML = NO
+
+# The XML_OUTPUT tag is used to specify where the XML pages will be put.
+# If a relative path is entered the value of OUTPUT_DIRECTORY will be
+# put in front of it. If left blank `xml' will be used as the default path.
+
+XML_OUTPUT = xml
+
+# The XML_SCHEMA tag can be used to specify an XML schema,
+# which can be used by a validating XML parser to check the
+# syntax of the XML files.
+
+XML_SCHEMA =
+
+# The XML_DTD tag can be used to specify an XML DTD,
+# which can be used by a validating XML parser to check the
+# syntax of the XML files.
+
+XML_DTD =
+
+# If the XML_PROGRAMLISTING tag is set to YES Doxygen will
+# dump the program listings (including syntax highlighting
+# and cross-referencing information) to the XML output. Note that
+# enabling this will significantly increase the size of the XML output.
+
+XML_PROGRAMLISTING = YES
+
+#---------------------------------------------------------------------------
+# configuration options for the AutoGen Definitions output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_AUTOGEN_DEF tag is set to YES Doxygen will
+# generate an AutoGen Definitions (see autogen.sf.net) file
+# that captures the structure of the code including all
+# documentation. Note that this feature is still experimental
+# and incomplete at the moment.
+
+GENERATE_AUTOGEN_DEF = NO
+
+#---------------------------------------------------------------------------
+# configuration options related to the Perl module output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_PERLMOD tag is set to YES Doxygen will
+# generate a Perl module file that captures the structure of
+# the code including all documentation. Note that this
+# feature is still experimental and incomplete at the
+# moment.
+
+GENERATE_PERLMOD = NO
+
+# If the PERLMOD_LATEX tag is set to YES Doxygen will generate
+# the necessary Makefile rules, Perl scripts and LaTeX code to be able
+# to generate PDF and DVI output from the Perl module output.
+
+PERLMOD_LATEX = NO
+
+# If the PERLMOD_PRETTY tag is set to YES the Perl module output will be
+# nicely formatted so it can be parsed by a human reader. This is useful
+# if you want to understand what is going on. On the other hand, if this
+# tag is set to NO the size of the Perl module output will be much smaller
+# and Perl will parse it just the same.
+
+PERLMOD_PRETTY = YES
+
+# The names of the make variables in the generated doxyrules.make file
+# are prefixed with the string contained in PERLMOD_MAKEVAR_PREFIX.
+# This is useful so different doxyrules.make files included by the same
+# Makefile don't overwrite each other's variables.
+
+PERLMOD_MAKEVAR_PREFIX =
+
+#---------------------------------------------------------------------------
+# Configuration options related to the preprocessor
+#---------------------------------------------------------------------------
+
+# If the ENABLE_PREPROCESSING tag is set to YES (the default) Doxygen will
+# evaluate all C-preprocessor directives found in the sources and include
+# files.
+
+ENABLE_PREPROCESSING = YES
+
+# If the MACRO_EXPANSION tag is set to YES Doxygen will expand all macro
+# names in the source code. If set to NO (the default) only conditional
+# compilation will be performed. Macro expansion can be done in a controlled
+# way by setting EXPAND_ONLY_PREDEF to YES.
+
+MACRO_EXPANSION = NO
+
+# If the EXPAND_ONLY_PREDEF and MACRO_EXPANSION tags are both set to YES
+# then the macro expansion is limited to the macros specified with the
+# PREDEFINED and EXPAND_AS_PREDEFINED tags.
+
+EXPAND_ONLY_PREDEF = NO
+
+# If the SEARCH_INCLUDES tag is set to YES (the default) the includes files
+# in the INCLUDE_PATH (see below) will be search if a #include is found.
+
+SEARCH_INCLUDES = YES
+
+# The INCLUDE_PATH tag can be used to specify one or more directories that
+# contain include files that are not input files but should be processed by
+# the preprocessor.
+
+INCLUDE_PATH = src/headers
+
+# You can use the INCLUDE_FILE_PATTERNS tag to specify one or more wildcard
+# patterns (like *.h and *.hpp) to filter out the header-files in the
+# directories. If left blank, the patterns specified with FILE_PATTERNS will
+# be used.
+
+INCLUDE_FILE_PATTERNS =
+
+# The PREDEFINED tag can be used to specify one or more macro names that
+# are defined before the preprocessor is started (similar to the -D option of
+# gcc). The argument of the tag is a list of macros of the form: name
+# or name=definition (no spaces). If the definition and the = are
+# omitted =1 is assumed. To prevent a macro definition from being
+# undefined via #undef or recursively expanded use the := operator
+# instead of the = operator.
+
+PREDEFINED =
+
+# If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then
+# this tag can be used to specify a list of macro names that should be expanded.
+# The macro definition that is found in the sources will be used.
+# Use the PREDEFINED tag if you want to use a different macro definition.
+
+EXPAND_AS_DEFINED =
+
+# If the SKIP_FUNCTION_MACROS tag is set to YES (the default) then
+# doxygen's preprocessor will remove all function-like macros that are alone
+# on a line, have an all uppercase name, and do not end with a semicolon. Such
+# function macros are typically used for boiler-plate code, and will confuse the
+# parser if not removed.
+
+SKIP_FUNCTION_MACROS = YES
+
+#---------------------------------------------------------------------------
+# Configuration::additions related to external references
+#---------------------------------------------------------------------------
+
+# The TAGFILES option can be used to specify one or more tagfiles.
+# Optionally an initial location of the external documentation
+# can be added for each tagfile. The format of a tag file without
+# this location is as follows:
+# TAGFILES = file1 file2 ...
+# Adding location for the tag files is done as follows:
+# TAGFILES = file1=loc1 "file2 = loc2" ...
+# where "loc1" and "loc2" can be relative or absolute paths or
+# URLs. If a location is present for each tag, the installdox tool
+# does not have to be run to correct the links.
+# Note that each tag file must have a unique name
+# (where the name does NOT include the path)
+# If a tag file is not located in the directory in which doxygen
+# is run, you must also specify the path to the tagfile here.
+
+TAGFILES =
+
+# When a file name is specified after GENERATE_TAGFILE, doxygen will create
+# a tag file that is based on the input files it reads.
+
+GENERATE_TAGFILE =
+
+# If the ALLEXTERNALS tag is set to YES all external classes will be listed
+# in the class index. If set to NO only the inherited external classes
+# will be listed.
+
+ALLEXTERNALS = NO
+
+# If the EXTERNAL_GROUPS tag is set to YES all external groups will be listed
+# in the modules index. If set to NO, only the current project's groups will
+# be listed.
+
+EXTERNAL_GROUPS = YES
+
+# The PERL_PATH should be the absolute path and name of the perl script
+# interpreter (i.e. the result of `which perl').
+
+PERL_PATH = /usr/bin/perl
+
+#---------------------------------------------------------------------------
+# Configuration options related to the dot tool
+#---------------------------------------------------------------------------
+
+# If the CLASS_DIAGRAMS tag is set to YES (the default) Doxygen will
+# generate a inheritance diagram (in HTML, RTF and LaTeX) for classes with base or
+# super classes. Setting the tag to NO turns the diagrams off. Note that this
+# option is superseded by the HAVE_DOT option below. This is only a fallback. It is
+# recommended to install and use dot, since it yields more powerful graphs.
+
+CLASS_DIAGRAMS = YES
+
+# If set to YES, the inheritance and collaboration graphs will hide
+# inheritance and usage relations if the target is undocumented
+# or is not a class.
+
+HIDE_UNDOC_RELATIONS = YES
+
+# If you set the HAVE_DOT tag to YES then doxygen will assume the dot tool is
+# available from the path. This tool is part of Graphviz, a graph visualization
+# toolkit from AT&T and Lucent Bell Labs. The other options in this section
+# have no effect if this option is set to NO (the default)
+
+HAVE_DOT = YES
+
+# If the CLASS_GRAPH and HAVE_DOT tags are set to YES then doxygen
+# will generate a graph for each documented class showing the direct and
+# indirect inheritance relations. Setting this tag to YES will force the
+# the CLASS_DIAGRAMS tag to NO.
+
+CLASS_GRAPH = YES
+
+# If the COLLABORATION_GRAPH and HAVE_DOT tags are set to YES then doxygen
+# will generate a graph for each documented class showing the direct and
+# indirect implementation dependencies (inheritance, containment, and
+# class references variables) of the class with other documented classes.
+
+COLLABORATION_GRAPH = YES
+
+# If the UML_LOOK tag is set to YES doxygen will generate inheritance and
+# collaboration diagrams in a style similar to the OMG's Unified Modeling
+# Language.
+
+UML_LOOK = NO
+
+# If set to YES, the inheritance and collaboration graphs will show the
+# relations between templates and their instances.
+
+TEMPLATE_RELATIONS = NO
+
+# If the ENABLE_PREPROCESSING, SEARCH_INCLUDES, INCLUDE_GRAPH, and HAVE_DOT
+# tags are set to YES then doxygen will generate a graph for each documented
+# file showing the direct and indirect include dependencies of the file with
+# other documented files.
+
+INCLUDE_GRAPH = YES
+
+# If the ENABLE_PREPROCESSING, SEARCH_INCLUDES, INCLUDED_BY_GRAPH, and
+# HAVE_DOT tags are set to YES then doxygen will generate a graph for each
+# documented header file showing the documented files that directly or
+# indirectly include this file.
+
+INCLUDED_BY_GRAPH = YES
+
+# If the CALL_GRAPH and HAVE_DOT tags are set to YES then doxygen will
+# generate a call dependency graph for every global function or class method.
+# Note that enabling this option will significantly increase the time of a run.
+# So in most cases it will be better to enable call graphs for selected
+# functions only using the \callgraph command.
+
+CALL_GRAPH = YES
+
+# If the GRAPHICAL_HIERARCHY and HAVE_DOT tags are set to YES then doxygen
+# will graphical hierarchy of all classes instead of a textual one.
+
+GRAPHICAL_HIERARCHY = YES
+
+# The DOT_IMAGE_FORMAT tag can be used to set the image format of the images
+# generated by dot. Possible values are png, jpg, or gif
+# If left blank png will be used.
+
+DOT_IMAGE_FORMAT = png
+
+# The tag DOT_PATH can be used to specify the path where the dot tool can be
+# found. If left blank, it is assumed the dot tool can be found on the path.
+
+DOT_PATH =
+
+# The DOTFILE_DIRS tag can be used to specify one or more directories that
+# contain dot files that are included in the documentation (see the
+# \dotfile command).
+
+DOTFILE_DIRS =
+
+# The MAX_DOT_GRAPH_WIDTH tag can be used to set the maximum allowed width
+# (in pixels) of the graphs generated by dot. If a graph becomes larger than
+# this value, doxygen will try to truncate the graph, so that it fits within
+# the specified constraint. Beware that most browsers cannot cope with very
+# large images.
+
+MAX_DOT_GRAPH_WIDTH = 1024
+
+# The MAX_DOT_GRAPH_HEIGHT tag can be used to set the maximum allows height
+# (in pixels) of the graphs generated by dot. If a graph becomes larger than
+# this value, doxygen will try to truncate the graph, so that it fits within
+# the specified constraint. Beware that most browsers cannot cope with very
+# large images.
+
+MAX_DOT_GRAPH_HEIGHT = 1024
+
+# The MAX_DOT_GRAPH_DEPTH tag can be used to set the maximum depth of the
+# graphs generated by dot. A depth value of 3 means that only nodes reachable
+# from the root by following a path via at most 3 edges will be shown. Nodes that
+# lay further from the root node will be omitted. Note that setting this option to
+# 1 or 2 may greatly reduce the computation time needed for large code bases. Also
+# note that a graph may be further truncated if the graph's image dimensions are
+# not sufficient to fit the graph (see MAX_DOT_GRAPH_WIDTH and MAX_DOT_GRAPH_HEIGHT).
+# If 0 is used for the depth value (the default), the graph is not depth-constrained.
+
+MAX_DOT_GRAPH_DEPTH = 0
+
+# If the GENERATE_LEGEND tag is set to YES (the default) Doxygen will
+# generate a legend page explaining the meaning of the various boxes and
+# arrows in the dot generated graphs.
+
+GENERATE_LEGEND = YES
+
+# If the DOT_CLEANUP tag is set to YES (the default) Doxygen will
+# remove the intermediate dot files that are used to generate
+# the various graphs.
+
+DOT_CLEANUP = YES
+
+#---------------------------------------------------------------------------
+# Configuration::additions related to the search engine
+#---------------------------------------------------------------------------
+
+# The SEARCHENGINE tag specifies whether or not a search engine should be
+# used. If set to NO the values of all tags below this one will be ignored.
+
+SEARCHENGINE = NO
============================================================
--- Makefile.in 614d14564e7a7c0ce719492a15b58da29a4c239d
+++ Makefile.in 614d14564e7a7c0ce719492a15b58da29a4c239d
@@ -0,0 +1,259 @@
+# MAKEFILE for linux GCC
+#
+# Tom St Denis
+# Modified by Clay Culver
+
+# The version
+VERSION=1.02
+
+VPATH=@srcdir@
+srcdir=@srcdir@
+
+# Compiler and Linker Names
+#CC=gcc
+#LD=ld
+
+# Archiver [makes .a files]
+#AR=ar
+#ARFLAGS=r
+
+# Compilation flags. Note the += does not write over the user's CFLAGS!
+# The rest of the flags come from the parent Dropbear makefile
+CFLAGS += -c -I$(srcdir)/src/headers/ -I$(srcdir)/../
+
+# additional warnings (newer GCC 3.4 and higher)
+#CFLAGS += -Wsystem-headers -Wdeclaration-after-statement -Wbad-function-cast -Wcast-align -Wstrict-prototypes -Wmissing-prototypes \
+# -Wmissing-declarations -Wpointer-arith
+
+# optimize for SPEED
+#CFLAGS += -O3 -funroll-loops
+
+# add -fomit-frame-pointer. hinders debugging!
+CFLAGS += -fomit-frame-pointer
+
+# optimize for SIZE
+#CFLAGS += -Os -DLTC_SMALL_CODE
+
+# older GCCs can't handle the "rotate with immediate" ROLc/RORc/etc macros
+# define this to help
+#CFLAGS += -DLTC_NO_ROLC
+
+# compile for DEBUGING (required for ccmalloc checking!!!)
+#CFLAGS += -g3 -DLTC_NO_ASM
+
+#Output filenames for various targets.
+LIBNAME=libtomcrypt.a
+LIBTEST=testprof/libtomcrypt_prof.a
+HASH=hashsum
+CRYPT=encrypt
+SMALL=small
+PROF=x86_prof
+TV=tv_gen
+MULTI=multi
+TIMING=timing
+TEST=test
+
+#LIBPATH-The directory for libtomcrypt to be installed to.
+#INCPATH-The directory to install the header files for libtomcrypt.
+#DATAPATH-The directory to install the pdf docs.
+DESTDIR=
+LIBPATH=/usr/lib
+INCPATH=/usr/include
+DATAPATH=/usr/share/doc/libtomcrypt/pdf
+
+#Who do we install as?
+USER=root
+GROUP=wheel
+
+#List of objects to compile.
+
+#Leave MPI built-in or force developer to link against libtommath?
+#MPIOBJECT=src/misc/mpi/mpi.o
+#Dropbear uses libtommath
+MPIOBJECT=
+
+OBJECTS=src/ciphers/aes/aes_enc.o $(MPIOBJECT) src/ciphers/aes/aes.o \
+src/ciphers/blowfish.o src/ciphers/des.o \
+src/ciphers/twofish/twofish.o \
+src/hashes/helper/hash_memory.o src/hashes/helper/hash_memory_multi.o \
+src/hashes/md5.o src/hashes/sha1.o src/hashes/sha2/sha256.o \
+src/hashes/sha2/sha512.o src/hashes/whirl/whirl.o src/mac/hmac/hmac_done.o \
+src/mac/hmac/hmac_file.o src/mac/hmac/hmac_init.o src/mac/hmac/hmac_memory.o \
+src/mac/hmac/hmac_memory_multi.o src/mac/hmac/hmac_process.o src/mac/hmac/hmac_test.o \
+src/misc/base64/base64_decode.o \
+src/misc/base64/base64_encode.o src/misc/burn_stack.o src/misc/crypt/crypt.o \
+src/misc/crypt/crypt_argchk.o src/misc/crypt/crypt_cipher_descriptor.o \
+src/misc/crypt/crypt_cipher_is_valid.o src/misc/crypt/crypt_find_cipher.o \
+src/misc/crypt/crypt_find_cipher_any.o src/misc/crypt/crypt_find_cipher_id.o \
+src/misc/crypt/crypt_find_hash.o src/misc/crypt/crypt_find_hash_any.o \
+src/misc/crypt/crypt_find_hash_id.o src/misc/crypt/crypt_find_prng.o \
+src/misc/crypt/crypt_hash_descriptor.o src/misc/crypt/crypt_hash_is_valid.o \
+src/misc/crypt/crypt_prng_descriptor.o src/misc/crypt/crypt_prng_is_valid.o \
+src/misc/crypt/crypt_register_cipher.o src/misc/crypt/crypt_register_hash.o \
+src/misc/crypt/crypt_register_prng.o src/misc/crypt/crypt_unregister_cipher.o \
+src/misc/crypt/crypt_unregister_hash.o src/misc/crypt/crypt_unregister_prng.o \
+src/misc/error_to_string.o src/misc/mpi/is_prime.o src/misc/mpi/mpi_to_ltc_error.o \
+src/misc/mpi/rand_prime.o src/misc/zeromem.o \
+src/modes/cbc/cbc_decrypt.o src/modes/cbc/cbc_done.o src/modes/cbc/cbc_encrypt.o \
+src/modes/cbc/cbc_getiv.o src/modes/cbc/cbc_setiv.o src/modes/cbc/cbc_start.o \
+src/modes/ctr/ctr_decrypt.o src/modes/ctr/ctr_done.o src/modes/ctr/ctr_encrypt.o \
+src/modes/ctr/ctr_getiv.o src/modes/ctr/ctr_setiv.o src/modes/ctr/ctr_start.o \
+src/modes/ecb/ecb_decrypt.o src/modes/ecb/ecb_done.o src/modes/ecb/ecb_encrypt.o \
+src/modes/ofb/ofb_start.o src/pk/asn1/der/der_decode_integer.o \
+src/prngs/rng_get_bytes.o \
+src/prngs/rng_make_prng.o src/prngs/sober128.o src/prngs/sprng.o src/prngs/yarrow.o
+
+HEADERS=src/headers/tommath_superclass.h src/headers/tomcrypt_cfg.h \
+src/headers/tomcrypt_mac.h src/headers/tomcrypt_macros.h \
+src/headers/tomcrypt_custom.h src/headers/tomcrypt_argchk.h \
+src/headers/tomcrypt_cipher.h src/headers/tomcrypt_pk.h \
+src/headers/tommath_class.h src/headers/ltc_tommath.h src/headers/tomcrypt_hash.h \
+src/headers/tomcrypt_misc.h src/headers/tomcrypt.h src/headers/tomcrypt_pkcs.h \
+src/headers/tomcrypt_prng.h testprof/tomcrypt_test.h
+
+TESTOBJECTS=demos/test.o
+HASHOBJECTS=demos/hashsum.o
+CRYPTOBJECTS=demos/encrypt.o
+SMALLOBJECTS=demos/small.o
+TVS=demos/tv_gen.o
+MULTIS=demos/multi.o
+TIMINGS=demos/timing.o
+TESTS=demos/test.o
+
+#Files left over from making the crypt.pdf.
+LEFTOVERS=*.dvi *.log *.aux *.toc *.idx *.ilg *.ind *.out
+
+#Compressed filenames
+COMPRESSED=crypt-$(VERSION).tar.bz2 crypt-$(VERSION).zip
+
+#The default rule for make builds the libtomcrypt library.
+default:library
+
+#ciphers come in two flavours... enc+dec and enc
+src/ciphers/aes/aes_enc.o: src/ciphers/aes/aes.c src/ciphers/aes/aes_tab.c
+ $(CC) $(CFLAGS) -DENCRYPT_ONLY -c src/ciphers/aes/aes.c -o src/ciphers/aes/aes_enc.o
+
+#These are the rules to make certain object files.
+src/ciphers/aes/aes.o: src/ciphers/aes/aes.c src/ciphers/aes/aes_tab.c
+src/ciphers/twofish/twofish.o: src/ciphers/twofish/twofish.c src/ciphers/twofish/twofish_tab.c
+src/hashes/whirl/whirl.o: src/hashes/whirl/whirl.c src/hashes/whirl/whirltab.c
+src/pk/ecc/ecc.o: src/pk/ecc/ecc.c src/pk/ecc/ecc_sys.c
+src/pk/dh/dh.o: src/pk/dh/dh.c src/pk/dh/dh_sys.c
+src/hashes/sha2/sha512.o: src/hashes/sha2/sha512.c src/hashes/sha2/sha384.c
+src/hashes/sha2/sha256.o: src/hashes/sha2/sha256.c src/hashes/sha2/sha224.c
+
+#This rule makes the libtomcrypt library.
+#library: $(LIBTEST) $(LIBNAME)
+# Dropbear doesn't want test programs, since it relies on yarrow etc.
+library: $(LIBNAME)
+
+$(LIBTEST):
+ cd testprof ; CFLAGS="$(CFLAGS)" make
+
+$(LIBNAME): $(OBJECTS)
+ $(AR) $(ARFLAGS) $@ $(OBJECTS)
+ $(RANLIB) $(LIBNAME)
+
+#This rule makes the hash program included with libtomcrypt
+hashsum: library $(HASHOBJECTS)
+ $(CC) $(HASHOBJECTS) $(LIBNAME) -o $(HASH) $(WARN)
+
+#makes the crypt program
+crypt: library $(CRYPTOBJECTS)
+ $(CC) $(CRYPTOBJECTS) $(LIBNAME) -o $(CRYPT) $(WARN)
+
+#makes the small program
+small: library $(SMALLOBJECTS)
+ $(CC) $(SMALLOBJECTS) $(LIBNAME) -o $(SMALL) $(WARN)
+
+tv_gen: library $(TVS)
+ $(CC) $(TVS) $(LIBNAME) $(EXTRALIBS) -o $(TV)
+
+multi: library $(MULTIS)
+ $(CC) $(MULTIS) $(LIBNAME) -o $(MULTI)
+
+timing: library $(TIMINGS)
+ $(CC) $(TIMINGS) $(LIBTEST) $(LIBNAME) -o $(TIMING)
+
+test: library $(TESTS)
+ $(CC) $(TESTS) $(LIBTEST) $(LIBNAME) -o $(TEST)
+
+
+#This rule installs the library and the header files. This must be run
+#as root in order to have a high enough permission to write to the correct
+#directories and to set the owner and group to root.
+install: library docs
+ install -d -g $(GROUP) -o $(USER) $(DESTDIR)$(LIBPATH)
+ install -d -g $(GROUP) -o $(USER) $(DESTDIR)$(INCPATH)
+ install -d -g $(GROUP) -o $(USER) $(DESTDIR)$(DATAPATH)
+ install -g $(GROUP) -o $(USER) $(LIBNAME) $(DESTDIR)$(LIBPATH)
+ install -g $(GROUP) -o $(USER) $(HEADERS) $(DESTDIR)$(INCPATH)
+ install -g $(GROUP) -o $(USER) doc/crypt.pdf $(DESTDIR)$(DATAPATH)
+
+install_lib: library
+ install -d -g $(GROUP) -o $(USER) $(DESTDIR)$(LIBPATH)
+ install -d -g $(GROUP) -o $(USER) $(DESTDIR)$(INCPATH)
+ install -g $(GROUP) -o $(USER) $(LIBNAME) $(DESTDIR)$(LIBPATH)
+ install -g $(GROUP) -o $(USER) $(HEADERS) $(DESTDIR)$(INCPATH)
+
+#This rule cleans the source tree of all compiled code, not including the pdf
+#documentation.
+clean:
+ rm -f `find . -type f | grep "[.]o" | xargs`
+ rm -f `find . -type f | grep "[.]lo" | xargs`
+ rm -f `find . -type f | grep "[.]a" | xargs`
+ rm -f `find . -type f | grep "[.]la" | xargs`
+ rm -f `find . -type f | grep "[.]obj" | xargs`
+ rm -f `find . -type f | grep "[.]lib" | xargs`
+ rm -f `find . -type f | grep "[.]exe" | xargs`
+ rm -f `find . -type f | grep "[.]gcda" | xargs`
+ rm -f `find . -type f | grep "[.]gcno" | xargs`
+ rm -f `find . -type f | grep "[.]il" | xargs`
+ rm -f `find . -type f | grep "[.]dyn" | xargs`
+ rm -f `find . -type f | grep "[.]dpi" | xargs`
+ rm -rf `find . -type d | grep "[.]libs" | xargs`
+ rm -f crypt.aux crypt.dvi crypt.idx crypt.ilg crypt.ind crypt.log crypt.toc
+ rm -f $(TV) $(PROF) $(SMALL) $(CRYPT) $(HASHSUM) $(MULTI) $(TIMING) $(TEST)
+ rm -rf doc/doxygen
+ rm -f doc/*.pdf
+
+#build the doxy files (requires Doxygen, tetex and patience)
+doxy:
+ doxygen
+ cd doc/doxygen/latex ; make ; mv -f refman.pdf ../../.
+ echo The huge doxygen PDF should be available as doc/refman.pdf
+
+#This builds the crypt.pdf file. Note that the rm -f *.pdf has been removed
+#from the clean command! This is because most people would like to keep the
+#nice pre-compiled crypt.pdf that comes with libtomcrypt! We only need to
+#delete it if we are rebuilding it.
+docs: crypt.tex
+ rm -f doc/crypt.pdf $(LEFTOVERS)
+ echo "hello" > crypt.ind
+ latex crypt > /dev/null
+ latex crypt > /dev/null
+ makeindex crypt.idx > /dev/null
+ latex crypt > /dev/null
+ dvipdf crypt
+ mv -ivf crypt.pdf doc/crypt.pdf
+ rm -f $(LEFTOVERS)
+
+docdvi: crypt.tex
+ echo hello > crypt.ind
+ latex crypt > /dev/null
+ latex crypt > /dev/null
+ makeindex crypt.idx
+ latex crypt > /dev/null
+
+#zipup the project (take that!)
+no_oops: clean
+ cd .. ; cvs commit
+
+zipup: no_oops docs
+ cd .. ; rm -rf crypt* libtomcrypt-$(VERSION) ; mkdir libtomcrypt-$(VERSION) ; \
+ cp -R ./libtomcrypt/* ./libtomcrypt-$(VERSION)/ ; \
+ cd libtomcrypt-$(VERSION) ; rm -rf `find . -type d | grep CVS | xargs` ; cd .. ; \
+ tar -cjvf crypt-$(VERSION).tar.bz2 libtomcrypt-$(VERSION) ; \
+ zip -9r crypt-$(VERSION).zip libtomcrypt-$(VERSION) ; \
+ gpg -b -a crypt-$(VERSION).tar.bz2 ; gpg -b -a crypt-$(VERSION).zip ; \
+ mv -fv crypt* ~ ; rm -rf libtomcrypt-$(VERSION)
============================================================
--- TODO ee08adca96454cc03b64631f65020b7195d9b298
+++ TODO ee08adca96454cc03b64631f65020b7195d9b298
@@ -0,0 +1,10 @@
+For 1.06
+
+1. export ECC functions globally [e.g. mulmod and the sets]
+ - goal is tv_gen module and test vectors
+2. ASN.1 SET and T61String
+3. phase out DH code [RSA/ECC/DSA is enough]
+4. Some ASN.1 demo programs [for now read the source code!]
+5. Start working towards making the bignum code plugable
+6. Look into other ECC point muls and consider a "precomp" interface
+7. Add OID for ciphers and PRNGs to their descriptors
============================================================
--- build.sh 6fdd754df5acb227ee2bbcbb62ee469bccabcb52
+++ build.sh 6fdd754df5acb227ee2bbcbb62ee469bccabcb52
@@ -0,0 +1,20 @@
+#!/bin/bash
+echo "$1 ($2, $3)..."
+make clean 1>/dev/null 2>/dev/null
+echo -n "building..."
+CFLAGS="$2 $CFLAGS" make -j3 -f $3 test tv_gen 1>gcc_1.txt 2>gcc_2.txt || (echo "build $1 failed see gcc_2.txt for more information" && cat gcc_2.txt && exit 1)
+echo -n "testing..."
+if [ -a test ] && [ -f test ] && [ -x test ]; then
+ ((./test >test_std.txt 2>test_err.txt && ./tv_gen > tv.txt) && echo "$1 test passed." && echo "y" > testok.txt) || (echo "$1 test failed" && cat test_err.txt && exit 1)
+ if find *_tv.txt -type f 1>/dev/null 2>/dev/null ; then
+ for f in *_tv.txt; do if (diff $f notes/$f) then true; else (echo "tv_gen $f failed" && rm -f testok.txt && exit 1); fi; done
+ fi
+fi
+if [ -a testok.txt ] && [ -f testok.txt ]; then
+ exit 0
+fi
+exit 1
+
+# $Source: /cvs/libtom/libtomcrypt/build.sh,v $
+# $Revision: 1.5 $
+# $Date: 2005/06/27 13:04:05 $
============================================================
--- demos/multi.c fbc94e576fc2728f537a8de2a1581ed16d015dab
+++ demos/multi.c fbc94e576fc2728f537a8de2a1581ed16d015dab
@@ -0,0 +1,110 @@
+/* test the multi helpers... */
+#include <tomcrypt.h>
+
+int main(void)
+{
+ unsigned char key[16], buf[2][MAXBLOCKSIZE];
+ unsigned long len, len2;
+
+
+/* register algos */
+ register_hash(&sha256_desc);
+ register_cipher(&aes_desc);
+
+/* HASH testing */
+ len = sizeof(buf[0]);
+ hash_memory(find_hash("sha256"), "hello", 5, buf[0], &len);
+ len2 = sizeof(buf[0]);
+ hash_memory_multi(find_hash("sha256"), buf[1], &len2, "hello", 5, NULL);
+ if (len != len2 || memcmp(buf[0], buf[1], len)) {
+ printf("Failed: %d %lu %lu\n", __LINE__, len, len2);
+ return EXIT_FAILURE;
+ }
+ len2 = sizeof(buf[0]);
+ hash_memory_multi(find_hash("sha256"), buf[1], &len2, "he", 2, "llo", 3, NULL);
+ if (len != len2 || memcmp(buf[0], buf[1], len)) {
+ printf("Failed: %d %lu %lu\n", __LINE__, len, len2);
+ return EXIT_FAILURE;
+ }
+ len2 = sizeof(buf[0]);
+ hash_memory_multi(find_hash("sha256"), buf[1], &len2, "h", 1, "e", 1, "l", 1, "l", 1, "o", 1, NULL);
+ if (len != len2 || memcmp(buf[0], buf[1], len)) {
+ printf("Failed: %d %lu %lu\n", __LINE__, len, len2);
+ return EXIT_FAILURE;
+ }
+
+/* HMAC */
+ len = sizeof(buf[0]);
+ hmac_memory(find_hash("sha256"), key, 16, "hello", 5, buf[0], &len);
+ len2 = sizeof(buf[0]);
+ hmac_memory_multi(find_hash("sha256"), key, 16, buf[1], &len2, "hello", 5, NULL);
+ if (len != len2 || memcmp(buf[0], buf[1], len)) {
+ printf("Failed: %d %lu %lu\n", __LINE__, len, len2);
+ return EXIT_FAILURE;
+ }
+ len2 = sizeof(buf[0]);
+ hmac_memory_multi(find_hash("sha256"), key, 16, buf[1], &len2, "he", 2, "llo", 3, NULL);
+ if (len != len2 || memcmp(buf[0], buf[1], len)) {
+ printf("Failed: %d %lu %lu\n", __LINE__, len, len2);
+ return EXIT_FAILURE;
+ }
+ len2 = sizeof(buf[0]);
+ hmac_memory_multi(find_hash("sha256"), key, 16, buf[1], &len2, "h", 1, "e", 1, "l", 1, "l", 1, "o", 1, NULL);
+ if (len != len2 || memcmp(buf[0], buf[1], len)) {
+ printf("Failed: %d %lu %lu\n", __LINE__, len, len2);
+ return EXIT_FAILURE;
+ }
+
+/* OMAC */
+ len = sizeof(buf[0]);
+ omac_memory(find_cipher("aes"), key, 16, "hello", 5, buf[0], &len);
+ len2 = sizeof(buf[0]);
+ omac_memory_multi(find_cipher("aes"), key, 16, buf[1], &len2, "hello", 5, NULL);
+ if (len != len2 || memcmp(buf[0], buf[1], len)) {
+ printf("Failed: %d %lu %lu\n", __LINE__, len, len2);
+ return EXIT_FAILURE;
+ }
+ len2 = sizeof(buf[0]);
+ omac_memory_multi(find_cipher("aes"), key, 16, buf[1], &len2, "he", 2, "llo", 3, NULL);
+ if (len != len2 || memcmp(buf[0], buf[1], len)) {
+ printf("Failed: %d %lu %lu\n", __LINE__, len, len2);
+ return EXIT_FAILURE;
+ }
+ len2 = sizeof(buf[0]);
+ omac_memory_multi(find_cipher("aes"), key, 16, buf[1], &len2, "h", 1, "e", 1, "l", 1, "l", 1, "o", 1, NULL);
+ if (len != len2 || memcmp(buf[0], buf[1], len)) {
+ printf("Failed: %d %lu %lu\n", __LINE__, len, len2);
+ return EXIT_FAILURE;
+ }
+
+/* PMAC */
+ len = sizeof(buf[0]);
+ pmac_memory(find_cipher("aes"), key, 16, "hello", 5, buf[0], &len);
+ len2 = sizeof(buf[0]);
+ pmac_memory_multi(find_cipher("aes"), key, 16, buf[1], &len2, "hello", 5, NULL);
+ if (len != len2 || memcmp(buf[0], buf[1], len)) {
+ printf("Failed: %d %lu %lu\n", __LINE__, len, len2);
+ return EXIT_FAILURE;
+ }
+ len2 = sizeof(buf[0]);
+ pmac_memory_multi(find_cipher("aes"), key, 16, buf[1], &len2, "he", 2, "llo", 3, NULL);
+ if (len != len2 || memcmp(buf[0], buf[1], len)) {
+ printf("Failed: %d %lu %lu\n", __LINE__, len, len2);
+ return EXIT_FAILURE;
+ }
+ len2 = sizeof(buf[0]);
+ pmac_memory_multi(find_cipher("aes"), key, 16, buf[1], &len2, "h", 1, "e", 1, "l", 1, "l", 1, "o", 1, NULL);
+ if (len != len2 || memcmp(buf[0], buf[1], len)) {
+ printf("Failed: %d %lu %lu\n", __LINE__, len, len2);
+ return EXIT_FAILURE;
+ }
+
+
+ printf("All passed\n");
+ return EXIT_SUCCESS;
+}
+
+
+/* $Source: /cvs/libtom/libtomcrypt/demos/multi.c,v $ */
+/* $Revision: 1.2 $ */
+/* $Date: 2005/05/05 14:35:56 $ */
============================================================
--- demos/test.c 471f4ac922aeb44563b18bfb40f20ecf60009684
+++ demos/test.c 471f4ac922aeb44563b18bfb40f20ecf60009684
@@ -0,0 +1,24 @@
+#include <tomcrypt_test.h>
+
+int main(void)
+{
+ int x;
+ reg_algs();
+ printf("build == \n%s\n", crypt_build_settings);
+ printf("\nstore_test...."); fflush(stdout); x = store_test(); printf(x ? "failed" : "passed");if (x) exit(EXIT_FAILURE);
+ printf("\ncipher_test..."); fflush(stdout); x = cipher_hash_test(); printf(x ? "failed" : "passed");if (x) exit(EXIT_FAILURE);
+ printf("\nmodes_test...."); fflush(stdout); x = modes_test(); printf(x ? "failed" : "passed");if (x) exit(EXIT_FAILURE);
+ printf("\nder_test......"); fflush(stdout); x = der_tests(); printf(x ? "failed" : "passed");if (x) exit(EXIT_FAILURE);
+ printf("\nmac_test......"); fflush(stdout); x = mac_test(); printf(x ? "failed" : "passed");if (x) exit(EXIT_FAILURE);
+ printf("\npkcs_1_test..."); fflush(stdout); x = pkcs_1_test(); printf(x ? "failed" : "passed");if (x) exit(EXIT_FAILURE);
+ printf("\nrsa_test......"); fflush(stdout); x = rsa_test(); printf(x ? "failed" : "passed");if (x) exit(EXIT_FAILURE);
+ printf("\necc_test......"); fflush(stdout); x = ecc_tests(); printf(x ? "failed" : "passed");if (x) exit(EXIT_FAILURE);
+ printf("\ndsa_test......"); fflush(stdout); x = dsa_test(); printf(x ? "failed" : "passed");if (x) exit(EXIT_FAILURE);
+ printf("\ndh_test......."); fflush(stdout); x = dh_tests(); printf(x ? "failed" : "passed");if (x) exit(EXIT_FAILURE);
+ printf("\n");
+ return EXIT_SUCCESS;
+}
+
+/* $Source: /cvs/libtom/libtomcrypt/demos/test.c,v $ */
+/* $Revision: 1.12 $ */
+/* $Date: 2005/06/19 12:06:58 $ */
============================================================
--- demos/timing.c 3acf7517eabfd4f62530a8ca210ab84f2b8c8b1c
+++ demos/timing.c 3acf7517eabfd4f62530a8ca210ab84f2b8c8b1c
@@ -0,0 +1,26 @@
+#include <tomcrypt_test.h>
+
+int main(void)
+{
+init_timer();
+reg_algs();
+time_keysched();
+time_cipher();
+time_cipher2();
+time_cipher3();
+time_hash();
+time_macs();
+time_encmacs();
+time_prng();
+time_mult();
+time_sqr();
+time_rsa();
+time_ecc();
+time_dh();
+return EXIT_SUCCESS;
+
+}
+
+/* $Source: /cvs/libtom/libtomcrypt/demos/timing.c,v $ */
+/* $Revision: 1.17 $ */
+/* $Date: 2005/06/23 02:16:26 $ */
============================================================
--- doc/footer.html 0e5ae37d02adb83ae291182903c4fe4152cdbd92
+++ doc/footer.html 0e5ae37d02adb83ae291182903c4fe4152cdbd92
@@ -0,0 +1,10 @@
+<hr width="80%">
+Code by <a href="http://www.libtomcrypt.org/">Tom</a><br>
+Docs using <img src="doxygen.png" alt="doxygen" align="middle" border=0>
+<a href="http://jlcooke.ca/tom/hidden_image.png">
+
+<!--
+/* $Source: /cvs/libtom/libtomcrypt/doc/footer.html,v $ */
+/* $Revision: 1.3 $ */
+/* $Date: 2005/05/07 10:09:20 $ */
+-->
============================================================
--- doc/header.html 5f20c36d444f35084d054ddee5d6e6b56f98aeb0
+++ doc/header.html 5f20c36d444f35084d054ddee5d6e6b56f98aeb0
@@ -0,0 +1,12 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>LibTomCrypt: Main Page</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.3.8 -->
+
+<!--
+/* $Source: /cvs/libtom/libtomcrypt/doc/header.html,v $ */
+/* $Revision: 1.3 $ */
+/* $Date: 2005/05/07 10:09:20 $ */
+-->
============================================================
--- genlist.sh f798fe9b01aef8b0ab9402ea9969c82eec907789
+++ genlist.sh f798fe9b01aef8b0ab9402ea9969c82eec907789
@@ -0,0 +1,10 @@
+#!/bin/bas