Re: [openssl-dev] Adding async support

2015-10-08 Thread Dmitry Belyavsky
Dear Matt, On Thu, Oct 8, 2015 at 10:06 PM, Matt Caswell wrote: > > > On 08/10/15 18:56, Dmitry Belyavsky wrote: > > > The second problem is entirely engine dependant. It will be a > different > > solution for different hardware. These patches do not provide a > solution > > to that

Re: [openssl-dev] Adding async support

2015-10-08 Thread Matt Caswell
On 08/10/15 18:56, Dmitry Belyavsky wrote: > The second problem is entirely engine dependant. It will be a different > solution for different hardware. These patches do not provide a solution > to that problem. > > > So I do not understand what you mean by "offload" :-( > > I unde

Re: [openssl-dev] Adding async support

2015-10-08 Thread Dmitry Belyavsky
Dear Matt, On Thu, Oct 8, 2015 at 3:17 PM, Matt Caswell wrote: > > > No. I think you are confusing two different things. > > 1) How does an *application* perform asynchronous work (via libssl or > libcrypto) using an asynchronous capable engine? > Ok. There is an example an explanation you have

Re: [openssl-dev] Adding async support

2015-10-08 Thread Matt Caswell
On 08/10/15 12:18, Dmitry Belyavsky wrote: > > I see. So am I correct supposing that pseudo code for > offload_cipher_to_hardware looks like this: > > static int async_wrapper(void * args) > { > ... > } > > static ASYNC_JOB *offload (void *args) > { > ASYNC_JOB *pjob = NULL; > int funcret;

Re: [openssl-dev] Adding async support

2015-10-08 Thread Dmitry Belyavsky
Dear Matt, On Thu, Oct 8, 2015 at 1:56 PM, Matt Caswell wrote: > > > The engine needs to have a way of offloading the work to "something > > else" so that it can come back and pick up the results later. > Typically > > for an engine this would mean some external hardware, but as I >

Re: [openssl-dev] Adding async support

2015-10-08 Thread Matt Caswell
On 08/10/15 11:26, Dmitry Belyavsky wrote: > Dear Matt, > > I have some questions. > > On Thu, Oct 8, 2015 at 12:32 AM, Matt Caswell > wrote: > > > > On 07/10/15 21:44, Dmitry Belyavsky wrote: > > Dear Matt, > > > > On Wed, Oct 7, 2015 at 4:43 PM, M

Re: [openssl-dev] Adding async support

2015-10-08 Thread Dmitry Belyavsky
Dear Matt, I have some questions. On Thu, Oct 8, 2015 at 12:32 AM, Matt Caswell wrote: > > > On 07/10/15 21:44, Dmitry Belyavsky wrote: > > Dear Matt, > > > > On Wed, Oct 7, 2015 at 4:43 PM, Matt Caswell > > wrote: > > > > > > > > On 07/10/15 14:29, Viktor Dukhovni

Re: [openssl-dev] Adding async support

2015-10-07 Thread Matt Caswell
On 07/10/15 21:44, Dmitry Belyavsky wrote: > Dear Matt, > > On Wed, Oct 7, 2015 at 4:43 PM, Matt Caswell > wrote: > > > > On 07/10/15 14:29, Viktor Dukhovni wrote: > > > > Should applications generally enable async mode because that might > > be bene

Re: [openssl-dev] Adding async support

2015-10-07 Thread Dmitry Belyavsky
Dear Matt, On Wed, Oct 7, 2015 at 4:43 PM, Matt Caswell wrote: > > > On 07/10/15 14:29, Viktor Dukhovni wrote: > > > > Should applications generally enable async mode because that might > > be beneficial down the road? Or is this just for exotic hardware > > not likely to be seen in most enviro

Re: [openssl-dev] Adding async support

2015-10-07 Thread Matt Caswell
On 07/10/15 16:57, Devchandra L Meetei wrote: > > > On Wed, Oct 7, 2015 at 3:16 PM, Matt Caswell > > wrote: > > > > libssl has been made async aware through the introduction of a new mode > "SSL_MODE_ASYNC". The m

Re: [openssl-dev] Adding async support

2015-10-07 Thread Devchandra L Meetei
Hello Mark I have been working recently on evt , which is still in WIP, exposing a callback based async API's on top of libssl. The idea was to abstract libssl with well defined APIs that can be integrated with libraries like libevent and libuv. Thought It might b

Re: [openssl-dev] Adding async support

2015-10-07 Thread Devchandra L Meetei
On Wed, Oct 7, 2015 at 3:16 PM, Matt Caswell wrote: > > > libssl has been made async aware through the introduction of a new mode > "SSL_MODE_ASYNC". The mode is set using a call to one of the existing > functions SSL_CTX_set_mode() or SSL_set_mode().

Re: [openssl-dev] Adding async support

2015-10-07 Thread Mark Ellzey
As a maintainer of libevent, and spending heaps of time in the ssl abstractions, anything to remove all the insane things you must do now for async io would be a reprieve of the horrors we've dealt with over the years. I do worry that these patches may take too much of the work away to the point o

Re: [openssl-dev] Adding async support

2015-10-07 Thread Matt Caswell
On 07/10/15 14:29, Viktor Dukhovni wrote: > On Wed, Oct 07, 2015 at 10:46:26AM +0100, Matt Caswell wrote: > >> I have also added async support to s_server and s_client through the new >> "-async" flag. The will set the SSL_MODE_ASYNC mode. In order to have an >> effect you will obviously also ne

Re: [openssl-dev] Adding async support

2015-10-07 Thread Viktor Dukhovni
On Wed, Oct 07, 2015 at 10:46:26AM +0100, Matt Caswell wrote: > I have also added async support to s_server and s_client through the new > "-async" flag. The will set the SSL_MODE_ASYNC mode. In order to have an > effect you will obviously also need an async engine (such as dasync) > loaded throug