]> git.ipfire.org Git - thirdparty/bind9.git/commit
Stop leaking OpenSSL types and defines in the isc/md.h
authorOndřej Surý <ondrej@isc.org>
Thu, 12 Mar 2020 09:20:37 +0000 (10:20 +0100)
committerOndřej Surý <ondrej@isc.org>
Tue, 28 Apr 2020 13:24:07 +0000 (15:24 +0200)
commitc22c8cb0e1b561faa74d93bc29f8a7382e895749
tree51b6edb5a4add9da1e0dd4eefdf9c7d10289aec1
parentd4b002cac750b3ff5d9e85484b797eb28771adef
Stop leaking OpenSSL types and defines in the isc/md.h

The <isc/md.h> header directly included <openssl/evp.h> header which
enforced all users of the libisc library to explicitly list the include
path to OpenSSL and link with -lcrypto.  By hiding the specific
implementation into the private namespace, we no longer enforce this.
In the long run, this might also allow us to switch cryptographic
library implementation without affecting the downstream users.

While making the isc_md_type_t type opaque, the API using the data type
was changed to use the pointer to isc_md_type_t instead of using the
type directly.

(cherry picked from commit 4e114f8ed653700f411f29bf9e87392d8f4ff9db)
lib/dns/ds.c
lib/dns/hmac_link.c
lib/isc/hmac.c
lib/isc/include/isc/hmac.h
lib/isc/include/isc/md.h
lib/isc/md.c
lib/isc/tests/hmac_test.c
lib/isc/tests/md_test.c
lib/isc/win32/libisc.def.in
lib/isccc/cc.c