Michael Cronenworth mike@cchtml.com writes:
I thought about adding a version check around the function, but I figured a configure check would be cleaner. Is removing the configure check and adding a version check (< GnuTLS 2.10) in secur32 acceptable?
No, you shouldn't need that. Something like this should be enough:
diff --git a/dlls/secur32/schannel_gnutls.c b/dlls/secur32/schannel_gnutls.c index b10b62993326..bcadd47e7aaf 100644 --- a/dlls/secur32/schannel_gnutls.c +++ b/dlls/secur32/schannel_gnutls.c @@ -42,7 +42,7 @@ WINE_DEFAULT_DEBUG_CHANNEL(secur32); WINE_DECLARE_DEBUG_CHANNEL(winediag);
/* Not present in gnutls version < 2.9.10. */ -extern int gnutls_cipher_get_block_size(gnutls_cipher_algorithm_t algorithm); +static int (*pgnutls_cipher_get_block_size)(gnutls_cipher_algorithm_t algorithm);
static void *libgnutls_handle; #define MAKE_FUNCPTR(f) static typeof(f) * p##f @@ -52,7 +52,6 @@ MAKE_FUNCPTR(gnutls_certificate_allocate_credentials); MAKE_FUNCPTR(gnutls_certificate_free_credentials); MAKE_FUNCPTR(gnutls_certificate_get_peers); MAKE_FUNCPTR(gnutls_cipher_get); -MAKE_FUNCPTR(gnutls_cipher_get_block_size); MAKE_FUNCPTR(gnutls_cipher_get_key_size); MAKE_FUNCPTR(gnutls_credentials_set); MAKE_FUNCPTR(gnutls_deinit);