[openssl-users] compiling cups-1.4.3 w/ OpenSSL 1.10 && BIO_METHOD
Matt Caswell
matt at openssl.org
Fri Mar 2 09:40:08 UTC 2018
On 01/03/18 12:07, Matthias Apitz wrote:
>
> Hello,
>
> Compiling cups-1.4.3 against OpenSSL 1.10 gives the following error:
>
> ...
> Compiling http.c...
> http.c:216: error: variable `http_bio_methods' has initializer but
> incomplete type
>
> the code in question is:
>
> #if defined(HAVE_SSL) && defined(HAVE_LIBSSL)
> /*
> * BIO methods for OpenSSL...
> */
>
> static int http_bio_write(BIO *h, const char *buf, int num);
> static int http_bio_read(BIO *h, char *buf, int size);
> static int http_bio_puts(BIO *h, const char *str);
> static long http_bio_ctrl(BIO *h, int cmd, long arg1, void *arg2);
> static int http_bio_new(BIO *h);
> static int http_bio_free(BIO *data);
>
> static BIO_METHOD http_bio_methods =
> {
> BIO_TYPE_SOCKET,
> "http",
> http_bio_write,
> http_bio_read,
> http_bio_puts,
> NULL, /* http_bio_gets, */
> http_bio_ctrl,
> http_bio_new,
> http_bio_free,
> NULL,
> };
>
> Can I fix this somehow within the cups' code?
> Thanks
Yes, construct the BIO_METHOD at run time using the functions here:
https://www.openssl.org/docs/man1.1.0/crypto/BIO_meth_new.html
Matt
More information about the openssl-users
mailing list