You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@apr.apache.org by William A Rowe Jr <wr...@rowe-clan.net> on 2017/07/24 19:06:01 UTC

Re: c/c++: using apache portable rumtime combined with openssl

The most direct answer, if you do not want to replace the BIO functions of
the openssl socket implementation, is to take the now-configured socket
from the apr_socket_t structure, and pass this apr_os_socket_t to create
the openssl socket-based BIO context.  See apr_os_socket_get().

If you wanted to use the apr_socket_t and associated apr_ read/write
functions, is to create a custom set of BIO callbacks. You can look to the
httpd (mod_ssl) or subversion projects for various implementations.




On Mon, Jul 24, 2017 at 6:33 AM, dzfancy <dz...@163.com> wrote:
> Dear friends:
> I’m writing a linux/windows corss-platform software in c/c++ and using
> apache portable runtime (APR) in socket communication ,but i run into a
> problem which i do not know how to resolve.
> I plan to make my software to support ssl/tls safety communication and
> decide to use openssl library, after reading openssl api, i seems that  i
> can not using APR combined with openssl at the same time, because openssl
> used objects(SSL*  BIO*) in socket communication api such as  “SSL_read”
> “SSL_write”  “BIO_read” “BIO_read” are different from APR defined
> “apr_socket_t”
>
> I notice that APR utility library 1.6 has already supported openssl
> encryption/decryption,but I can not find any api related to tls . I still
> want to use  APR to implement ssl/tls communication,could someone give me
> any suggestion?
>
> Sincerely yours
>
> Dezhi Wang