* Fix testing against reference crypto implementation
Build would fail on CI if using cyassl/wolfssl or polarssl/mbedtls as a
backend and testing it against reference openssl implementation due to
missing include directories, but only if bundled (non-system) b64 is
used.
* Iniitalize size arguments to `wc_DhGenerateKeyPair`
Despite it not being mentioned in the documentation [1] and v4.6 release
notes [2], the two size parameters became [3] not purely "out", but
"in/out", to avoid potential buffer overflows.
[1] https://www.wolfssl.com/documentation/manuals/wolfssl/group__Diffie-Hellman.html
[2] https://github.com/wolfSSL/wolfssl/releases/tag/v4.6.0-stable
[3] 4364700c01
* Add basic support for v2 hashes in transmission-show
* Add sha256 for more libraries
* Fix issue with sha256 digest length
* Add sha256 for polarssl
Note: Bumping miniumum PolarSSL version to 1.3 because of
sha2->sha256 name change.
* Add sha256 for CommonCrypto/ccrypto
* Add sha256 for cyassl
* refactor: encapsulate request tracking in a class
Introduces a new class to peer-mgr, `ClientRequests`, which tracks what
active requests we've got pending: which blocks, when the requests were
sent, and who they were sent to.
This shouldn't change peer-mgr behavior. Its goal is to carve out some
of peer-mgr's data structures and encapsulte them behind an API that's
simpler to understand.
* refactor: move ActiveRequests to its own file
* perf: avoid duplicate call to tr_cpMissingBlocksInPiece
* refactor: fix uninit var warnings in ptrarray
* refactor: fix uninit var warnings in bitfield
* refactor: fix uninit var warnings in handshake
* refactor: fix uninit var warnings in tr-dht
* refactor: fix uninit var warnings in natpmp
* refactor: fix uninit var warnings in tr-dht
* refactor: fix uninit var warnings in crypto-utils-openssl
* refactor: fix uninit var warnings in handshake
* refactor: fix uninit var warnings in crypto-utils
* refactor: fix uninit var warnings in crypto
* Revert "refactor: fix uninit var warnings in handshake"
This reverts commit 5aaa9cc30a.
* refactor: fix uninit var warnings in crypto-utils-ccrypto
* refactor: fix uninit var warnings in crypto-utils-polarssl
* refactor: fix uninit var warnings in crypto-utils-cyassl
* fixup! refactor: fix uninit var warnings in crypto-utils-cyassl
* fixup! refactor: cppcoreguidelines-init-variables pt. 13 (#2043)
* refactor: [[maybe_unused]] iff arg _might_ be used
If the arg is never used, comment out its name.
If the arg is _sometimes_ used e.g. with ifdefs, use [[maybe_unused]].
wolfSSL's fastmath support requires options.h to be included before
anything else. Otherwise bad codepaths get taken and a crash occurs
during DH initialization.
Signed-off-by: Rosen Penev <rosenp@gmail.com>
Port libtransmission to C++. This PR doesn't refactor everything to c++.
Its code changes are only what was necessary to compile and link as c++.
See libtransmission/README.md for details on how to submit modernization
patches!
Co-authored-by: Mike Gelfand <mikedld@mikedld.com>
2021-09-12 12:41:49 -05:00
Renamed from libtransmission/crypto-utils-cyassl.c (Browse further)