From 9d7c6ffbfbf858c276f9a86cdf9c4fd27a49bf5d Mon Sep 17 00:00:00 2001 From: Greg Alexander Date: Sun, 9 Jun 2019 16:44:26 -0400 Subject: [PATCH] stock dropbear-2019.78 source tree --- dropbear/.hg_archival.txt | 7 +- dropbear/.hgsigs | 14 + dropbear/.hgtags | 47 - dropbear/.travis.yml | 68 +- dropbear/CHANGES | 365 + dropbear/FUZZER-NOTES.md | 74 + dropbear/INSTALL | 30 +- dropbear/LICENSE | 2 +- dropbear/Makefile.in | 161 +- dropbear/README | 6 +- dropbear/TODO | 27 - dropbear/agentfwd.h | 20 +- dropbear/algo.h | 25 +- dropbear/atomicio.c | 28 +- dropbear/atomicio.h | 13 +- dropbear/auth.h | 95 +- dropbear/bignum.c | 54 +- dropbear/bignum.h | 10 +- dropbear/buffer.c | 72 +- dropbear/buffer.h | 24 +- dropbear/channel.h | 75 +- dropbear/chansession.h | 31 +- dropbear/circbuffer.c | 60 +- dropbear/circbuffer.h | 16 +- dropbear/cli-agentfwd.c | 26 +- dropbear/cli-auth.c | 90 +- dropbear/cli-authinteract.c | 24 +- dropbear/cli-authpasswd.c | 14 +- dropbear/cli-authpubkey.c | 20 +- dropbear/cli-chansession.c | 41 +- dropbear/cli-kex.c | 48 +- dropbear/cli-main.c | 110 +- dropbear/cli-runopts.c | 442 +- dropbear/cli-session.c | 100 +- dropbear/cli-tcpfwd.c | 67 +- dropbear/common-algo.c | 286 +- dropbear/common-channel.c | 331 +- dropbear/common-kex.c | 198 +- dropbear/common-runopts.c | 2 +- dropbear/common-session.c | 256 +- dropbear/compat.c | 21 +- dropbear/compat.h | 16 +- dropbear/config.guess | 939 +- dropbear/config.h.in | 48 +- dropbear/config.sub | 2506 +-- dropbear/configure | 1452 +- dropbear/configure.ac | 340 +- dropbear/crypto_desc.c | 22 +- dropbear/crypto_desc.h | 8 +- dropbear/curve25519-donna.c | 304 +- dropbear/dbclient.1 | 71 +- dropbear/dbhelpers.c | 18 + dropbear/dbhelpers.h | 21 + dropbear/dbmalloc.c | 182 + dropbear/dbmalloc.h | 27 + dropbear/dbmulti.c | 30 +- dropbear/dbrandom.c | 48 +- dropbear/dbrandom.h | 10 +- dropbear/dbutil.c | 591 +- dropbear/dbutil.h | 66 +- dropbear/debian/changelog | 66 + dropbear/debian/dropbear.docs | 1 - dropbear/debian/dropbear.init | 1 + dropbear/debug.h | 17 +- dropbear/default_options.h | 300 + dropbear/dh_groups.c | 94 + dropbear/dh_groups.h | 24 + dropbear/dropbear.8 | 28 +- dropbear/dropbearconvert.1 | 14 +- dropbear/dropbearconvert.c | 6 +- dropbear/dropbearkey.1 | 15 +- dropbear/dropbearkey.c | 82 +- dropbear/dss.c | 99 +- dropbear/dss.h | 21 +- dropbear/ecc.c | 57 +- dropbear/ecc.h | 15 +- dropbear/ecdsa.c | 46 +- dropbear/ecdsa.h | 29 +- dropbear/fake-rfc2553.h | 4 +- dropbear/fuzz-common.c | 201 + dropbear/fuzz-harness.c | 48 + dropbear/fuzz-hostkeys.c | 129 + dropbear/fuzz-wrapfd.c | 246 + dropbear/fuzz-wrapfd.h | 25 + dropbear/fuzz.h | 72 + dropbear/fuzzer-kexdh.c | 76 + dropbear/fuzzer-kexecdh.c | 82 + dropbear/fuzzer-preauth.c | 6 + dropbear/fuzzer-preauth_nomaths.c | 6 + dropbear/fuzzer-pubkey.c | 54 + dropbear/fuzzer-verify.c | 64 + dropbear/fuzzers_test.sh | 12 + dropbear/gendss.c | 24 +- dropbear/gendss.h | 8 +- dropbear/genrsa.c | 2 +- dropbear/genrsa.h | 8 +- dropbear/gensignkey.c | 103 +- dropbear/gensignkey.h | 7 +- dropbear/ifndef_wrapper.sh | 7 + dropbear/includes.h | 17 +- dropbear/kex.h | 51 +- dropbear/keyimport.c | 173 +- dropbear/keyimport.h | 10 +- dropbear/libtomcrypt/.travis.yml | 135 + dropbear/libtomcrypt/Doxyfile | 2 +- dropbear/libtomcrypt/LICENSE | 24 + dropbear/libtomcrypt/Makefile.in | 552 +- dropbear/libtomcrypt/TODO | 14 +- dropbear/libtomcrypt/build.sh | 51 +- dropbear/libtomcrypt/changes | 83 +- dropbear/libtomcrypt/check_source.sh | 15 + dropbear/libtomcrypt/coverage.sh | 51 + dropbear/libtomcrypt/coverage_more.sh | 24 + dropbear/libtomcrypt/coverity.sh | 40 + dropbear/libtomcrypt/crypt.lof | 12 +- dropbear/libtomcrypt/demos/constants.c | 86 + dropbear/libtomcrypt/demos/demo_dynamic.py | 309 + dropbear/libtomcrypt/demos/encrypt.c | 40 +- dropbear/libtomcrypt/demos/hashsum.c | 343 +- dropbear/libtomcrypt/demos/ltcrypt.c | 205 + dropbear/libtomcrypt/demos/multi.c | 10 +- dropbear/libtomcrypt/demos/openssl-enc.c | 397 + dropbear/libtomcrypt/demos/sizes.c | 79 + dropbear/libtomcrypt/demos/small.c | 14 +- dropbear/libtomcrypt/demos/test.c | 6 +- dropbear/libtomcrypt/demos/timing.c | 1478 +- dropbear/libtomcrypt/demos/tv_gen.c | 328 +- dropbear/libtomcrypt/doc/Doxyfile | 2430 +++ dropbear/libtomcrypt/{ => doc}/crypt.tex | 4606 ++++-- dropbear/libtomcrypt/doc/libtomsm.png | Bin 0 -> 17809 bytes dropbear/libtomcrypt/doc/makefile | 63 + dropbear/libtomcrypt/helper.pl | 384 + dropbear/libtomcrypt/makefile.icc | 117 +- dropbear/libtomcrypt/makefile.mingw | 288 + dropbear/libtomcrypt/makefile.msvc | 308 +- dropbear/libtomcrypt/makefile.shared | 296 +- dropbear/libtomcrypt/makefile.unix | 405 +- dropbear/libtomcrypt/makefile_include.mk | 471 + dropbear/libtomcrypt/notes/ccm_tv.txt | 136 +- dropbear/libtomcrypt/notes/cipher_tv.txt | 520 +- dropbear/libtomcrypt/notes/eax_tv.txt | 208 +- .../libtomcrypt/notes/etc/NoekeonVects.java | 249 + .../libtomcrypt/notes/etc/saferp_optimizer.c | 8 +- dropbear/libtomcrypt/notes/etc/whirlgen.c | 6 +- dropbear/libtomcrypt/notes/etc/whirltest.c | 6 +- dropbear/libtomcrypt/notes/gcm_tv.txt | 458 +- dropbear/libtomcrypt/notes/hash_tv.txt | 3264 ++++ dropbear/libtomcrypt/notes/hmac_tv.txt | 3264 ++++ dropbear/libtomcrypt/notes/ocb_tv.txt | 208 +- dropbear/libtomcrypt/notes/omac_tv.txt | 208 +- dropbear/libtomcrypt/notes/pmac_tv.txt | 212 +- .../notes/rsa-testvectors/makefile | 11 + .../notes/rsa-testvectors/oaep-int.txt | 369 + .../notes/rsa-testvectors/oaep-vect.c | 1418 ++ .../notes/rsa-testvectors/oaep-vect.txt | 2212 +++ .../rsa-testvectors/pkcs1v15crypt-vectors.c | 5463 +++++++ .../rsa-testvectors/pkcs1v15crypt-vectors.txt | 9709 ++++++++++++ .../rsa-testvectors/pkcs1v15sign-vectors.c | 4261 +++++ .../rsa-testvectors/pkcs1v15sign-vectors.txt | 9049 +++++++++++ .../notes/rsa-testvectors/pss-int.txt | 162 + .../notes/rsa-testvectors/pss-vect.c | 1418 ++ .../notes/rsa-testvectors/pss-vect.txt | 2581 +++ .../notes/rsa-testvectors/readme.txt | 22 + .../libtomcrypt/notes/rsa-testvectors/rt.py | 253 + dropbear/libtomcrypt/notes/tech0003.txt | 2 +- dropbear/libtomcrypt/notes/tech0005.txt | 2 +- dropbear/libtomcrypt/printinfo.sh | 20 + dropbear/libtomcrypt/run.sh | 42 +- dropbear/libtomcrypt/scan_build.sh | 19 + dropbear/libtomcrypt/src/ciphers/aes/aes.c | 47 +- .../libtomcrypt/src/ciphers/aes/aes_tab.c | 510 +- dropbear/libtomcrypt/src/ciphers/anubis.c | 100 +- dropbear/libtomcrypt/src/ciphers/blowfish.c | 32 +- dropbear/libtomcrypt/src/ciphers/camellia.c | 726 + dropbear/libtomcrypt/src/ciphers/cast5.c | 734 +- dropbear/libtomcrypt/src/ciphers/des.c | 225 +- dropbear/libtomcrypt/src/ciphers/kasumi.c | 16 +- dropbear/libtomcrypt/src/ciphers/khazad.c | 40 +- dropbear/libtomcrypt/src/ciphers/kseed.c | 74 +- dropbear/libtomcrypt/src/ciphers/multi2.c | 319 + dropbear/libtomcrypt/src/ciphers/noekeon.c | 143 +- dropbear/libtomcrypt/src/ciphers/rc2.c | 155 +- dropbear/libtomcrypt/src/ciphers/rc5.c | 52 +- dropbear/libtomcrypt/src/ciphers/rc6.c | 85 +- .../libtomcrypt/src/ciphers/safer/safer.c | 144 +- .../libtomcrypt/src/ciphers/safer/safer_tab.c | 76 +- .../libtomcrypt/src/ciphers/safer/saferp.c | 157 +- dropbear/libtomcrypt/src/ciphers/skipjack.c | 26 +- .../libtomcrypt/src/ciphers/twofish/twofish.c | 75 +- .../src/ciphers/twofish/twofish_tab.c | 816 +- dropbear/libtomcrypt/src/ciphers/xtea.c | 156 +- .../libtomcrypt/src/encauth/ccm/ccm_add_aad.c | 63 + .../src/encauth/ccm/ccm_add_nonce.c | 113 + .../libtomcrypt/src/encauth/ccm/ccm_done.c | 65 + .../libtomcrypt/src/encauth/ccm/ccm_init.c | 81 + .../libtomcrypt/src/encauth/ccm/ccm_memory.c | 130 +- .../libtomcrypt/src/encauth/ccm/ccm_process.c | 88 + .../libtomcrypt/src/encauth/ccm/ccm_reset.c | 35 + .../libtomcrypt/src/encauth/ccm/ccm_test.c | 185 +- .../chachapoly/chacha20poly1305_add_aad.c | 38 + .../chachapoly/chacha20poly1305_decrypt.c | 49 + .../chachapoly/chacha20poly1305_done.c | 46 + .../chachapoly/chacha20poly1305_encrypt.c | 48 + .../chachapoly/chacha20poly1305_init.c | 30 + .../chachapoly/chacha20poly1305_memory.c | 74 + .../chachapoly/chacha20poly1305_setiv.c | 68 + .../chacha20poly1305_setiv_rfc7905.c | 40 + .../chachapoly/chacha20poly1305_test.c | 134 + .../src/encauth/eax/eax_addheader.c | 20 +- .../libtomcrypt/src/encauth/eax/eax_decrypt.c | 18 +- .../encauth/eax/eax_decrypt_verify_memory.c | 19 +- .../libtomcrypt/src/encauth/eax/eax_done.c | 14 +- .../libtomcrypt/src/encauth/eax/eax_encrypt.c | 16 +- .../eax/eax_encrypt_authenticate_memory.c | 20 +- .../libtomcrypt/src/encauth/eax/eax_init.c | 48 +- .../libtomcrypt/src/encauth/eax/eax_test.c | 73 +- .../libtomcrypt/src/encauth/gcm/gcm_add_aad.c | 28 +- .../libtomcrypt/src/encauth/gcm/gcm_add_iv.c | 22 +- .../libtomcrypt/src/encauth/gcm/gcm_done.c | 23 +- .../libtomcrypt/src/encauth/gcm/gcm_gf_mult.c | 36 +- .../libtomcrypt/src/encauth/gcm/gcm_init.c | 22 +- .../libtomcrypt/src/encauth/gcm/gcm_memory.c | 25 +- .../libtomcrypt/src/encauth/gcm/gcm_mult_h.c | 25 +- .../libtomcrypt/src/encauth/gcm/gcm_process.c | 52 +- .../libtomcrypt/src/encauth/gcm/gcm_reset.c | 14 +- .../libtomcrypt/src/encauth/gcm/gcm_test.c | 251 +- .../libtomcrypt/src/encauth/ocb/ocb_decrypt.c | 14 +- .../encauth/ocb/ocb_decrypt_verify_memory.c | 22 +- .../src/encauth/ocb/ocb_done_decrypt.c | 18 +- .../src/encauth/ocb/ocb_done_encrypt.c | 14 +- .../libtomcrypt/src/encauth/ocb/ocb_encrypt.c | 12 +- .../ocb/ocb_encrypt_authenticate_memory.c | 14 +- .../libtomcrypt/src/encauth/ocb/ocb_init.c | 68 +- .../libtomcrypt/src/encauth/ocb/ocb_ntz.c | 10 +- .../src/encauth/ocb/ocb_shift_xor.c | 14 +- .../libtomcrypt/src/encauth/ocb/ocb_test.c | 70 +- .../libtomcrypt/src/encauth/ocb/s_ocb_done.c | 26 +- .../src/encauth/ocb3/ocb3_add_aad.c | 106 + .../src/encauth/ocb3/ocb3_decrypt.c | 86 + .../src/encauth/ocb3/ocb3_decrypt_last.c | 110 + .../encauth/ocb3/ocb3_decrypt_verify_memory.c | 110 + .../libtomcrypt/src/encauth/ocb3/ocb3_done.c | 92 + .../src/encauth/ocb3/ocb3_encrypt.c | 86 + .../ocb3/ocb3_encrypt_authenticate_memory.c | 82 + .../src/encauth/ocb3/ocb3_encrypt_last.c | 112 + .../libtomcrypt/src/encauth/ocb3/ocb3_init.c | 196 + .../src/encauth/ocb3/ocb3_int_ntz.c | 39 + .../src/encauth/ocb3/ocb3_int_xor_blocks.c | 40 + .../libtomcrypt/src/encauth/ocb3/ocb3_test.c | 309 + dropbear/libtomcrypt/src/hashes/blake2b.c | 588 + dropbear/libtomcrypt/src/hashes/blake2s.c | 563 + dropbear/libtomcrypt/src/hashes/chc/chc.c | 60 +- .../libtomcrypt/src/hashes/helper/hash_file.c | 14 +- .../src/hashes/helper/hash_filehandle.c | 47 +- .../src/hashes/helper/hash_memory.c | 10 +- .../src/hashes/helper/hash_memory_multi.c | 17 +- dropbear/libtomcrypt/src/hashes/md2.c | 41 +- dropbear/libtomcrypt/src/hashes/md4.c | 165 +- dropbear/libtomcrypt/src/hashes/md5.c | 44 +- dropbear/libtomcrypt/src/hashes/rmd128.c | 54 +- dropbear/libtomcrypt/src/hashes/rmd160.c | 50 +- dropbear/libtomcrypt/src/hashes/rmd256.c | 33 +- dropbear/libtomcrypt/src/hashes/rmd320.c | 34 +- dropbear/libtomcrypt/src/hashes/sha1.c | 32 +- dropbear/libtomcrypt/src/hashes/sha2/sha224.c | 26 +- dropbear/libtomcrypt/src/hashes/sha2/sha256.c | 48 +- dropbear/libtomcrypt/src/hashes/sha2/sha384.c | 29 +- dropbear/libtomcrypt/src/hashes/sha2/sha512.c | 90 +- .../libtomcrypt/src/hashes/sha2/sha512_224.c | 130 + .../libtomcrypt/src/hashes/sha2/sha512_256.c | 130 + dropbear/libtomcrypt/src/hashes/sha3.c | 306 + dropbear/libtomcrypt/src/hashes/sha3_test.c | 401 + dropbear/libtomcrypt/src/hashes/tiger.c | 82 +- dropbear/libtomcrypt/src/hashes/whirl/whirl.c | 48 +- .../libtomcrypt/src/hashes/whirl/whirltab.c | 1031 +- dropbear/libtomcrypt/src/headers/tomcrypt.h | 34 +- .../libtomcrypt/src/headers/tomcrypt_argchk.h | 37 +- .../libtomcrypt/src/headers/tomcrypt_cfg.h | 231 +- .../libtomcrypt/src/headers/tomcrypt_cipher.h | 439 +- .../libtomcrypt/src/headers/tomcrypt_custom.h | 575 +- .../src/headers/tomcrypt_dropbear.h | 84 + .../libtomcrypt/src/headers/tomcrypt_hash.h | 260 +- .../libtomcrypt/src/headers/tomcrypt_mac.h | 298 +- .../libtomcrypt/src/headers/tomcrypt_macros.h | 296 +- .../libtomcrypt/src/headers/tomcrypt_math.h | 253 +- .../libtomcrypt/src/headers/tomcrypt_misc.h | 106 +- .../libtomcrypt/src/headers/tomcrypt_pk.h | 351 +- .../libtomcrypt/src/headers/tomcrypt_pkcs.h | 61 +- .../libtomcrypt/src/headers/tomcrypt_prng.h | 117 +- .../libtomcrypt/src/mac/blake2/blake2bmac.c | 66 + .../src/mac/blake2/blake2bmac_file.c | 83 + .../src/mac/blake2/blake2bmac_memory.c | 48 + .../src/mac/blake2/blake2bmac_memory_multi.c | 62 + .../src/mac/blake2/blake2bmac_test.c | 314 + .../libtomcrypt/src/mac/blake2/blake2smac.c | 66 + .../src/mac/blake2/blake2smac_file.c | 83 + .../src/mac/blake2/blake2smac_memory.c | 48 + .../src/mac/blake2/blake2smac_memory_multi.c | 62 + .../src/mac/blake2/blake2smac_test.c | 314 + dropbear/libtomcrypt/src/mac/f9/f9_done.c | 10 +- dropbear/libtomcrypt/src/mac/f9/f9_file.c | 66 +- dropbear/libtomcrypt/src/mac/f9/f9_init.c | 12 +- dropbear/libtomcrypt/src/mac/f9/f9_memory.c | 12 +- .../libtomcrypt/src/mac/f9/f9_memory_multi.c | 18 +- dropbear/libtomcrypt/src/mac/f9/f9_process.c | 26 +- dropbear/libtomcrypt/src/mac/f9/f9_test.c | 14 +- dropbear/libtomcrypt/src/mac/hmac/hmac_done.c | 33 +- dropbear/libtomcrypt/src/mac/hmac/hmac_file.c | 60 +- dropbear/libtomcrypt/src/mac/hmac/hmac_init.c | 48 +- .../libtomcrypt/src/mac/hmac/hmac_memory.c | 20 +- .../src/mac/hmac/hmac_memory_multi.c | 20 +- .../libtomcrypt/src/mac/hmac/hmac_process.c | 10 +- dropbear/libtomcrypt/src/mac/hmac/hmac_test.c | 734 +- dropbear/libtomcrypt/src/mac/omac/omac_done.c | 12 +- dropbear/libtomcrypt/src/mac/omac/omac_file.c | 58 +- dropbear/libtomcrypt/src/mac/omac/omac_init.c | 12 +- .../libtomcrypt/src/mac/omac/omac_memory.c | 16 +- .../src/mac/omac/omac_memory_multi.c | 18 +- .../libtomcrypt/src/mac/omac/omac_process.c | 44 +- dropbear/libtomcrypt/src/mac/omac/omac_test.c | 47 +- .../libtomcrypt/src/mac/pelican/pelican.c | 35 +- .../src/mac/pelican/pelican_memory.c | 20 +- .../src/mac/pelican/pelican_test.c | 35 +- dropbear/libtomcrypt/src/mac/pmac/pmac_done.c | 12 +- dropbear/libtomcrypt/src/mac/pmac/pmac_file.c | 62 +- dropbear/libtomcrypt/src/mac/pmac/pmac_init.c | 71 +- .../libtomcrypt/src/mac/pmac/pmac_memory.c | 18 +- .../src/mac/pmac/pmac_memory_multi.c | 20 +- dropbear/libtomcrypt/src/mac/pmac/pmac_ntz.c | 12 +- .../libtomcrypt/src/mac/pmac/pmac_process.c | 18 +- .../libtomcrypt/src/mac/pmac/pmac_shift_xor.c | 16 +- dropbear/libtomcrypt/src/mac/pmac/pmac_test.c | 39 +- .../libtomcrypt/src/mac/poly1305/poly1305.c | 268 + .../src/mac/poly1305/poly1305_file.c | 88 + .../src/mac/poly1305/poly1305_memory.c | 53 + .../src/mac/poly1305/poly1305_memory_multi.c | 67 + .../src/mac/poly1305/poly1305_test.c | 56 + dropbear/libtomcrypt/src/mac/xcbc/xcbc_done.c | 10 +- dropbear/libtomcrypt/src/mac/xcbc/xcbc_file.c | 58 +- dropbear/libtomcrypt/src/mac/xcbc/xcbc_init.c | 68 +- .../libtomcrypt/src/mac/xcbc/xcbc_memory.c | 12 +- .../src/mac/xcbc/xcbc_memory_multi.c | 18 +- .../libtomcrypt/src/mac/xcbc/xcbc_process.c | 24 +- dropbear/libtomcrypt/src/mac/xcbc/xcbc_test.c | 42 +- .../src/math/fp/ltc_ecc_fp_mulmod.c | 1615 +- dropbear/libtomcrypt/src/math/gmp_desc.c | 142 +- dropbear/libtomcrypt/src/math/ltm_desc.c | 100 +- dropbear/libtomcrypt/src/math/multi.c | 30 +- dropbear/libtomcrypt/src/math/radix_to_bin.c | 62 + dropbear/libtomcrypt/src/math/rand_bn.c | 75 + dropbear/libtomcrypt/src/math/rand_prime.c | 25 +- dropbear/libtomcrypt/src/math/tfm_desc.c | 118 +- dropbear/libtomcrypt/src/misc/adler32.c | 131 + .../src/misc/base64/base64_decode.c | 160 +- .../src/misc/base64/base64_encode.c | 83 +- dropbear/libtomcrypt/src/misc/burn_stack.c | 8 +- .../libtomcrypt/src/misc/compare_testvector.c | 87 + dropbear/libtomcrypt/src/misc/crc32.c | 202 + dropbear/libtomcrypt/src/misc/crypt/crypt.c | 397 +- .../libtomcrypt/src/misc/crypt/crypt_argchk.c | 15 +- .../src/misc/crypt/crypt_cipher_descriptor.c | 10 +- .../src/misc/crypt/crypt_cipher_is_valid.c | 8 +- .../src/misc/crypt/crypt_constants.c | 297 + .../src/misc/crypt/crypt_find_cipher.c | 8 +- .../src/misc/crypt/crypt_find_cipher_any.c | 18 +- .../src/misc/crypt/crypt_find_cipher_id.c | 8 +- .../src/misc/crypt/crypt_find_hash.c | 8 +- .../src/misc/crypt/crypt_find_hash_any.c | 10 +- .../src/misc/crypt/crypt_find_hash_id.c | 8 +- .../src/misc/crypt/crypt_find_hash_oid.c | 8 +- .../src/misc/crypt/crypt_find_prng.c | 8 +- .../libtomcrypt/src/misc/crypt/crypt_fsa.c | 27 +- .../src/misc/crypt/crypt_hash_descriptor.c | 10 +- .../src/misc/crypt/crypt_hash_is_valid.c | 10 +- .../libtomcrypt/src/misc/crypt/crypt_inits.c | 43 + .../src/misc/crypt/crypt_ltc_mp_descriptor.c | 9 +- .../src/misc/crypt/crypt_prng_descriptor.c | 10 +- .../src/misc/crypt/crypt_prng_is_valid.c | 8 +- .../misc/crypt/crypt_prng_rng_descriptor.c | 17 + .../misc/crypt/crypt_register_all_ciphers.c | 100 + .../misc/crypt/crypt_register_all_hashes.c | 99 + .../src/misc/crypt/crypt_register_all_prngs.c | 48 + .../src/misc/crypt/crypt_register_cipher.c | 8 +- .../src/misc/crypt/crypt_register_hash.c | 8 +- .../src/misc/crypt/crypt_register_prng.c | 10 +- .../libtomcrypt/src/misc/crypt/crypt_sizes.c | 356 + .../src/misc/crypt/crypt_unregister_cipher.c | 8 +- .../src/misc/crypt/crypt_unregister_hash.c | 8 +- .../src/misc/crypt/crypt_unregister_prng.c | 12 +- .../libtomcrypt/src/misc/error_to_string.c | 27 +- dropbear/libtomcrypt/src/misc/hkdf/hkdf.c | 143 + .../libtomcrypt/src/misc/hkdf/hkdf_test.c | 294 + dropbear/libtomcrypt/src/misc/mem_neq.c | 63 + dropbear/libtomcrypt/src/misc/pk_get_oid.c | 44 + .../libtomcrypt/src/misc/pkcs5/pkcs_5_1.c | 159 +- .../libtomcrypt/src/misc/pkcs5/pkcs_5_2.c | 20 +- .../libtomcrypt/src/misc/pkcs5/pkcs_5_test.c | 231 + dropbear/libtomcrypt/src/misc/zeromem.c | 17 +- .../libtomcrypt/src/modes/cbc/cbc_decrypt.c | 44 +- dropbear/libtomcrypt/src/modes/cbc/cbc_done.c | 10 +- .../libtomcrypt/src/modes/cbc/cbc_encrypt.c | 54 +- .../libtomcrypt/src/modes/cbc/cbc_getiv.c | 14 +- .../libtomcrypt/src/modes/cbc/cbc_setiv.c | 14 +- .../libtomcrypt/src/modes/cbc/cbc_start.c | 16 +- .../libtomcrypt/src/modes/cfb/cfb_decrypt.c | 10 +- dropbear/libtomcrypt/src/modes/cfb/cfb_done.c | 10 +- .../libtomcrypt/src/modes/cfb/cfb_encrypt.c | 10 +- .../libtomcrypt/src/modes/cfb/cfb_getiv.c | 14 +- .../libtomcrypt/src/modes/cfb/cfb_setiv.c | 22 +- .../libtomcrypt/src/modes/cfb/cfb_start.c | 16 +- .../libtomcrypt/src/modes/ctr/ctr_decrypt.c | 8 +- dropbear/libtomcrypt/src/modes/ctr/ctr_done.c | 10 +- .../libtomcrypt/src/modes/ctr/ctr_encrypt.c | 24 +- .../libtomcrypt/src/modes/ctr/ctr_getiv.c | 14 +- .../libtomcrypt/src/modes/ctr/ctr_setiv.c | 22 +- .../libtomcrypt/src/modes/ctr/ctr_start.c | 36 +- dropbear/libtomcrypt/src/modes/ctr/ctr_test.c | 12 +- .../libtomcrypt/src/modes/ecb/ecb_decrypt.c | 8 +- dropbear/libtomcrypt/src/modes/ecb/ecb_done.c | 10 +- .../libtomcrypt/src/modes/ecb/ecb_encrypt.c | 8 +- .../libtomcrypt/src/modes/ecb/ecb_start.c | 10 +- .../libtomcrypt/src/modes/f8/f8_decrypt.c | 10 +- dropbear/libtomcrypt/src/modes/f8/f8_done.c | 10 +- .../libtomcrypt/src/modes/f8/f8_encrypt.c | 18 +- dropbear/libtomcrypt/src/modes/f8/f8_getiv.c | 14 +- dropbear/libtomcrypt/src/modes/f8/f8_setiv.c | 14 +- dropbear/libtomcrypt/src/modes/f8/f8_start.c | 28 +- .../libtomcrypt/src/modes/f8/f8_test_mode.c | 38 +- .../libtomcrypt/src/modes/lrw/lrw_decrypt.c | 8 +- dropbear/libtomcrypt/src/modes/lrw/lrw_done.c | 12 +- .../libtomcrypt/src/modes/lrw/lrw_encrypt.c | 10 +- .../libtomcrypt/src/modes/lrw/lrw_getiv.c | 8 +- .../libtomcrypt/src/modes/lrw/lrw_process.c | 26 +- .../libtomcrypt/src/modes/lrw/lrw_setiv.c | 18 +- .../libtomcrypt/src/modes/lrw/lrw_start.c | 30 +- dropbear/libtomcrypt/src/modes/lrw/lrw_test.c | 20 +- .../libtomcrypt/src/modes/ofb/ofb_decrypt.c | 10 +- dropbear/libtomcrypt/src/modes/ofb/ofb_done.c | 10 +- .../libtomcrypt/src/modes/ofb/ofb_encrypt.c | 12 +- .../libtomcrypt/src/modes/ofb/ofb_getiv.c | 14 +- .../libtomcrypt/src/modes/ofb/ofb_setiv.c | 14 +- .../libtomcrypt/src/modes/ofb/ofb_start.c | 14 +- .../libtomcrypt/src/modes/xts/xts_decrypt.c | 156 + dropbear/libtomcrypt/src/modes/xts/xts_done.c | 31 + .../libtomcrypt/src/modes/xts/xts_encrypt.c | 157 + dropbear/libtomcrypt/src/modes/xts/xts_init.c | 61 + .../libtomcrypt/src/modes/xts/xts_mult_x.c | 39 + dropbear/libtomcrypt/src/modes/xts/xts_test.c | 306 + .../pk/asn1/der/bit/der_decode_bit_string.c | 14 +- .../asn1/der/bit/der_decode_raw_bit_string.c | 107 + .../pk/asn1/der/bit/der_encode_bit_string.c | 8 +- .../asn1/der/bit/der_encode_raw_bit_string.c | 90 + .../pk/asn1/der/bit/der_length_bit_string.c | 12 +- .../pk/asn1/der/boolean/der_decode_boolean.c | 16 +- .../pk/asn1/der/boolean/der_encode_boolean.c | 16 +- .../pk/asn1/der/boolean/der_length_boolean.c | 10 +- .../pk/asn1/der/choice/der_decode_choice.c | 57 +- .../der_decode_generalizedtime.c | 144 + .../der_encode_generalizedtime.c | 108 + .../der_length_generalizedtime.c | 58 + .../pk/asn1/der/ia5/der_decode_ia5_string.c | 10 +- .../pk/asn1/der/ia5/der_encode_ia5_string.c | 10 +- .../pk/asn1/der/ia5/der_length_ia5_string.c | 214 +- .../pk/asn1/der/integer/der_decode_integer.c | 14 +- .../pk/asn1/der/integer/der_encode_integer.c | 14 +- .../pk/asn1/der/integer/der_length_integer.c | 15 +- .../der_decode_object_identifier.c | 69 +- .../der_encode_object_identifier.c | 64 +- .../der_length_object_identifier.c | 12 +- .../asn1/der/octet/der_decode_octet_string.c | 10 +- .../asn1/der/octet/der_encode_octet_string.c | 10 +- .../asn1/der/octet/der_length_octet_string.c | 10 +- .../der_decode_printable_string.c | 10 +- .../der_encode_printable_string.c | 10 +- .../der_length_printable_string.c | 162 +- .../der/sequence/der_decode_sequence_ex.c | 111 +- .../der/sequence/der_decode_sequence_flexi.c | 323 +- .../der/sequence/der_decode_sequence_multi.c | 54 +- .../der_decode_subject_public_key_info.c | 112 + .../der/sequence/der_encode_sequence_ex.c | 200 +- .../der/sequence/der_encode_sequence_multi.c | 51 +- .../der_encode_subject_public_key_info.c | 71 + .../asn1/der/sequence/der_length_sequence.c | 52 +- .../pk/asn1/der/sequence/der_sequence_free.c | 30 +- .../asn1/der/sequence/der_sequence_shrink.c | 50 + .../src/pk/asn1/der/set/der_encode_set.c | 57 +- .../src/pk/asn1/der/set/der_encode_setof.c | 89 +- .../short_integer/der_decode_short_integer.c | 8 +- .../short_integer/der_encode_short_integer.c | 14 +- .../short_integer/der_length_short_integer.c | 18 +- .../der_decode_teletex_string.c | 93 + .../der_length_teletex_string.c | 208 + .../pk/asn1/der/utctime/der_decode_utctime.c | 20 +- .../pk/asn1/der/utctime/der_encode_utctime.c | 18 +- .../pk/asn1/der/utctime/der_length_utctime.c | 8 +- .../pk/asn1/der/utf8/der_decode_utf8_string.c | 29 +- .../pk/asn1/der/utf8/der_encode_utf8_string.c | 33 +- .../pk/asn1/der/utf8/der_length_utf8_string.c | 37 +- dropbear/libtomcrypt/src/pk/dh/dh.c | 237 + .../libtomcrypt/src/pk/dh/dh_check_pubkey.c | 65 + dropbear/libtomcrypt/src/pk/dh/dh_export.c | 62 + .../libtomcrypt/src/pk/dh/dh_export_key.c | 47 + dropbear/libtomcrypt/src/pk/dh/dh_free.c | 28 + .../libtomcrypt/src/pk/dh/dh_generate_key.c | 102 + dropbear/libtomcrypt/src/pk/dh/dh_import.c | 99 + dropbear/libtomcrypt/src/pk/dh/dh_set.c | 124 + .../libtomcrypt/src/pk/dh/dh_set_pg_dhparam.c | 54 + .../libtomcrypt/src/pk/dh/dh_shared_secret.c | 80 + .../libtomcrypt/src/pk/dsa/dsa_decrypt_key.c | 34 +- .../libtomcrypt/src/pk/dsa/dsa_encrypt_key.c | 47 +- dropbear/libtomcrypt/src/pk/dsa/dsa_export.c | 92 +- dropbear/libtomcrypt/src/pk/dsa/dsa_free.c | 13 +- .../libtomcrypt/src/pk/dsa/dsa_generate_key.c | 47 + .../libtomcrypt/src/pk/dsa/dsa_generate_pqg.c | 244 + dropbear/libtomcrypt/src/pk/dsa/dsa_import.c | 140 +- .../libtomcrypt/src/pk/dsa/dsa_make_key.c | 118 +- dropbear/libtomcrypt/src/pk/dsa/dsa_set.c | 112 + .../src/pk/dsa/dsa_set_pqg_dsaparam.c | 67 + .../src/pk/dsa/dsa_shared_secret.c | 16 +- .../libtomcrypt/src/pk/dsa/dsa_sign_hash.c | 42 +- .../libtomcrypt/src/pk/dsa/dsa_verify_hash.c | 49 +- .../libtomcrypt/src/pk/dsa/dsa_verify_key.c | 189 +- dropbear/libtomcrypt/src/pk/ecc/ecc.c | 28 +- .../src/pk/ecc/ecc_ansi_x963_export.c | 27 +- .../src/pk/ecc/ecc_ansi_x963_import.c | 18 +- .../libtomcrypt/src/pk/ecc/ecc_decrypt_key.c | 25 +- .../libtomcrypt/src/pk/ecc/ecc_encrypt_key.c | 26 +- dropbear/libtomcrypt/src/pk/ecc/ecc_export.c | 14 +- dropbear/libtomcrypt/src/pk/ecc/ecc_free.c | 12 +- .../libtomcrypt/src/pk/ecc/ecc_get_size.c | 14 +- dropbear/libtomcrypt/src/pk/ecc/ecc_import.c | 46 +- .../libtomcrypt/src/pk/ecc/ecc_make_key.c | 25 +- .../src/pk/ecc/ecc_shared_secret.c | 12 +- .../libtomcrypt/src/pk/ecc/ecc_sign_hash.c | 114 +- dropbear/libtomcrypt/src/pk/ecc/ecc_sizes.c | 12 +- dropbear/libtomcrypt/src/pk/ecc/ecc_test.c | 12 +- .../libtomcrypt/src/pk/ecc/ecc_verify_hash.c | 113 +- .../src/pk/ecc/ltc_ecc_is_valid_idx.c | 16 +- dropbear/libtomcrypt/src/pk/ecc/ltc_ecc_map.c | 16 +- .../libtomcrypt/src/pk/ecc/ltc_ecc_mul2add.c | 43 +- .../libtomcrypt/src/pk/ecc/ltc_ecc_mulmod.c | 22 +- .../src/pk/ecc/ltc_ecc_mulmod_timing.c | 16 +- .../libtomcrypt/src/pk/ecc/ltc_ecc_points.c | 14 +- .../src/pk/ecc/ltc_ecc_projective_add_point.c | 20 +- .../src/pk/ecc/ltc_ecc_projective_dbl_point.c | 18 +- .../src/pk/katja/katja_decrypt_key.c | 22 +- .../src/pk/katja/katja_encrypt_key.c | 28 +- .../libtomcrypt/src/pk/katja/katja_export.c | 42 +- .../libtomcrypt/src/pk/katja/katja_exptmod.c | 24 +- .../libtomcrypt/src/pk/katja/katja_free.c | 12 +- .../libtomcrypt/src/pk/katja/katja_import.c | 38 +- .../libtomcrypt/src/pk/katja/katja_make_key.c | 18 +- .../libtomcrypt/src/pk/pkcs1/pkcs_1_i2osp.c | 16 +- .../libtomcrypt/src/pk/pkcs1/pkcs_1_mgf1.c | 22 +- .../src/pk/pkcs1/pkcs_1_oaep_decode.c | 70 +- .../src/pk/pkcs1/pkcs_1_oaep_encode.c | 22 +- .../libtomcrypt/src/pk/pkcs1/pkcs_1_os2ip.c | 16 +- .../src/pk/pkcs1/pkcs_1_pss_decode.c | 39 +- .../src/pk/pkcs1/pkcs_1_pss_encode.c | 31 +- .../src/pk/pkcs1/pkcs_1_v1_5_decode.c | 52 +- .../src/pk/pkcs1/pkcs_1_v1_5_encode.c | 18 +- .../libtomcrypt/src/pk/rsa/rsa_decrypt_key.c | 12 +- .../libtomcrypt/src/pk/rsa/rsa_encrypt_key.c | 12 +- dropbear/libtomcrypt/src/pk/rsa/rsa_export.c | 72 +- dropbear/libtomcrypt/src/pk/rsa/rsa_exptmod.c | 131 +- dropbear/libtomcrypt/src/pk/rsa/rsa_free.c | 14 +- .../libtomcrypt/src/pk/rsa/rsa_get_size.c | 40 + dropbear/libtomcrypt/src/pk/rsa/rsa_import.c | 104 +- .../libtomcrypt/src/pk/rsa/rsa_import_pkcs8.c | 153 + .../libtomcrypt/src/pk/rsa/rsa_import_x509.c | 118 + .../libtomcrypt/src/pk/rsa/rsa_make_key.c | 41 +- dropbear/libtomcrypt/src/pk/rsa/rsa_set.c | 134 + .../libtomcrypt/src/pk/rsa/rsa_sign_hash.c | 92 +- .../src/pk/rsa/rsa_sign_saltlen_get.c | 47 + .../libtomcrypt/src/pk/rsa/rsa_verify_hash.c | 106 +- dropbear/libtomcrypt/src/prngs/chacha20.c | 247 + dropbear/libtomcrypt/src/prngs/fortuna.c | 217 +- dropbear/libtomcrypt/src/prngs/rc4.c | 299 +- .../libtomcrypt/src/prngs/rng_get_bytes.c | 87 +- .../libtomcrypt/src/prngs/rng_make_prng.c | 18 +- dropbear/libtomcrypt/src/prngs/sober128.c | 525 +- dropbear/libtomcrypt/src/prngs/sober128tab.c | 10 +- dropbear/libtomcrypt/src/prngs/sprng.c | 61 +- dropbear/libtomcrypt/src/prngs/yarrow.c | 230 +- .../src/stream/chacha/chacha_crypt.c | 101 + .../src/stream/chacha/chacha_done.c | 30 + .../src/stream/chacha/chacha_ivctr32.c | 47 + .../src/stream/chacha/chacha_ivctr64.c | 47 + .../src/stream/chacha/chacha_keystream.c | 38 + .../src/stream/chacha/chacha_setup.c | 67 + .../src/stream/chacha/chacha_test.c | 71 + .../libtomcrypt/src/stream/rc4/rc4_stream.c | 111 + .../libtomcrypt/src/stream/rc4/rc4_test.c | 39 + .../src/stream/sober128/sober128_stream.c | 346 + .../src/stream/sober128/sober128_test.c | 45 + .../src/stream/sober128/sober128tab.c | 176 + dropbear/libtomcrypt/testbuild.sh | 4 + dropbear/libtomcrypt/testme.sh | 61 +- dropbear/libtomcrypt/testprof/base64_test.c | 6 +- .../libtomcrypt/testprof/cipher_hash_test.c | 6 +- dropbear/libtomcrypt/testprof/der_tests.c | 8 +- dropbear/libtomcrypt/testprof/dsa_test.c | 8 +- dropbear/libtomcrypt/testprof/ecc_test.c | 8 +- dropbear/libtomcrypt/testprof/katja_test.c | 2 +- dropbear/libtomcrypt/testprof/mac_test.c | 16 +- dropbear/libtomcrypt/testprof/modes_test.c | 10 +- dropbear/libtomcrypt/testprof/pkcs_1_test.c | 10 +- dropbear/libtomcrypt/testprof/rsa_test.c | 24 +- dropbear/libtomcrypt/testprof/store_test.c | 6 +- dropbear/libtomcrypt/testprof/test_driver.c | 6 +- dropbear/libtomcrypt/testprof/tomcrypt_test.h | 6 +- dropbear/libtomcrypt/testprof/x86_prof.c | 105 +- dropbear/libtomcrypt/tests/base64_test.c | 134 + dropbear/libtomcrypt/tests/cipher_hash_test.c | 46 + dropbear/libtomcrypt/tests/common.c | 68 + dropbear/libtomcrypt/tests/common.h | 32 + dropbear/libtomcrypt/tests/der_test.c | 1451 ++ dropbear/libtomcrypt/tests/dh_test.c | 454 + dropbear/libtomcrypt/tests/dsa_test.c | 400 + dropbear/libtomcrypt/tests/ecc_test.c | 268 + dropbear/libtomcrypt/tests/file_test.c | 115 + dropbear/libtomcrypt/tests/katja_test.c | 242 + dropbear/libtomcrypt/tests/mac_test.c | 64 + dropbear/libtomcrypt/tests/misc_test.c | 33 + dropbear/libtomcrypt/tests/modes_test.c | 130 + dropbear/libtomcrypt/tests/mpi_test.c | 147 + dropbear/libtomcrypt/tests/multi_test.c | 237 + dropbear/libtomcrypt/tests/no_prng.c | 185 + dropbear/libtomcrypt/tests/pkcs_1_eme_test.c | 78 + dropbear/libtomcrypt/tests/pkcs_1_emsa_test.c | 72 + dropbear/libtomcrypt/tests/pkcs_1_oaep_test.c | 78 + dropbear/libtomcrypt/tests/pkcs_1_pss_test.c | 79 + dropbear/libtomcrypt/tests/pkcs_1_test.c | 106 + dropbear/libtomcrypt/tests/prng_test.c | 90 + dropbear/libtomcrypt/tests/rotate_test.c | 416 + dropbear/libtomcrypt/tests/rsa_test.c | 702 + dropbear/libtomcrypt/tests/store_test.c | 86 + dropbear/libtomcrypt/tests/test.c | 433 + dropbear/libtomcrypt/tests/test.der | Bin 0 -> 162 bytes dropbear/libtomcrypt/tests/test.key | 15 + dropbear/libtomcrypt/tests/test_dsa.key | 12 + dropbear/libtomcrypt/tests/tomcrypt_test.h | 69 + dropbear/libtomcrypt/updatemakes.sh | 23 +- dropbear/libtommath/LICENSE | 29 +- dropbear/libtommath/Makefile.in | 251 +- dropbear/libtommath/README.md | 15 + dropbear/libtommath/bn.tex | 506 +- dropbear/libtommath/bn_error.c | 14 +- dropbear/libtommath/bn_fast_mp_invmod.c | 22 +- .../libtommath/bn_fast_mp_montgomery_reduce.c | 34 +- dropbear/libtommath/bn_fast_s_mp_mul_digs.c | 18 +- .../libtommath/bn_fast_s_mp_mul_high_digs.c | 12 +- dropbear/libtommath/bn_fast_s_mp_sqr.c | 12 +- dropbear/libtommath/bn_mp_2expt.c | 14 +- dropbear/libtommath/bn_mp_abs.c | 10 +- dropbear/libtommath/bn_mp_add.c | 10 +- dropbear/libtommath/bn_mp_add_d.c | 20 +- dropbear/libtommath/bn_mp_addmod.c | 10 +- dropbear/libtommath/bn_mp_and.c | 10 +- dropbear/libtommath/bn_mp_clamp.c | 12 +- dropbear/libtommath/bn_mp_clear.c | 20 +- dropbear/libtommath/bn_mp_clear_multi.c | 10 +- dropbear/libtommath/bn_mp_cmp.c | 10 +- dropbear/libtommath/bn_mp_cmp_d.c | 10 +- dropbear/libtommath/bn_mp_cmp_mag.c | 10 +- dropbear/libtommath/bn_mp_cnt_lsb.c | 14 +- dropbear/libtommath/bn_mp_copy.c | 12 +- dropbear/libtommath/bn_mp_count_bits.c | 10 +- dropbear/libtommath/bn_mp_div.c | 83 +- dropbear/libtommath/bn_mp_div_2.c | 12 +- dropbear/libtommath/bn_mp_div_2d.c | 31 +- dropbear/libtommath/bn_mp_div_3.c | 10 +- dropbear/libtommath/bn_mp_div_d.c | 19 +- dropbear/libtommath/bn_mp_dr_is_modulus.c | 10 +- dropbear/libtommath/bn_mp_dr_reduce.c | 18 +- dropbear/libtommath/bn_mp_dr_setup.c | 10 +- dropbear/libtommath/bn_mp_exch.c | 10 +- dropbear/libtommath/bn_mp_export.c | 88 + dropbear/libtommath/bn_mp_expt_d.c | 45 +- dropbear/libtommath/bn_mp_expt_d_ex.c | 83 + dropbear/libtommath/bn_mp_exptmod.c | 12 +- dropbear/libtommath/bn_mp_exptmod_fast.c | 28 +- dropbear/libtommath/bn_mp_exteuclid.c | 51 +- dropbear/libtommath/bn_mp_fread.c | 12 +- dropbear/libtommath/bn_mp_fwrite.c | 12 +- dropbear/libtommath/bn_mp_gcd.c | 12 +- dropbear/libtommath/bn_mp_get_int.c | 18 +- dropbear/libtommath/bn_mp_get_long.c | 41 + dropbear/libtommath/bn_mp_get_long_long.c | 41 + dropbear/libtommath/bn_mp_grow.c | 10 +- dropbear/libtommath/bn_mp_import.c | 73 + dropbear/libtommath/bn_mp_init.c | 10 +- dropbear/libtommath/bn_mp_init_copy.c | 17 +- dropbear/libtommath/bn_mp_init_multi.c | 15 +- dropbear/libtommath/bn_mp_init_set.c | 10 +- dropbear/libtommath/bn_mp_init_set_int.c | 10 +- dropbear/libtommath/bn_mp_init_size.c | 10 +- dropbear/libtommath/bn_mp_invmod.c | 18 +- dropbear/libtommath/bn_mp_invmod_slow.c | 24 +- dropbear/libtommath/bn_mp_is_square.c | 24 +- dropbear/libtommath/bn_mp_jacobi.c | 46 +- dropbear/libtommath/bn_mp_karatsuba_mul.c | 14 +- dropbear/libtommath/bn_mp_karatsuba_sqr.c | 14 +- dropbear/libtommath/bn_mp_lcm.c | 10 +- dropbear/libtommath/bn_mp_lshd.c | 16 +- dropbear/libtommath/bn_mp_mod.c | 18 +- dropbear/libtommath/bn_mp_mod_2d.c | 12 +- dropbear/libtommath/bn_mp_mod_d.c | 10 +- .../bn_mp_montgomery_calc_normalization.c | 12 +- dropbear/libtommath/bn_mp_montgomery_reduce.c | 30 +- dropbear/libtommath/bn_mp_montgomery_setup.c | 20 +- dropbear/libtommath/bn_mp_mul.c | 17 +- dropbear/libtommath/bn_mp_mul_2.c | 14 +- dropbear/libtommath/bn_mp_mul_2d.c | 18 +- dropbear/libtommath/bn_mp_mul_d.c | 14 +- dropbear/libtommath/bn_mp_mulmod.c | 10 +- dropbear/libtommath/bn_mp_n_root.c | 120 +- dropbear/libtommath/bn_mp_n_root_ex.c | 132 + dropbear/libtommath/bn_mp_neg.c | 10 +- dropbear/libtommath/bn_mp_or.c | 10 +- dropbear/libtommath/bn_mp_prime_fermat.c | 10 +- .../libtommath/bn_mp_prime_is_divisible.c | 10 +- dropbear/libtommath/bn_mp_prime_is_prime.c | 12 +- .../libtommath/bn_mp_prime_miller_rabin.c | 14 +- dropbear/libtommath/bn_mp_prime_next_prime.c | 20 +- .../bn_mp_prime_rabin_miller_trials.c | 10 +- dropbear/libtommath/bn_mp_prime_random_ex.c | 23 +- dropbear/libtommath/bn_mp_radix_size.c | 24 +- dropbear/libtommath/bn_mp_radix_smap.c | 10 +- dropbear/libtommath/bn_mp_rand.c | 39 +- dropbear/libtommath/bn_mp_read_radix.c | 20 +- dropbear/libtommath/bn_mp_read_signed_bin.c | 10 +- dropbear/libtommath/bn_mp_read_unsigned_bin.c | 20 +- dropbear/libtommath/bn_mp_reduce.c | 24 +- dropbear/libtommath/bn_mp_reduce_2k.c | 30 +- dropbear/libtommath/bn_mp_reduce_2k_l.c | 32 +- dropbear/libtommath/bn_mp_reduce_2k_setup.c | 10 +- dropbear/libtommath/bn_mp_reduce_2k_setup_l.c | 10 +- dropbear/libtommath/bn_mp_reduce_is_2k.c | 10 +- dropbear/libtommath/bn_mp_reduce_is_2k_l.c | 10 +- dropbear/libtommath/bn_mp_reduce_setup.c | 10 +- dropbear/libtommath/bn_mp_rshd.c | 12 +- dropbear/libtommath/bn_mp_set.c | 10 +- dropbear/libtommath/bn_mp_set_int.c | 10 +- dropbear/libtommath/bn_mp_set_long.c | 24 + dropbear/libtommath/bn_mp_set_long_long.c | 24 + dropbear/libtommath/bn_mp_shrink.c | 22 +- dropbear/libtommath/bn_mp_signed_bin_size.c | 10 +- dropbear/libtommath/bn_mp_sqr.c | 20 +- dropbear/libtommath/bn_mp_sqrmod.c | 10 +- dropbear/libtommath/bn_mp_sqrt.c | 10 +- dropbear/libtommath/bn_mp_sqrtmod_prime.c | 124 + dropbear/libtommath/bn_mp_sub.c | 10 +- dropbear/libtommath/bn_mp_sub_d.c | 18 +- dropbear/libtommath/bn_mp_submod.c | 10 +- dropbear/libtommath/bn_mp_to_signed_bin.c | 12 +- dropbear/libtommath/bn_mp_to_signed_bin_n.c | 10 +- dropbear/libtommath/bn_mp_to_unsigned_bin.c | 12 +- dropbear/libtommath/bn_mp_to_unsigned_bin_n.c | 10 +- dropbear/libtommath/bn_mp_toom_mul.c | 278 +- dropbear/libtommath/bn_mp_toom_sqr.c | 214 +- dropbear/libtommath/bn_mp_toradix.c | 16 +- dropbear/libtommath/bn_mp_toradix_n.c | 14 +- dropbear/libtommath/bn_mp_unsigned_bin_size.c | 12 +- dropbear/libtommath/bn_mp_xor.c | 10 +- dropbear/libtommath/bn_mp_zero.c | 10 +- dropbear/libtommath/bn_prime_tab.c | 10 +- dropbear/libtommath/bn_reverse.c | 10 +- dropbear/libtommath/bn_s_mp_add.c | 16 +- dropbear/libtommath/bn_s_mp_exptmod.c | 16 +- dropbear/libtommath/bn_s_mp_mul_digs.c | 22 +- dropbear/libtommath/bn_s_mp_mul_high_digs.c | 18 +- dropbear/libtommath/bn_s_mp_sqr.c | 20 +- dropbear/libtommath/bn_s_mp_sub.c | 20 +- dropbear/libtommath/bncore.c | 10 +- dropbear/libtommath/booker.pl | 68 +- dropbear/libtommath/callgraph.txt | 13188 ++++++++++++++++ dropbear/libtommath/changes.txt | 65 +- dropbear/libtommath/demo/demo.c | 748 +- dropbear/libtommath/demo/timing.c | 127 +- dropbear/libtommath/dep.pl | 106 +- dropbear/libtommath/etc/2kprime.c | 6 +- dropbear/libtommath/etc/drprime.c | 6 +- dropbear/libtommath/etc/mersenne.c | 6 +- dropbear/libtommath/etc/mont.c | 6 +- dropbear/libtommath/etc/pprime.c | 6 +- dropbear/libtommath/etc/tune.c | 50 +- dropbear/libtommath/filter.pl | 34 + dropbear/libtommath/gen.pl | 21 +- dropbear/libtommath/genlist.sh | 8 + dropbear/libtommath/makefile.bcc | 56 +- dropbear/libtommath/makefile.cygwin_dll | 58 +- dropbear/libtommath/makefile.icc | 71 +- dropbear/libtommath/makefile.msvc | 54 +- dropbear/libtommath/makefile.shared | 154 +- dropbear/libtommath/makefile_include.mk | 118 + dropbear/libtommath/mtest/logtab.h | 6 +- dropbear/libtommath/mtest/mpi-config.h | 8 +- dropbear/libtommath/mtest/mpi-types.h | 6 +- dropbear/libtommath/mtest/mpi.c | 178 +- dropbear/libtommath/mtest/mpi.h | 10 +- dropbear/libtommath/mtest/mtest.c | 106 +- dropbear/libtommath/parsenames.pl | 28 + dropbear/libtommath/pre_gen/mpi.c | 3320 ++-- dropbear/libtommath/testme.sh | 197 + dropbear/libtommath/tommath.h | 202 +- dropbear/libtommath/tommath_class.h | 104 +- dropbear/libtommath/tommath_private.h | 123 + dropbear/libtommath/tommath_superclass.h | 6 +- dropbear/libtommath/updatemakes.sh | 33 + dropbear/list.c | 2 +- dropbear/list.h | 16 +- dropbear/listener.c | 21 +- dropbear/listener.h | 26 +- dropbear/loginrec.c | 26 +- dropbear/loginrec.h | 10 +- dropbear/ltc_prng.c | 19 +- dropbear/ltc_prng.h | 9 +- dropbear/netio.c | 677 + dropbear/netio.h | 65 + dropbear/options.h | 335 +- dropbear/packet.c | 197 +- dropbear/packet.h | 24 +- dropbear/process-packet.c | 2 +- dropbear/queue.c | 4 +- dropbear/queue.h | 8 +- dropbear/release.sh | 13 +- dropbear/rsa.c | 90 +- dropbear/rsa.h | 20 +- dropbear/runopts.h | 66 +- dropbear/scp.c | 51 +- dropbear/scpmisc.c | 8 +- dropbear/scpmisc.h | 7 +- dropbear/service.h | 8 +- dropbear/session.h | 82 +- dropbear/signkey.c | 154 +- dropbear/signkey.h | 36 +- dropbear/svr-agentfwd.c | 21 +- dropbear/svr-auth.c | 217 +- dropbear/svr-authpam.c | 41 +- dropbear/svr-authpasswd.c | 40 +- dropbear/svr-authpubkey.c | 292 +- dropbear/svr-authpubkeyoptions.c | 26 +- dropbear/svr-chansession.c | 214 +- dropbear/svr-kex.c | 67 +- dropbear/svr-main.c | 71 +- dropbear/svr-runopts.c | 306 +- dropbear/svr-service.c | 6 +- dropbear/svr-session.c | 103 +- dropbear/svr-tcpfwd.c | 99 +- dropbear/svr-x11fwd.c | 52 +- dropbear/sysoptions.h | 216 +- dropbear/tcp-accept.c | 26 +- dropbear/tcpfwd.h | 27 +- dropbear/termcodes.c | 24 +- dropbear/termcodes.h | 6 +- dropbear/x11fwd.h | 10 +- 857 files changed, 119192 insertions(+), 22425 deletions(-) delete mode 100644 dropbear/.hgtags create mode 100644 dropbear/FUZZER-NOTES.md delete mode 100644 dropbear/TODO create mode 100644 dropbear/dbhelpers.c create mode 100644 dropbear/dbhelpers.h create mode 100644 dropbear/dbmalloc.c create mode 100644 dropbear/dbmalloc.h create mode 100644 dropbear/default_options.h create mode 100644 dropbear/dh_groups.c create mode 100644 dropbear/dh_groups.h create mode 100644 dropbear/fuzz-common.c create mode 100644 dropbear/fuzz-harness.c create mode 100644 dropbear/fuzz-hostkeys.c create mode 100644 dropbear/fuzz-wrapfd.c create mode 100644 dropbear/fuzz-wrapfd.h create mode 100644 dropbear/fuzz.h create mode 100644 dropbear/fuzzer-kexdh.c create mode 100644 dropbear/fuzzer-kexecdh.c create mode 100644 dropbear/fuzzer-preauth.c create mode 100644 dropbear/fuzzer-preauth_nomaths.c create mode 100644 dropbear/fuzzer-pubkey.c create mode 100644 dropbear/fuzzer-verify.c create mode 100755 dropbear/fuzzers_test.sh create mode 100755 dropbear/ifndef_wrapper.sh create mode 100644 dropbear/libtomcrypt/.travis.yml mode change 100644 => 100755 dropbear/libtomcrypt/build.sh create mode 100755 dropbear/libtomcrypt/check_source.sh create mode 100755 dropbear/libtomcrypt/coverage.sh create mode 100755 dropbear/libtomcrypt/coverage_more.sh create mode 100755 dropbear/libtomcrypt/coverity.sh create mode 100644 dropbear/libtomcrypt/demos/constants.c create mode 100644 dropbear/libtomcrypt/demos/demo_dynamic.py create mode 100644 dropbear/libtomcrypt/demos/ltcrypt.c create mode 100644 dropbear/libtomcrypt/demos/openssl-enc.c create mode 100644 dropbear/libtomcrypt/demos/sizes.c create mode 100644 dropbear/libtomcrypt/doc/Doxyfile rename dropbear/libtomcrypt/{ => doc}/crypt.tex (65%) create mode 100644 dropbear/libtomcrypt/doc/libtomsm.png create mode 100644 dropbear/libtomcrypt/doc/makefile create mode 100755 dropbear/libtomcrypt/helper.pl create mode 100644 dropbear/libtomcrypt/makefile.mingw create mode 100644 dropbear/libtomcrypt/makefile_include.mk create mode 100644 dropbear/libtomcrypt/notes/etc/NoekeonVects.java create mode 100644 dropbear/libtomcrypt/notes/rsa-testvectors/makefile create mode 100644 dropbear/libtomcrypt/notes/rsa-testvectors/oaep-int.txt create mode 100644 dropbear/libtomcrypt/notes/rsa-testvectors/oaep-vect.c create mode 100644 dropbear/libtomcrypt/notes/rsa-testvectors/oaep-vect.txt create mode 100644 dropbear/libtomcrypt/notes/rsa-testvectors/pkcs1v15crypt-vectors.c create mode 100644 dropbear/libtomcrypt/notes/rsa-testvectors/pkcs1v15crypt-vectors.txt create mode 100644 dropbear/libtomcrypt/notes/rsa-testvectors/pkcs1v15sign-vectors.c create mode 100644 dropbear/libtomcrypt/notes/rsa-testvectors/pkcs1v15sign-vectors.txt create mode 100644 dropbear/libtomcrypt/notes/rsa-testvectors/pss-int.txt create mode 100644 dropbear/libtomcrypt/notes/rsa-testvectors/pss-vect.c create mode 100644 dropbear/libtomcrypt/notes/rsa-testvectors/pss-vect.txt create mode 100644 dropbear/libtomcrypt/notes/rsa-testvectors/readme.txt create mode 100755 dropbear/libtomcrypt/notes/rsa-testvectors/rt.py create mode 100644 dropbear/libtomcrypt/printinfo.sh mode change 100644 => 100755 dropbear/libtomcrypt/run.sh create mode 100755 dropbear/libtomcrypt/scan_build.sh create mode 100644 dropbear/libtomcrypt/src/ciphers/camellia.c create mode 100644 dropbear/libtomcrypt/src/ciphers/multi2.c create mode 100644 dropbear/libtomcrypt/src/encauth/ccm/ccm_add_aad.c create mode 100644 dropbear/libtomcrypt/src/encauth/ccm/ccm_add_nonce.c create mode 100644 dropbear/libtomcrypt/src/encauth/ccm/ccm_done.c create mode 100644 dropbear/libtomcrypt/src/encauth/ccm/ccm_init.c create mode 100644 dropbear/libtomcrypt/src/encauth/ccm/ccm_process.c create mode 100644 dropbear/libtomcrypt/src/encauth/ccm/ccm_reset.c create mode 100644 dropbear/libtomcrypt/src/encauth/chachapoly/chacha20poly1305_add_aad.c create mode 100644 dropbear/libtomcrypt/src/encauth/chachapoly/chacha20poly1305_decrypt.c create mode 100644 dropbear/libtomcrypt/src/encauth/chachapoly/chacha20poly1305_done.c create mode 100644 dropbear/libtomcrypt/src/encauth/chachapoly/chacha20poly1305_encrypt.c create mode 100644 dropbear/libtomcrypt/src/encauth/chachapoly/chacha20poly1305_init.c create mode 100644 dropbear/libtomcrypt/src/encauth/chachapoly/chacha20poly1305_memory.c create mode 100644 dropbear/libtomcrypt/src/encauth/chachapoly/chacha20poly1305_setiv.c create mode 100644 dropbear/libtomcrypt/src/encauth/chachapoly/chacha20poly1305_setiv_rfc7905.c create mode 100644 dropbear/libtomcrypt/src/encauth/chachapoly/chacha20poly1305_test.c create mode 100644 dropbear/libtomcrypt/src/encauth/ocb3/ocb3_add_aad.c create mode 100644 dropbear/libtomcrypt/src/encauth/ocb3/ocb3_decrypt.c create mode 100644 dropbear/libtomcrypt/src/encauth/ocb3/ocb3_decrypt_last.c create mode 100644 dropbear/libtomcrypt/src/encauth/ocb3/ocb3_decrypt_verify_memory.c create mode 100644 dropbear/libtomcrypt/src/encauth/ocb3/ocb3_done.c create mode 100644 dropbear/libtomcrypt/src/encauth/ocb3/ocb3_encrypt.c create mode 100644 dropbear/libtomcrypt/src/encauth/ocb3/ocb3_encrypt_authenticate_memory.c create mode 100644 dropbear/libtomcrypt/src/encauth/ocb3/ocb3_encrypt_last.c create mode 100644 dropbear/libtomcrypt/src/encauth/ocb3/ocb3_init.c create mode 100644 dropbear/libtomcrypt/src/encauth/ocb3/ocb3_int_ntz.c create mode 100644 dropbear/libtomcrypt/src/encauth/ocb3/ocb3_int_xor_blocks.c create mode 100644 dropbear/libtomcrypt/src/encauth/ocb3/ocb3_test.c create mode 100644 dropbear/libtomcrypt/src/hashes/blake2b.c create mode 100644 dropbear/libtomcrypt/src/hashes/blake2s.c create mode 100644 dropbear/libtomcrypt/src/hashes/sha2/sha512_224.c create mode 100644 dropbear/libtomcrypt/src/hashes/sha2/sha512_256.c create mode 100644 dropbear/libtomcrypt/src/hashes/sha3.c create mode 100644 dropbear/libtomcrypt/src/hashes/sha3_test.c create mode 100644 dropbear/libtomcrypt/src/headers/tomcrypt_dropbear.h create mode 100644 dropbear/libtomcrypt/src/mac/blake2/blake2bmac.c create mode 100644 dropbear/libtomcrypt/src/mac/blake2/blake2bmac_file.c create mode 100644 dropbear/libtomcrypt/src/mac/blake2/blake2bmac_memory.c create mode 100644 dropbear/libtomcrypt/src/mac/blake2/blake2bmac_memory_multi.c create mode 100644 dropbear/libtomcrypt/src/mac/blake2/blake2bmac_test.c create mode 100644 dropbear/libtomcrypt/src/mac/blake2/blake2smac.c create mode 100644 dropbear/libtomcrypt/src/mac/blake2/blake2smac_file.c create mode 100644 dropbear/libtomcrypt/src/mac/blake2/blake2smac_memory.c create mode 100644 dropbear/libtomcrypt/src/mac/blake2/blake2smac_memory_multi.c create mode 100644 dropbear/libtomcrypt/src/mac/blake2/blake2smac_test.c create mode 100644 dropbear/libtomcrypt/src/mac/poly1305/poly1305.c create mode 100644 dropbear/libtomcrypt/src/mac/poly1305/poly1305_file.c create mode 100644 dropbear/libtomcrypt/src/mac/poly1305/poly1305_memory.c create mode 100644 dropbear/libtomcrypt/src/mac/poly1305/poly1305_memory_multi.c create mode 100644 dropbear/libtomcrypt/src/mac/poly1305/poly1305_test.c create mode 100644 dropbear/libtomcrypt/src/math/radix_to_bin.c create mode 100644 dropbear/libtomcrypt/src/math/rand_bn.c create mode 100644 dropbear/libtomcrypt/src/misc/adler32.c create mode 100644 dropbear/libtomcrypt/src/misc/compare_testvector.c create mode 100644 dropbear/libtomcrypt/src/misc/crc32.c create mode 100644 dropbear/libtomcrypt/src/misc/crypt/crypt_constants.c create mode 100644 dropbear/libtomcrypt/src/misc/crypt/crypt_inits.c create mode 100644 dropbear/libtomcrypt/src/misc/crypt/crypt_prng_rng_descriptor.c create mode 100644 dropbear/libtomcrypt/src/misc/crypt/crypt_register_all_ciphers.c create mode 100644 dropbear/libtomcrypt/src/misc/crypt/crypt_register_all_hashes.c create mode 100644 dropbear/libtomcrypt/src/misc/crypt/crypt_register_all_prngs.c create mode 100644 dropbear/libtomcrypt/src/misc/crypt/crypt_sizes.c create mode 100644 dropbear/libtomcrypt/src/misc/hkdf/hkdf.c create mode 100644 dropbear/libtomcrypt/src/misc/hkdf/hkdf_test.c create mode 100644 dropbear/libtomcrypt/src/misc/mem_neq.c create mode 100644 dropbear/libtomcrypt/src/misc/pk_get_oid.c create mode 100644 dropbear/libtomcrypt/src/misc/pkcs5/pkcs_5_test.c create mode 100644 dropbear/libtomcrypt/src/modes/xts/xts_decrypt.c create mode 100644 dropbear/libtomcrypt/src/modes/xts/xts_done.c create mode 100644 dropbear/libtomcrypt/src/modes/xts/xts_encrypt.c create mode 100644 dropbear/libtomcrypt/src/modes/xts/xts_init.c create mode 100644 dropbear/libtomcrypt/src/modes/xts/xts_mult_x.c create mode 100644 dropbear/libtomcrypt/src/modes/xts/xts_test.c create mode 100644 dropbear/libtomcrypt/src/pk/asn1/der/bit/der_decode_raw_bit_string.c create mode 100644 dropbear/libtomcrypt/src/pk/asn1/der/bit/der_encode_raw_bit_string.c create mode 100644 dropbear/libtomcrypt/src/pk/asn1/der/generalizedtime/der_decode_generalizedtime.c create mode 100644 dropbear/libtomcrypt/src/pk/asn1/der/generalizedtime/der_encode_generalizedtime.c create mode 100644 dropbear/libtomcrypt/src/pk/asn1/der/generalizedtime/der_length_generalizedtime.c create mode 100644 dropbear/libtomcrypt/src/pk/asn1/der/sequence/der_decode_subject_public_key_info.c create mode 100644 dropbear/libtomcrypt/src/pk/asn1/der/sequence/der_encode_subject_public_key_info.c create mode 100644 dropbear/libtomcrypt/src/pk/asn1/der/sequence/der_sequence_shrink.c create mode 100644 dropbear/libtomcrypt/src/pk/asn1/der/teletex_string/der_decode_teletex_string.c create mode 100644 dropbear/libtomcrypt/src/pk/asn1/der/teletex_string/der_length_teletex_string.c create mode 100644 dropbear/libtomcrypt/src/pk/dh/dh.c create mode 100644 dropbear/libtomcrypt/src/pk/dh/dh_check_pubkey.c create mode 100644 dropbear/libtomcrypt/src/pk/dh/dh_export.c create mode 100644 dropbear/libtomcrypt/src/pk/dh/dh_export_key.c create mode 100644 dropbear/libtomcrypt/src/pk/dh/dh_free.c create mode 100644 dropbear/libtomcrypt/src/pk/dh/dh_generate_key.c create mode 100644 dropbear/libtomcrypt/src/pk/dh/dh_import.c create mode 100644 dropbear/libtomcrypt/src/pk/dh/dh_set.c create mode 100644 dropbear/libtomcrypt/src/pk/dh/dh_set_pg_dhparam.c create mode 100644 dropbear/libtomcrypt/src/pk/dh/dh_shared_secret.c create mode 100644 dropbear/libtomcrypt/src/pk/dsa/dsa_generate_key.c create mode 100644 dropbear/libtomcrypt/src/pk/dsa/dsa_generate_pqg.c create mode 100644 dropbear/libtomcrypt/src/pk/dsa/dsa_set.c create mode 100644 dropbear/libtomcrypt/src/pk/dsa/dsa_set_pqg_dsaparam.c create mode 100644 dropbear/libtomcrypt/src/pk/rsa/rsa_get_size.c create mode 100644 dropbear/libtomcrypt/src/pk/rsa/rsa_import_pkcs8.c create mode 100644 dropbear/libtomcrypt/src/pk/rsa/rsa_import_x509.c create mode 100644 dropbear/libtomcrypt/src/pk/rsa/rsa_set.c create mode 100644 dropbear/libtomcrypt/src/pk/rsa/rsa_sign_saltlen_get.c create mode 100644 dropbear/libtomcrypt/src/prngs/chacha20.c create mode 100644 dropbear/libtomcrypt/src/stream/chacha/chacha_crypt.c create mode 100644 dropbear/libtomcrypt/src/stream/chacha/chacha_done.c create mode 100644 dropbear/libtomcrypt/src/stream/chacha/chacha_ivctr32.c create mode 100644 dropbear/libtomcrypt/src/stream/chacha/chacha_ivctr64.c create mode 100644 dropbear/libtomcrypt/src/stream/chacha/chacha_keystream.c create mode 100644 dropbear/libtomcrypt/src/stream/chacha/chacha_setup.c create mode 100644 dropbear/libtomcrypt/src/stream/chacha/chacha_test.c create mode 100644 dropbear/libtomcrypt/src/stream/rc4/rc4_stream.c create mode 100644 dropbear/libtomcrypt/src/stream/rc4/rc4_test.c create mode 100644 dropbear/libtomcrypt/src/stream/sober128/sober128_stream.c create mode 100644 dropbear/libtomcrypt/src/stream/sober128/sober128_test.c create mode 100644 dropbear/libtomcrypt/src/stream/sober128/sober128tab.c mode change 100644 => 100755 dropbear/libtomcrypt/testbuild.sh mode change 100644 => 100755 dropbear/libtomcrypt/testme.sh create mode 100644 dropbear/libtomcrypt/tests/base64_test.c create mode 100644 dropbear/libtomcrypt/tests/cipher_hash_test.c create mode 100644 dropbear/libtomcrypt/tests/common.c create mode 100644 dropbear/libtomcrypt/tests/common.h create mode 100644 dropbear/libtomcrypt/tests/der_test.c create mode 100644 dropbear/libtomcrypt/tests/dh_test.c create mode 100644 dropbear/libtomcrypt/tests/dsa_test.c create mode 100644 dropbear/libtomcrypt/tests/ecc_test.c create mode 100644 dropbear/libtomcrypt/tests/file_test.c create mode 100644 dropbear/libtomcrypt/tests/katja_test.c create mode 100644 dropbear/libtomcrypt/tests/mac_test.c create mode 100644 dropbear/libtomcrypt/tests/misc_test.c create mode 100644 dropbear/libtomcrypt/tests/modes_test.c create mode 100644 dropbear/libtomcrypt/tests/mpi_test.c create mode 100644 dropbear/libtomcrypt/tests/multi_test.c create mode 100644 dropbear/libtomcrypt/tests/no_prng.c create mode 100644 dropbear/libtomcrypt/tests/pkcs_1_eme_test.c create mode 100644 dropbear/libtomcrypt/tests/pkcs_1_emsa_test.c create mode 100644 dropbear/libtomcrypt/tests/pkcs_1_oaep_test.c create mode 100644 dropbear/libtomcrypt/tests/pkcs_1_pss_test.c create mode 100644 dropbear/libtomcrypt/tests/pkcs_1_test.c create mode 100644 dropbear/libtomcrypt/tests/prng_test.c create mode 100644 dropbear/libtomcrypt/tests/rotate_test.c create mode 100644 dropbear/libtomcrypt/tests/rsa_test.c create mode 100644 dropbear/libtomcrypt/tests/store_test.c create mode 100644 dropbear/libtomcrypt/tests/test.c create mode 100644 dropbear/libtomcrypt/tests/test.der create mode 100644 dropbear/libtomcrypt/tests/test.key create mode 100644 dropbear/libtomcrypt/tests/test_dsa.key create mode 100644 dropbear/libtomcrypt/tests/tomcrypt_test.h mode change 100644 => 100755 dropbear/libtomcrypt/updatemakes.sh create mode 100644 dropbear/libtommath/README.md create mode 100644 dropbear/libtommath/bn_mp_export.c create mode 100644 dropbear/libtommath/bn_mp_expt_d_ex.c create mode 100644 dropbear/libtommath/bn_mp_get_long.c create mode 100644 dropbear/libtommath/bn_mp_get_long_long.c create mode 100644 dropbear/libtommath/bn_mp_import.c create mode 100644 dropbear/libtommath/bn_mp_n_root_ex.c create mode 100644 dropbear/libtommath/bn_mp_set_long.c create mode 100644 dropbear/libtommath/bn_mp_set_long_long.c create mode 100644 dropbear/libtommath/bn_mp_sqrtmod_prime.c create mode 100644 dropbear/libtommath/callgraph.txt create mode 100755 dropbear/libtommath/filter.pl create mode 100755 dropbear/libtommath/genlist.sh create mode 100644 dropbear/libtommath/makefile_include.mk create mode 100755 dropbear/libtommath/parsenames.pl create mode 100755 dropbear/libtommath/testme.sh create mode 100644 dropbear/libtommath/tommath_private.h create mode 100755 dropbear/libtommath/updatemakes.sh create mode 100644 dropbear/netio.c create mode 100644 dropbear/netio.h diff --git a/dropbear/.hg_archival.txt b/dropbear/.hg_archival.txt index 3aba24e..42ef304 100644 --- a/dropbear/.hg_archival.txt +++ b/dropbear/.hg_archival.txt @@ -1,5 +1,6 @@ repo: d7da3b1e15401eb234ec866d5eac992fc4cd5878 -node: 735511a4c761141416ad0e6728989d2dafa55bc2 +node: d2753238f35f2f80507d1241f03639a20285ef46 branch: default -latesttag: DROPBEAR_2014.65 -latesttagdistance: 12 +latesttag: DROPBEAR_2019.78 +latesttagdistance: 2 +changessincelatesttag: 2 diff --git a/dropbear/.hgsigs b/dropbear/.hgsigs index 379ee64..ea2b1dc 100644 --- a/dropbear/.hgsigs +++ b/dropbear/.hgsigs @@ -12,3 +12,17 @@ a50a1dc743317fad9b3737bc68fbca640659bb6d 0 iEYEABECAAYFAlJeqL0ACgkQjPn4sExkf7yVq 277429102f1337bd10c89107d3e01de509cc1a7e 0 iEYEABECAAYFAlMEvF4ACgkQjPn4sExkf7xeVQCgtbxJ4G3hsFwUOM0K1WGr1J2vsbEAoMM8dEyr1mdrbgO1tzNLfD1nxbyn 96584b934d04ebab443f603e78d38fe692d36313 0 iEYEABECAAYFAlPVFrQACgkQjPn4sExkf7xr6ACglRiLE21vRrS1rJ809o2yMADIKtwAn1f5SyZUngSde8eE55JxCMwtMC5m caac692b366c153cea0e9cd59aa2d79a7d843d4e 0 iEYEABECAAYFAlPk1mcACgkQjPn4sExkf7wLpgCeOqMYqpkf4lYUuyrn9VYThNpc7PkAn3JOSNgIqkKUcmSy6FstrI8jwJzq +2d421bc0545d1be6d59a4ebfe61606d94b124b0c 0 iEYEABECAAYFAlRJDCQACgkQjPn4sExkf7xUYACcCwVJkYWXJn5x/D5A+qMupy778lEAn0rg1oNiq96YU/4jOPsS5IMItihu +1d2d81b1b7c1b100e9c369e40b9fa5b2d491eea9 0 iEYEABECAAYFAlTKOKUACgkQjPn4sExkf7xWMACfYFozyHiRk5GaocTa5z6Ws1uyB4kAoLubxoxcnM3E7AA9mHAzc3OB5M0Y +a687f835236c7025b5cb2968fe9c4ebc4a49f0ea 0 iQIcBAABCgAGBQJVxg62AAoJEPSYMBLCC7qsC+EQAKw8YWogrVHhIFct2fx/nqybSPVrhFyKFKHhq7K/lZeVm0MGIWdSyVcQgP+Hs2jWNBWzG4AJ1BtifHWQH6IDh7W5RuwOXu5KobgPW9BsN3EVE9KIR+xe9jCAmFl9rIw0tNpy1q6R0TpYXx/sWlMilxecyEGyr2Ias2Sm19aY2mOEv8PLfh9BLfrJEKtt2NxL7TX8ScPwJXJMmVIQjN9WK4Ptx3tjcGNRivEVR/dftP5sJx2DBJx9avyDqrfloMW7Q7sPgJ88MPruCDxedOkbzH7JdHe3Humr2G4LsI0KPU7pNN6EBDjhJ+SVXuOyAgu5j/C0R+0ggGfjSrjDu8WjHyclFlwwu2MSGuHf111I1qkLtaRY3H1FZO5Y2gbLwBLQ82svA4klcBIxtP5jKAZDTh1jQMYsfKotvZdawOWrPDkNmKoUg2JXLHAtj9Dd0uGIhqfspZY3qlpzxw9uCkljWclUBD097ygotwAb2XdLoAWZ3KdvoPM+k448vIAQ7Q/aqcnm/dLQJr3Le029gpkOKoWKaQTlk0itrRGpgETHAhE2LnmWxYSKp6NYSKMgEONbfDiVNLyDTOlvpPiEb20RsOP64xA4wVDGmPenCURmMYoepQK6oJdtkNtCdth2S49KxPQAC+Dem4YZ7b+5b+cXrK5Nz7elBxZzRQWdjmZ4JDQK +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 diff --git a/dropbear/.hgtags b/dropbear/.hgtags deleted file mode 100644 index e550362..0000000 --- a/dropbear/.hgtags +++ /dev/null @@ -1,47 +0,0 @@ -03f65e461915a940939e4cc689fc89721ffc40de DROPBEAR_0.48.1 -0f967bfef5cd0056b7ec60e2305d917e51cbf30d DROPBEAR_0.44 -170329dc8ce5dfcf6298e1ad6699f109bf78e73d DROPBEAR_0.51 -1dbd2473482f320ea59f76ce961385cb3a0150a9 DROPBEAR_0.46 -2098857ab826dd42ae05a9a22c3ce2cc835b9844 DROPBEAR_0.45 -36160290a1b27451178be36752ed038840f59cdd LTC_DB_0.46 -39d5d58461d6e93337636e69d4cdf184a09c8d24 LTC_1.05 -55a99934db873be2e63b5968fb6532e5d9bd02e4 DROPBEAR_0.48 -59400faa4b44708c5d0b595e81193bc621e752d3 libtomcrypt-1.05 -66087d87c3555c78b47cf01f32bb5a32054c3ceb DROPBEAR_0.44test4 -677843bfa734238a67636b461a02c110c462ffaf DROPBEAR_0.44test1 -7faae8f46238e23975430876547b8950b4e75481 t:ltc-0.95-orig -8220862baae829ebc762587b99c662480d57bb23 DROPBEAR_0.53 -86e0b50a9b588239c3fc9cc9cfe255ef586df17b ltm-0.30-orig -88e0a1ad951add46b795511dc2698e36b4aee922 DROPBEAR_0.44test3 -8e94663164c6e106ccc5c9e997dedf6e04d77dd2 LTM_DB_0.44 -91fbc376f01084037cd5f6a5bf2e2db4903e8e99 libtommath-0.35 -97db060d0ef5f8cf8e67eb602ef037055a185ca9 libtommath-0.40 -aa2f51a6b81d33de5e9898a7f27c792a173d9b26 DROPBEAR_0.53.1 -ab370c629d363f8c9a3eca512bfa86e362034654 DROPBEAR_0.49 -c2ac796b130eeb6fa840873d8c230544c8ec7e4b DROPBEAR_0.44test2 -cd1143579f00b0248c79f63ca70efee4a35a57e8 LTC_DB_0.44 -ce104c8b0be1ff3f2c2590b7cdc3fd6870c865cd DROPBEAR_0.52 -d5faf4814ddbc5abd9e209409bb9e7a4686c8cd7 libtomcrypt-1.16 -d7da3b1e15401eb234ec866d5eac992fc4cd5878 t:ltc-0.95-db-merge1 -d8254fc979e99560c93ca2cece77a6df31927ea5 LTM_0.35 -e109027b9edfb02f0bdf96ec45bb1cd9ad41e7da LTM_DB_0.46 -e109027b9edfb02f0bdf96ec45bb1cd9ad41e7da LTM_DB_0.47 -e37b160c414cab6466622f63b0c4dcbf6ebc47a9 DROPBEAR_0.47 -e430a26064ee86ab79aef372118d6d03b2441996 DROPBEAR_0.50 -e5d119ea4c63656bc54ecfd865d04591ac2ed225 LTC_DB_0.47 -3f12086c2ef2b9ffe36a822fdb3ff647fcec1831 DROPBEAR_2011.54 -d354464b2aa6f6ba0bf44d43bcae5aa798435393 DROPBEAR_2012.55 -7faae8f46238e23975430876547b8950b4e75481 t:ltc-0.95-orig -0000000000000000000000000000000000000000 t:ltc-0.95-orig -d7da3b1e15401eb234ec866d5eac992fc4cd5878 t:ltc-0.95-db-merge1 -0000000000000000000000000000000000000000 t:ltc-0.95-db-merge1 -1b8b2b9d6e94bc3cc5e61b620476ea36cc466e1b DROPBEAR_2013.56 -96b8bcb88017815040949a417caa55686271e8a9 DROPBEAR_2013.57 -e76614145aea67f66e4a4257685c771efba21aa1 DROPBEAR_2013.58 -7b68e581985fd4ea50869f8608ab95cda5d17876 DROPBEAR_2013.59 -a50a1dc743317fad9b3737bc68fbca640659bb6d DROPBEAR_2013.60 -e894dbc015ba7ff4c3bf897ee20e28ca90c55a16 DROPBEAR_2013.61test -3d1d7d151c0ce3a79da62e86463f5632fa2b144a DROPBEAR_2013.62 -2351b2da8e0d08dcc6e64fcc328b53b9630bda68 DROPBEAR_2014.63 -0d2d39957c029adb7f4327d37fe6b4900f0736d9 DROPBEAR_2014.64 -e9579816f20ea85affc6135e87f8477992808948 DROPBEAR_2014.65 diff --git a/dropbear/.travis.yml b/dropbear/.travis.yml index 7e5302a..9bcbce4 100644 --- a/dropbear/.travis.yml +++ b/dropbear/.travis.yml @@ -1,20 +1,66 @@ language: c -compiler: - - gcc -script: - - autoconf && autoheader && ./configure $BUNDLEDLIBTOM CFLAGS="-O2 -Wall -Wno-pointer-sign" --prefix=$HOME/inst && make install +git: + depth: 3 + +matrix: + include: + # subsequent matrix options use these first settings + - os: linux + compiler: gcc + env: WEXTRAFLAGS=-Werror + sudo: false + - env: MULTI=1 WEXTRAFLAGS=-Werror + # libtom has some warnings, so no WEXTRAFLAGS + - env: CONFIGURE_FLAGS=--enable-bundled-libtom WEXTRAFLAGS="" + - env: NOWRITEV=1 WEXTRAFLAGS=-Werror + # libtomcrypt 1.18.1 fixes clang problems, distro doesn't have that yet + - os: linux + compiler: clang + env: CONFIGURE_FLAGS=--enable-bundled-libtom WEXTRAFLAGS="" + - os: osx + compiler: clang + env: WEXTRAFLAGS="" + + # Note: the fuzzing malloc wrapper doesn't replace free() in system libtomcrypt, so need bundled. + - env: DO_FUZZ=1 CONFIGURE_FLAGS="--enable-fuzz --disable-harden --enable-bundled-libtom" WEXTRAFLAGS="" LDFLAGS=-fsanitize=address EXTRACFLAGS=-fsanitize=address CXX=clang++ + compiler: clang + # sanitizers need ptrace which is privileged https://github.com/travis-ci/travis-ci/issues/9033 + sudo: required + +# container-based builds +addons: + apt: + packages: + # packages list: https://github.com/travis-ci/apt-package-whitelist/blob/master/ubuntu-precise + - zlib1g-dev + - libtomcrypt-dev + - libtommath-dev + - mercurial + +before_install: + - if [ "$CC" = "clang" ]; then WEXTRAFLAGS="$WEXTRAFLAGS -Wno-error=incompatible-library-redeclaration" ; fi # workaround + +install: + - autoconf + - autoheader + - ./configure $CONFIGURE_FLAGS CFLAGS="-O2 -Wall -Wno-pointer-sign $WEXTRAFLAGS $EXTRACFLAGS" --prefix="$HOME/inst" || (cat config.log; exit 1) + - if [ "$NOWRITEV" = "1" ]; then sed -i -e s/HAVE_WRITEV/DONT_HAVE_WRITEV/ config.h ; fi + - make -j3 + - test -z $DO_FUZZ || make fuzzstandalone + # avoid concurrent install, osx/freebsd is racey (https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=208093) + - make install + +script: - ~/inst/bin/dropbearkey -t rsa -f testrsa - ~/inst/bin/dropbearkey -t dss -f testdss - ~/inst/bin/dropbearkey -t ecdsa -f testec256 -s 256 - ~/inst/bin/dropbearkey -t ecdsa -f testec384 -s 384 - ~/inst/bin/dropbearkey -t ecdsa -f testec521 -s 521 + - test -z $DO_FUZZ || ./fuzzers_test.sh -before_install: - - sudo apt-get update -qq - - sudo apt-get install -qq libz-dev libtomcrypt-dev libtommath-dev +branches: + only: + - master + - coverity -env: - - BUNDLEDLIBTOM=--disable-bundled-libtom - - BUNDLEDLIBTOM=--enable-bundled-libtom - - MULTI=1 diff --git a/dropbear/CHANGES b/dropbear/CHANGES index 21d42ca..1af3f1e 100644 --- a/dropbear/CHANGES +++ b/dropbear/CHANGES @@ -1,3 +1,363 @@ +2019.78 - 27 March 2019 + +- Fix dbclient regression in 2019.77. After exiting the terminal would be left + in a bad state. Reported by Ryan Woodsmall + +2019.77 - 23 March 2019 + +- Fix server -R option with ECDSA - only advertise one key size which will be accepted. + Reported by Peter Krefting, 2018.76 regression. + +- Fix server regression in 2018.76 where multiple client -R forwards were all forwarded + to the first destination. Reported by Iddo Samet. + +- Make failure delay more consistent to avoid revealing valid usernames, set server password + limit of 100 characters. Problem reported by usd responsible disclosure team + +- Change handling of failed authentication to avoid disclosing valid usernames, + CVE-2018-15599. + +- Fix dbclient to reliably return the exit code from the remote server. + Reported by W. Mike Petullo + +- Fix export of 521-bit ECDSA keys, from Christian Hohnstädt + +- Add -o Port=xxx option to work with sshfs, from xcko + +- Merged fuzzing code, see FUZZER-NOTES.md + +- Add a DROPBEAR_SVR_MULTIUSER=0 compile option to run on + single-user Linux kernels (CONFIG_MULTIUSER disabled). From Patrick Stewart + +- Increase allowed username to 100 characters, reported by W. Mike Petullo + +- Update config.sub and config.guess, should now work with RISC-V + +- Cygwin compile fix from karel-m + +- Don't require GNU sed (accidentally in 2018.76), reported by Samuel Hsu + +- Fix for IRIX and writev(), reported by Kazuo Kuroi + +- Other fixes and cleanups from François Perrad, Andre McCurdy, Konstantin Demin, + Michael Jones, Pawel Rapkiewicz + + +2018.76 - 27 February 2018 + +> > > Configuration/compatibility changes + IMPORTANT + Custom configuration is now specified in localoptions.h rather than options.h + Available options and defaults can be seen in default_options.h + + To migrate your configuration, compare your customised options.h against the + upstream options.h from your relevant version. Any customised options should + be put in localoptions.h in the build directory. + +- "configure --enable-static" should now be used instead of "make STATIC=1" + This will avoid 'hardened build' flags that conflict with static binaries + +- Set 'hardened build' flags by default if supported by the compiler. + These can be disabled with configure --disable-harden if needed. + -Wl,-pie + -Wl,-z,now -Wl,-z,relro + -fstack-protector-strong + -D_FORTIFY_SOURCE=2 + # spectre v2 mitigation + -mfunction-return=thunk + -mindirect-branch=thunk + + Spectre patch from Loganaden Velvindron + +- "dropbear -r" option for hostkeys no longer attempts to load the default + hostkey paths as well. If desired these can be specified manually. + Patch from CamVan Nguyen + +- group1-sha1 key exchange is disabled in the server by default since + the fixed 1024-bit group may be susceptible to attacks + +- twofish ciphers are now disabled in the default configuration + +- Default generated ECDSA key size is now 256 (rather than 521) + for better interoperability + +- Minimum RSA key length has been increased to 1024 bits + +> > > Other features and fixes + +- Add runtime -T max_auth_tries option from Kevin Darbyshire-Bryant + +- Add 'dbclient -J &fd' to allow dbclient to connect over an existing socket. + See dbclient manpage for a socat example. Patch from Harald Becker + +- Add "-c forced_command" option. Patch from Jeremy Kerr + +- Restricted group -G option added with patch from stellarpower + +- Support server-chosen TCP forwarding ports, patch from houseofkodai + +- Allow choosing outgoing address for dbclient with -b [bind_address][:bind_port] + Patch from houseofkodai + +- Makefile will now rebuild object files when header files are modified + +- Add group14-256 and group16 key exchange options + +- curve25519-sha256 also supported without @libssh.org suffix + +- Update bundled libtomcrypt to 1.18.1, libtommath to 1.0.1 + This fixes building with some recent versions of clang + +- Set PAM_RHOST which is needed by modules such as pam_abl + +- Improvements to DSS and RSA public key validation, found by OSS-Fuzz. + +- Don't exit when an authorized_keys file has malformed entries. Found by OSS-Fuzz + +- Fix null-pointer crash with malformed ECDSA or DSS keys. Found by OSS-Fuzz + +- Numerous code cleanups and small issues fixed by Francois Perrad + +- Test for pkt_sched.h rather than SO_PRIORITY which was problematic with some musl + platforms. Reported by Oliver Schneider and Andrew Bainbridge + +- Fix some platform portability problems, from Ben Gardner + +- Add EXEEXT filename suffix for building dropbearmulti, from William Foster + +- Support --enable-