Using OpenSSL with non-blocking I/O

2011-05-06 Thread Rajib Karmakar
Hi, I am developing and application using OpenSSL. I have a proprietary system to handle connection/read data from sockets. All I need to do is to pass callback functions to the system to 1. Handle new connection 2. Read data on the given port Now while I use

Re: Handshake fails when using SSL-BIOs (ADH-AES256-SHA)

2011-05-06 Thread Martin Domke
I understand why nobody gave an answer to this question, because the crucial hint was missing: I am using the GLib GSocketService for handling incoming connections. The GLib uses non-blocking sockets under the hood which I was not aware of. Especially the g_socket_set_blocking() function does

Re: evp_encrypt_init_ex

2011-05-06 Thread Prashant Batra
Thanks Steve. On Thu, May 5, 2011 at 6:11 PM, Dr. Stephen Henson st...@openssl.orgwrote: On Thu, May 05, 2011, Prashant Batra wrote: Hi, One question regarding EVP_Encrypt APIs. EVP_EncryptInit_ex(ctx, cipher, NULL, (unsigned char *)enc_key, (unsigned char *)iv)) Is there a

Re: Using OpenSSL with non-blocking I/O

2011-05-06 Thread Dr. Stephen Henson
On Fri, May 06, 2011, Rajib Karmakar wrote: Hi, I am developing and application using OpenSSL. I have a proprietary system to handle connection/read data from sockets. All I need to do is to pass callback functions to the system to 1. Handle new connection

Re: CMS_verify() with a public key instead of a cert

2011-05-06 Thread Stef Hoeben
Hi, CMS_verify() works fine if you have the signer cert, but now we have a CMS file for which only the (trusted) signer public key is available. Q: is there a high level function like CMS_verify() that works with a public key? If not: what would be the best alternative for us? -

Re: CMS_verify() with a public key instead of a cert

2011-05-06 Thread Dr. Stephen Henson
On Fri, May 06, 2011, Stef Hoeben wrote: Hi, CMS_verify() works fine if you have the signer cert, but now we have a CMS file for which only the (trusted) signer public key is available. Q: is there a high level function like CMS_verify() that works with a public key? If not:

Multiple connection from 1 client

2011-05-06 Thread Harshvir Sidhu
Hi, I have a server application, which accepts normal sockets and ssl socket connections. I am trying to make 3 connections to server from 1 client machine, on same server port. When i connect on normal sockets then it works with any number of connections. When i tried to connect SSL

Re: Multiple connection from 1 client

2011-05-06 Thread derleader mail
Hi, I have a server application, which accepts normal sockets and ssl socket connections. I am trying to make 3 connections to server from 1 client machine, on same server port. When i connect on normal sockets then it works with any number of connections. When i tried to

Re: Re: Using OpenSSL with non-blocking I/O

2011-05-06 Thread derleader mail
Hi, I am developing and application using OpenSSL. I have a proprietary system to handle connection/read data from sockets. All I need to do is to pass callback functions to the system to 1. Handle new connection 2. Read data on the given

Re: Multiple connection from 1 client

2011-05-06 Thread Harshvir Sidhu
My code is all jumbled up, its a big big code. I dont think i can share the code. If there is some particular call that you want to see, please let me know i will share the function call or block of calls. Thanks. On Fri, May 6, 2011 at 2:22 PM, derleader mail derlea...@abv.bg wrote: Hi,

Re: Multiple connection from 1 client

2011-05-06 Thread Michael S. Zick
On Fri May 6 2011, derleader mail wrote: Hi, I have a server application, which accepts normal sockets and ssl socket connections. I am trying to make 3 connections to server from 1 client machine, on same server port. When i connect on normal sockets then it works with any

Re: Using OpenSSL with non-blocking I/O

2011-05-06 Thread Graham Leggett
On 06 May 2011, at 9:23 PM, derleader mail wrote: Can you show us the source code. Paste it into pastebin.org. We do non blocking SSL by accepting the socket in the normal way (using accept, not SSL_accept), and then wrapping the socket in a BIO like this: BIO *sbio =

RE: Multiple connection from 1 client

2011-05-06 Thread Jeremy Farrell
From: Harshvir Sidhu Hi, I have a server application, which accepts normal sockets and ssl socket connections. I am trying to make 3 connections to server from 1 client machine, on same server port. When i connect on normal sockets then it works with any number of connections. When

