mbedtls/library
Hanno Becker a5cedbcd3f Introduce MD handle type
As has been previously done for ciphersuites, this commit introduces
a zero-cost abstraction layer around the type

  mbedtls_md_info const *

whose valid values represent implementations of message digest algorithms.

Access to a particular digest implementation can be requested by name or
digest ID through the API mbedtls_md_info_from_xxx(), which either returns
a valid implementation or NULL, representing failure.

This commit replaces such uses of `mbedtls_md_info const *` by an abstract
type `mbedtls_md_handle_t` whose valid values represent digest implementations,
and which has a designated invalid value MBEDTLS_MD_INVALID_HANDLE.

The purpose of this abstraction layer is to pave the way for builds which
support precisely one digest algorithm. In this case, mbedtls_md_handle_t
can be implemented as a two-valued type, with one value representing the
invalid handle, and the unique valid value representing the unique enabled
digest.
2019-09-09 09:45:57 +01:00
..
.gitignore
aes.c
aesni.c
arc4.c
aria.c
asn1parse.c
asn1write.c
base64.c
bignum.c
blowfish.c
camellia.c
ccm.c
certs.c Fixup certs.c: Remove redundant TinyCrypt guard 2019-09-04 16:19:49 +01:00
chacha20.c
chachapoly.c
cipher_wrap.c
cipher.c
cmac.c
CMakeLists.txt
ctr_drbg.c
debug.c
des.c
dhm.c
ecdh.c
ecdsa.c Introduce MD handle type 2019-09-09 09:45:57 +01:00
ecjpake.c Introduce MD handle type 2019-09-09 09:45:57 +01:00
ecp_curves.c
ecp.c
entropy_poll.c
entropy.c
error.c
gcm.c
havege.c
hkdf.c Introduce MD handle type 2019-09-09 09:45:57 +01:00
hmac_drbg.c Introduce MD handle type 2019-09-09 09:45:57 +01:00
Makefile Clean generated *.su file and gitignore them 2019-07-30 16:56:58 +02:00
md2.c
md4.c
md5.c
md_wrap.c Implement NO_SHA224 in MD layer as well 2019-09-09 10:21:30 +02:00
md.c Introduce MD handle type 2019-09-09 09:45:57 +01:00
memory_buffer_alloc.c
net_sockets.c
nist_kw.c
oid.c Fixup: Add missing TinyCrypt guards 2019-09-04 16:17:45 +01:00
padlock.c
pem.c
pk_wrap.c Fixup TinyCrypt PK wrap: Check TinyCrypt signature return code 2019-09-04 16:19:49 +01:00
pk.c Introduce MD handle type 2019-09-09 09:45:57 +01:00
pkcs5.c Introduce MD handle type 2019-09-09 09:45:57 +01:00
pkcs11.c Introduce MD handle type 2019-09-09 09:45:57 +01:00
pkcs12.c Introduce MD handle type 2019-09-09 09:45:57 +01:00
pkparse.c Fixup TinyCrypt PK parse: Correct function name in comment 2019-09-04 16:19:49 +01:00
pkwrite.c Fixup: Add missing TinyCrypt guards 2019-09-04 16:17:45 +01:00
platform_util.c
platform.c
poly1305.c
ripemd160.c
rsa_internal.c
rsa.c Introduce MD handle type 2019-09-09 09:45:57 +01:00
sha1.c
sha256.c Completely ignore is224 if SHA-224 is disabled 2019-09-09 10:21:30 +02:00
sha512.c
ssl_cache.c Remove compression field from SSL session if compression disabled 2019-08-01 10:11:20 +02:00
ssl_ciphersuites.c Fixup: Add missing TinyCrypt guards 2019-09-04 16:17:45 +01:00
ssl_cli.c TinyCrypt ECDHE-PSK: Implement ClientKeyExchange writing 2019-09-04 16:19:49 +01:00
ssl_cookie.c Remove dependency of ssl_cookie on SHA-224 2019-09-09 10:21:30 +02:00
ssl_srv.c TinyCrypt ECDHE-PSK: Implement CliKeyExchange parsing 2019-09-04 16:19:49 +01:00
ssl_ticket.c
ssl_tls.c Introduce MD handle type 2019-09-09 09:45:57 +01:00
threading.c
timing.c
version_features.c Add MBEDTLS_SHA256_NO_SHA244 option (unimplemented) 2019-09-09 09:06:56 +02:00
version.c
x509_create.c
x509_crl.c
x509_crt.c Introduce MD handle type 2019-09-09 09:45:57 +01:00
x509_csr.c
x509.c Introduce MD handle type 2019-09-09 09:45:57 +01:00
x509write_crt.c
x509write_csr.c
xtea.c