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

-- 
openssl-users mailing list
To unsubscribe: https://mta.openssl.org/mailman/listinfo/openssl-users

Reply via email to