Re: Multiple connection from 1 client

2011-05-06 Thread Harshvir Sidhu
Well i think this link is for my question. I have already done 1-5 from the Before you ask list. Number 6, i dont know anyone who use openssl. Number 7, it will take a lot of time to go through all the code, i was just trying to save some time. I thought user discussion forums are for this only. I

Re: Multiple connection from 1 client

2011-05-06 Thread Gayathri Sundar
Harshvir, SO_REUSEADDR sock option has noting to do with ur problem, please go thro the socket ops man page to get a better understanding. First find out if ur server code is a blocking i/o or non blocking I/O..if former then connections will be handled sequentially..only after the 1st client is

Re: Using OpenSSL with non-blocking I/O

2011-05-06 Thread Gayathri Sundar
I think the openssl src already has sample server and client programs which are written in non blocking mode ..check wserver2.c if I am able to recall. On Fri, May 6, 2011 at 2:42 PM, Graham Leggett minf...@sharp.fm wrote: On 06 May 2011, at 9:23 PM, derleader mail wrote: Can you show us

Re: Multiple connection from 1 client

2011-05-06 Thread Harshvir Sidhu
Gayatri, My server code is single threaded and i am using blocking sockets, i am using fd_set and select to wait for event on socket, and then performing operation based on the event that acts on a socket. I have an array of sockets to listen. So if i start listening on 3 different ports and from

Re: Multiple connection from 1 client

2011-05-06 Thread Gayathri Sundar
Harsh, Okay from what I can understand, if you make ur underlying fd non blocking then it would work fine. Blocking FDs, unless and until one client is finished with its processing the other client will not be able to communicate with the server as the previous fd is blocked. The server is

Re: Multiple connection from 1 client

2011-05-06 Thread Eric S. Eberhard
And I cannot imagine a case where a blocking FD is useful except it is lazier to code that way. You need to use non-blocking. E At 04:03 PM 5/6/2011, you wrote: Harsh, Okay from what I can understand, if you make ur underlying fd non blocking then it would work fine. Blocking FDs, unless

Re: Multiple connection from 1 client

2011-05-06 Thread Harshvir Sidhu
Thanks for the reply Gayathri. Do you mean to changing the sockets to non blocking, or when i create bio for ssl to make that as non blocking? Thanks. On Fri, May 6, 2011 at 6:03 PM, Gayathri Sundar suraj...@gmail.com wrote: Harsh, Okay from what I can understand, if you make ur underlying

Re: Multiple connection from 1 client

2011-05-06 Thread Eric S. Eberhard
Change the sockets. This is what I use: int setblock(fd, mode) int fd; int mode; /* True - blocking, False - non blocking */ { int flags; int prevmode; flags = fcntl(fd, F_GETFL, 0); prevmode = !(flags O_NDELAY); if (mode)

Re: Multiple connection from 1 client

2011-05-06 Thread Gayathri Sundar
Yes, you need to make the underlying socket non blocking, and at the same time gotta change the way you call SSL_accept, SSL_read, write etc to handle non block error conditions like want_read, want_write errors, use the code Eric has given to make the fd non block, or u can also set the bio non

Re: Multiple connection from 1 client

2011-05-06 Thread Harshvir Sidhu
Thanks, I will give this a try. // Harshvir On Fri, May 6, 2011 at 6:44 PM, Eric S. Eberhard fl...@vicsmba.com wrote: Change the sockets. This is what I use: int setblock(fd, mode) int fd; int mode; /* True - blocking, False - non blocking */ { int flags;

Re: Multiple connection from 1 client

2011-05-06 Thread Gayathri Sundar
Harsh., If u have any specific doubts in writing this asynchronous state machine email me privately at suraj...@gmail.com. I am pretty much jobless right now and can spend some time on this. Thanks --Gayathri On Friday, May 6, 2011, Harshvir Sidhu hvssi...@gmail.com wrote: Thanks, I will give

Initialization Vector for EVP_rc4() ?

2011-05-06 Thread Bugcollect.com
Hello, I need to exchange encrypted content with an existing application on Windows with an RC4 key that is salted as per http://msdn.microsoft.com/en-us/library/aa387782%28v=vs.85%29.aspx (KP_SALT_EX). Note that this is not a passphrase and salt key derivation, but a cipher initialized with