Subject: Re: MD5_CTX define clash (md5.h)
To: None <firstname.lastname@example.org>
From: Frederick Bruckman <email@example.com>
Date: 07/01/2003 10:36:20
On Tue, 1 Jul 2003 firstname.lastname@example.org wrote:
> >> FreeBSD's /usr/include/openssl/evp.h has
> >> #ifndef OPENSSL_NO_MD5
> >> #include <openssl/md5.h>
> >> #endif
> >> NetBSD's /usr/include/openssl/evp.h does not.
> >> The ntp configure makes use of OPENSSL_NO_MD5. But I find this a little odd.
> we have removed most of #ifndef statements in openssl include files, as
> they change ABI declared in header files (= bombs after linking to
If you use it build a libcrypto without md5, yes, but the exported
headers are not only for building the library... They were using it to
hide MD5_CTX, so as to work around the (API) namespace collision with
> as for /usr/include/md5.h and /usr/include/openssl/md5.h, well...
> former one is for libc, and latter one is for libcrypto.
Indeed, it's more elegant not to include openssl-anything in any file
that uses libc's md5 routines. (This is what ntp does now.)