How to prevent SSL from blocking from Network interruption

2007-07-19 Thread Jim Marshall
Good Evening folks: If someone could push (or kick) me in the right direction, that would be much appreciated. I have a single threaded test application (Red Hat Linux release 9 - Shrike), OpenSSL 0.9.8. I found that it's possible to permanently hang a thread receiving SSL calls if a networ

Re: How to prevent SSL from blocking from Network interruption

2007-07-19 Thread Jim Marshall
Hi Jim - thanks for the reply. See comments in-line Jim Fox wrote: I have a single threaded test application (Red Hat Linux release 9 - Shrike), OpenSSL 0.9.8. I found that it's possible to permanently hang a thread receiving SSL calls if a network interruption occurs during an established

Re: How to prevent SSL from blocking from Network interruption

2007-07-19 Thread Jim Marshall
Victor Duchovni wrote: On Thu, Jul 19, 2007 at 03:54:55PM -0400, Jim Marshall wrote: I'm also not sure I understand your answer "This is the way TCP works". When we disconnect the network cable the connection never times out (we left it for at least 30 minutes). TCP o

Re: How to prevent SSL from blocking from Network interruption

2007-07-19 Thread Jim Marshall
David Schwartz wrote: We are working on a threaded solution but right now we are using some third-party code (Webs 2.18) which is single threaded. That's fine, but if you using blocking calls in a single-threaded application, you can really only handle one client at a time. I know :( Which is w

Re: How to prevent SSL from blocking from Network interruption

2007-07-19 Thread Jim Marshall
Jim Marshall wrote: David Schwartz wrote: OpenSSL tries to make SSL connections act like regular TCP connections. This is exactly what TCP does. So your application would have this exact same problem with or without OpenSSL. As such, how can you blame it on OpenSSL? Not to beat a dead horse

Thanks...Re: How to prevent SSL from blocking from Network interruption

2007-07-20 Thread Jim Marshall
David Schwartz wrote: Not to beat a dead horse, but I forgot to mention that the application does work "properly" when performing the same operations on non-SSL connections. In other-words if I use telnet to connect to the server on the non-SSL port and type nothing in the console and then have a

Capabilities of a server

2007-08-22 Thread Jim Marshall
Hi, I was wondering if there is a tool for seeing what ciphers and algorithms a server supports? I know the openssl command line tool has a "ciphers -v" option, but this shows what the client supports. I was wondering if the openssl command line tool has a way to determine this information fo

BIO_set_nbio_accept functionality

2007-08-30 Thread Jim Marshall
I'm looking at using non-blocking I/O in some places in my code, and I have a question. The 'BIO_set_nbio_accept' says it will set the underlying socket to blocking/non-blocking mode, but all the examples and stuff I see say to use 'BIO_socket_ioctl(SSL_get_fd(ssl),FIONBIO,&sl)'. Can 'BIO_set_

Re: BIO_set_nbio_accept functionality

