[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]
Re: [Libevent-users] bufferevent_base_set and threads
Thanks so much for all your anwers, btw!
I need clarification on one thing below:
> On Aug 12, 2019, at 2:51 PM, Azat Khuzhin <azat@xxxxxxxxxxxx> wrote:
>
> On Mon, Aug 12, 2019 at 02:04:00PM -0700, Scott Dorr wrote:
>> As an addendum to that question: if I have an SSL connection with a bufferevent, and I bufferevent_disable / bufferevent_free, can another thread bufferevent_openssl_socket_new() using the original fd to create a new bufferevent for that thread … without killing the underlying connection?
>
> In general if you do not use BEV_OPT_CLOSE_ON_FREE this *may work*,
> *may* because SSL_* functions will be called twice (i.e.
> SSL_clear()/SSL_do_handshake()), but even taking this into account, I
> wouldn't recommend going this way, since this:
> - can be broken in future
> - may not work always, and will introduce hard to debug issues
>
>> I don’t mind a disable/base_set/enable if that’ll work with a bufferevent originally created via bufferevent_openssl_socket_new(), and that would be the easiest thing for me to do here, but if that doesn’t work, is the above (disable/free … other thread creates an explicitly new bufferevent) doable without killing the established connection underneath?
>
>
>>> On Aug 12, 2019, at 1:03 PM, Scott Dorr <j.scott.dorr@xxxxxxxxx> wrote:
>>>
>>> So, not possible for bufferevent_openssl_socket_new()?
>
> Right now - no, but it is pretty easy to archive.
>
> But you can check this debug tree:
> https://github.com/azat/libevent bufferevent_base_set
> (this should work, but should be verified/covered)
I’m not sure what you mean by this … are you suggesting the debug tree might do what I want? Also not sure what you mean ‘pretty easy to archive’.
Thanks again!
- scott
>
> Regards,
> Azat.
> ***********************************************************************
> To unsubscribe, send an e-mail to majordomo@xxxxxxxxxxxxx with
> unsubscribe libevent-users in the body.
***********************************************************************
To unsubscribe, send an e-mail to majordomo@xxxxxxxxxxxxx with
unsubscribe libevent-users in the body.