2007-09-03 Thread Jim Marshall
Jim Marshall wrote: I'm looking at using non-blocking I/O in some places in my code, and I have a question. The 'BIO_set_nbio_accept' says it will set the underlying socket to blocking/non-blocking mode, but all the examples and stuff I see say to use 'BIO_socket_ioctl(SSL

Re: BIO_set_nbio_accept functionality

2007-09-04 Thread Jim Marshall
Jim Fox wrote: Doesn't need a faq. The man page says the purpose of the BIO_set_nbio_accept macro is to set blocking or non-blocking mode. Seems like that's what it will do. Jim On Sep 3, 2007, at 11:31 AM, Jim Marshall wrote: Jim Marshall wrote: I'm looking at using n

Re: BIO_set_nbio_accept functionality

2007-09-07 Thread Jim Marshall
Dr. Stephen Henson wrote: On Tue, Sep 04, 2007, Jim Marshall wrote: Jim Fox wrote: Doesn't need a faq. The man page says the purpose of the BIO_set_nbio_accept macro is to set blocking or non-blocking mode. Seems like that's what it will do. Jim On Sep 3, 2007, at 11:31 AM, Ji

Re: BIO_set_nbio_accept functionality

2007-09-07 Thread Jim Marshall
Jim Fox wrote: Use "BIO_set_nbio_accept" and this will work as you want it to. Jim Arg, thanks Jim - somewhere along the line I mixed that up! Changing to that causes the BIO_do_accept call to not block. Although BIO_do_accept returns -1 and errno is set to EAGAIN, the SSL_get_error() func

Re: BIO_set_nbio_accept functionality

2007-09-07 Thread Jim Marshall
Dr. Stephen Henson wrote: On Fri, Sep 07, 2007, Jim Marshall wrote: Jim Fox wrote: Use "BIO_set_nbio_accept" and this will work as you want it to. Jim Arg, thanks Jim - somewhere along the line I mixed that up! Changing to that causes the BIO_do_accept call to not block

Re: BIO_set_nbio_accept functionality

2007-09-11 Thread Jim Marshall
Dr. Stephen Henson wrote: On Fri, Sep 07, 2007, Jim Marshall wrote: Thanks for the feedback, unfortunately I don't fully follow you. In my code I have a 'opensocket' function in which I do this: ret = BIO_new_accept(hostString);

Re: BIO_set_nbio_accept functionality

2007-09-11 Thread Jim Marshall
Jim Fox wrote: So beyond the BIO_do_accept, I used the openssl client program to connect to my server. I was expecting the above to make all the sockets non-blocking, but when I called SSL_read in my code it seems to block for data. I tried using the BIO_set_nbio an BIO_set_nbio_accept cal

BIO & select problem

2007-09-12 Thread Jim Marshall
I have setup my BIO to be non-blocking in my server. In my server I want to use 'select' to detect when there is a connection available, but for some reason it is not working. either select returns '-1' with errno set to EINTR or select returns 0, but it has not waited for 2 seconds for a conne

Re: BIO & select problem

2007-09-12 Thread Jim Marshall
Dr. Stephen Henson wrote: On Wed, Sep 12, 2007, Jim Marshall wrote: I have setup my BIO to be non-blocking in my server. In my server I want to use 'select' to detect when there is a connection available, but for some reason it is not working. either select returns '-1'

Re: BIO & select problem

2007-09-13 Thread Jim Marshall
Dr. Stephen Henson wrote: Ah sorry been a while since I've done this kind of stuff. Try making an initial call to BIO_do_accept() outside the main loop. The first call should set up the accept BIO and the second one check for an incoming connection. No worries! I appreciate any help. I've been

Re: BIO & select problem

2007-09-13 Thread Jim Marshall
David Schwartz wrote: /* This is just one of the tests I have tried */ FD_ZERO(&rfds); FD_SET(acceptSock, &rfds); FD_ZERO(&wfds); FD_SET(acceptSock, &wfds); FD_ZERO(&rfds); FD_SET(acceptSock, &efds); do { /*

Re: BIO & select problem

2007-09-13 Thread Jim Marshall
Victor Duchovni wrote: On Wed, Sep 12, 2007 at 11:48:42PM -0700, David Schwartz wrote: /* This is just one of the tests I have tried */ FD_ZERO(&rfds); FD_SET(acceptSock, &rfds); FD_ZERO(&wfds); FD_SET(acceptSock, &wfds); FD_ZERO(&rfds);

Re: BIO & select problem

2007-09-13 Thread Jim Marshall
Steve Thompson wrote: On Thu, 13 Sep 2007, Victor Duchovni wrote: On Wed, Sep 12, 2007 at 11:48:42PM -0700, David Schwartz wrote: /* This is just one of the tests I have tried */ FD_ZERO(&rfds); FD_SET(acceptSock, &rfds); FD_ZERO(&wfds); FD_SET(accept

Re: BIO & select problem

2007-09-13 Thread Jim Marshall
Victor Duchovni wrote: On Thu, Sep 13, 2007 at 01:08:06PM -0400, Jim Marshall wrote: Victor Duchovni wrote: On Wed, Sep 12, 2007 at 11:48:42PM -0700, David Schwartz wrote: /* This is just one of the tests I have tried */ FD_ZERO(&rfds); FD_SET(acceptSock, &

Re: BIO & select problem

2007-09-13 Thread Jim Marshall
Victor Duchovni wrote: On Thu, Sep 13, 2007 at 02:09:20PM -0400, Jim Marshall wrote: Pardon my ignorance, but why do you need to specify acceptSock+1? I tried this and it fixed the problem, but I don't understand why. This is described in the select() manpage. So it is: "nf

Re: BIO & select problem

2007-09-13 Thread Jim Marshall
David Schwartz wrote: David Schwartz wrote: /* This is just one of the tests I have tried */ FD_ZERO(&rfds); FD_SET(acceptSock, &rfds); FD_ZERO(&wfds); FD_SET(acceptSock, &wfds); FD_ZERO(&rfds); FD_SET(acceptSock, &efds); do

cross compiling (PowerPC)??

2007-12-18 Thread Jim Marshall
I hope I am not missing something simple here. I am trying to cross compile my application for linux on PowerPC (I'm on a Linux X86 build machine). This is the first time I've tried to cross compile something, I can't seem to figure out how to tell OpenSSL to use the cross-compiler. Most of the

Re: cross compiling (PowerPC)??

2007-12-18 Thread Jim Marshall
Jim Marshall wrote: I hope I am not missing something simple here. I am trying to cross compile my application for linux on PowerPC (I'm on a Linux X86 build machine). This is the first time I've tried to cross compile something, I can't seem to figure out how to tell OpenSSL to