No server response in https

I’m running 0.8.53 on QNX Neutrino 6.5.0 with SSL on and the server
doesn’t respond to the client. Instead it times out, as below. It does
work properly with SSL off. Can you provide any suggestions? Thanks.

2011/05/02 09:39:57 [debug] 2220074#0: *7 http check ssl handshake
2011/05/02 09:39:57 [debug] 2220074#0: *7 https ssl handshake: 0x16
2011/05/02 09:39:57 [debug] 2220074#0: *7 SSL_do_handshake: -1
2011/05/02 09:39:57 [debug] 2220074#0: *7 SSL_get_error: 2
2011/05/02 09:39:57 [debug] 2220074#0: *7 post event 080E284C
2011/05/02 09:39:57 [debug] 2220074#0: *7 delete posted event 080E284C
2011/05/02 09:39:57 [debug] 2220074#0: *7 SSL handshake handler: 0
2011/05/02 09:39:57 [debug] 2220074#0: *7 SSL_do_handshake: 1
2011/05/02 09:39:57 [debug] 2220074#0: *7 select del event fd:3 ev:5
2011/05/02 09:39:57 [debug] 2220074#0: *7 SSL: TLSv1, cipher:
“DHE-RSA-AES256-SHA SSLv3 Kx=DH Au=RSA Enc=AES(256) Mac=SHA1”
2011/05/02 09:39:57 [debug] 2220074#0: *7 http process request line
2011/05/02 09:39:57 [debug] 2220074#0: *7 SSL_read: -1
2011/05/02 09:39:57 [debug] 2220074#0: *7 SSL_get_error: 2
2011/05/02 09:39:57 [debug] 2220074#0: *7 select add event fd:3 ev:5
2011/05/02 09:39:57 [debug] 2220074#0: *7 post event 080E284C
2011/05/02 09:39:57 [debug] 2220074#0: *7 delete posted event 080E284C
2011/05/02 09:39:57 [debug] 2220074#0: *7 http process request line
2011/05/02 09:39:57 [debug] 2220074#0: *7 SSL_read: 132
2011/05/02 09:39:57 [debug] 2220074#0: *7 SSL_read: -1
2011/05/02 09:39:57 [debug] 2220074#0: *7 SSL_get_error: 2
2011/05/02 09:39:57 [debug] 2220074#0: *7 http request line: “GET /
HTTP/1.1”
2011/05/02 09:39:57 [debug] 2220074#0: *7 http uri: “/”
2011/05/02 09:39:57 [debug] 2220074#0: *7 http args: “”
2011/05/02 09:39:57 [debug] 2220074#0: *7 http exten: “”
2011/05/02 09:39:57 [debug] 2220074#0: *7 http process request header
line
2011/05/02 09:39:57 [debug] 2220074#0: *7 http header: “User-Agent:
curl/7.21.6 (amd64-pc-win32) libcurl/7.21.6 OpenSSL/0.9.8r zlib/1.2.5”
2011/05/02 09:39:57 [debug] 2220074#0: *7 http header: “Host:
10.0.4.237”
2011/05/02 09:39:57 [debug] 2220074#0: *7 http header: “Accept: /
2011/05/02 09:39:57 [debug] 2220074#0: *7 http header done
2011/05/02 09:39:57 [debug] 2220074#0: *7 event timer del: 3:
2968566242
2011/05/02 09:39:57 [debug] 2220074#0: *7 rewrite phase: 0
2011/05/02 09:39:57 [debug] 2220074#0: *7 test location: “/”
2011/05/02 09:39:57 [debug] 2220074#0: *7 test location: ~ “.cgi$”
2011/05/02 09:39:57 [debug] 2220074#0: *7 using configuration “/”
2011/05/02 09:39:57 [debug] 2220074#0: *7 http cl:-1 max:1048576
2011/05/02 09:39:57 [debug] 2220074#0: *7 rewrite phase: 2
2011/05/02 09:39:57 [debug] 2220074#0: *7 post rewrite phase: 3
2011/05/02 09:39:57 [debug] 2220074#0: *7 generic phase: 4
2011/05/02 09:39:57 [debug] 2220074#0: *7 generic phase: 5
2011/05/02 09:39:57 [debug] 2220074#0: *7 access phase: 6
2011/05/02 09:39:57 [debug] 2220074#0: *7 access phase: 7
2011/05/02 09:39:57 [debug] 2220074#0: *7 post access phase: 8
2011/05/02 09:39:57 [debug] 2220074#0: *7 content phase: 9
2011/05/02 09:39:57 [debug] 2220074#0: *7 open index
“/www/webdoc/index.html”
2011/05/02 09:39:57 [debug] 2220074#0: *7 internal redirect:
“/index.html?”
2011/05/02 09:39:57 [debug] 2220074#0: *7 rewrite phase: 0
2011/05/02 09:39:57 [debug] 2220074#0: *7 test location: “/”
2011/05/02 09:39:57 [debug] 2220074#0: *7 test location: “50x.html”
2011/05/02 09:39:57 [debug] 2220074#0: *7 test location: ~ “.cgi$”
2011/05/02 09:39:57 [debug] 2220074#0: *7 using configuration “/”
2011/05/02 09:39:57 [debug] 2220074#0: *7 http cl:-1 max:1048576
2011/05/02 09:39:57 [debug] 2220074#0: *7 rewrite phase: 2
2011/05/02 09:39:57 [debug] 2220074#0: *7 post rewrite phase: 3
2011/05/02 09:39:57 [debug] 2220074#0: *7 generic phase: 4
2011/05/02 09:39:57 [debug] 2220074#0: *7 generic phase: 5
2011/05/02 09:39:57 [debug] 2220074#0: *7 access phase: 6
2011/05/02 09:39:57 [debug] 2220074#0: *7 access phase: 7
2011/05/02 09:39:57 [debug] 2220074#0: *7 post access phase: 8
2011/05/02 09:39:57 [debug] 2220074#0: *7 content phase: 9
2011/05/02 09:39:57 [debug] 2220074#0: *7 content phase: 10
2011/05/02 09:39:57 [debug] 2220074#0: *7 content phase: 11
2011/05/02 09:39:57 [debug] 2220074#0: *7 http filename:
“/www/webdoc/index.html”
2011/05/02 09:39:57 [debug] 2220074#0: *7 add cleanup: 080F9748
2011/05/02 09:39:57 [debug] 2220074#0: *7 http static fd: 4
2011/05/02 09:39:57 [debug] 2220074#0: *7 http set discard body
2011/05/02 09:39:57 [debug] 2220074#0: *7 HTTP/1.1 200 OK
Server: nginx/0.8.53
Date: Mon, 02 May 2011 13:39:57 GMT
Content-Type: text/html
Content-Length: 5222
Last-Modified: Wed, 27 Apr 2011 20:25:09 GMT
Connection: keep-alive
Accept-Ranges: bytes

2011/05/02 09:39:57 [debug] 2220074#0: *7 write new buf t:1 f:0
080F981C, pos 080F981C, size: 217 file: 0, size: 0
2011/05/02 09:39:57 [debug] 2220074#0: *7 http write filter: l:0 f:0
s:217
2011/05/02 09:39:57 [debug] 2220074#0: *7 http output filter
“/index.html?”
2011/05/02 09:39:57 [debug] 2220074#0: *7 http copy filter:
“/index.html?”
2011/05/02 09:39:57 [debug] 2220074#0: *7 malloc: 0814BB80:5222
2011/05/02 09:39:57 [debug] 2220074#0: *7 read: 4, 0814BB80, 5222, 0
2011/05/02 09:39:57 [debug] 2220074#0: *7 http postpone filter
“/index.html?” 080F9974
2011/05/02 09:39:57 [debug] 2220074#0: *7 write old buf t:1 f:0
080F981C, pos 080F981C, size: 217 file: 0, size: 0
2011/05/02 09:39:57 [debug] 2220074#0: *7 write new buf t:1 f:0
0814BB80, pos 0814BB80, size: 5222 file: 0, size: 0
2011/05/02 09:39:57 [debug] 2220074#0: *7 http write filter: l:1 f:0
s:5439
2011/05/02 09:39:57 [debug] 2220074#0: *7 http write filter limit 0
2011/05/02 09:39:57 [debug] 2220074#0: *7 posix_memalign: 080E1370:256
@16
2011/05/02 09:39:57 [debug] 2220074#0: *7 malloc: 080FCFF0:16384
2011/05/02 09:39:57 [debug] 2220074#0: *7 http write filter 080F98FC
2011/05/02 09:39:57 [debug] 2220074#0: *7 http copy filter: -2
“/index.html?”
2011/05/02 09:39:57 [debug] 2220074#0: *7 http finalize request: -2,
“/index.html?” a:1, c:2
2011/05/02 09:39:57 [debug] 2220074#0: *7 event timer add: 3:
60000:2968566732
2011/05/02 09:39:57 [debug] 2220074#0: *7 http finalize request: -4,
“/index.html?” a:1, c:2
2011/05/02 09:39:57 [debug] 2220074#0: *7 http request count:2 blk:0

2011/05/02 09:40:57 [debug] 2220074#0: *7 event timer del: 3:
2968566732
2011/05/02 09:40:57 [debug] 2220074#0: *7 http run request:
“/index.html?”
2011/05/02 09:40:57 [debug] 2220074#0: *7 http writer handler:
“/index.html?”
2011/05/02 09:40:57 [info] 2220074#0: *7 client timed out (260:
Connection timed out) while sending response to client, client:
10.0.4.118, server: tf2000, request: “GET / HTTP/1.1”, host:
“10.0.4.237”
2011/05/02 09:40:57 [debug] 2220074#0: *7 http finalize request: 408,
“/index.html?” a:1, c:1
2011/05/02 09:40:57 [debug] 2220074#0: *7 http terminate request count:1

Posted at Nginx Forum:

There was no response from the server (no 408 received by client).
Thanks for your help.

config:

user nginx nginx;
worker_processes 1;

events {
worker_connections 256;
}

http {
include /usr/pkg/etc/nginx/mime.types;
default_type application/octet-stream;

access_log /var/log/nginx/access.log;
error_log /var/log/nginx/error.log debug;

sendfile        on;

keepalive_timeout  65;


# HTTPS server
#

server {
    listen       443;
    server_name  tf2000;

    ssl                             on;

ssl_certificate /x509/server.crt;
ssl_certificate_key /x509/server.key;

    ssl_session_timeout  5m;

    ssl_protocols  SSLv2 SSLv3 TLSv1;
    ssl_ciphers

ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP;
ssl_prefer_server_ciphers on;

    location / {
        root   /www/webdoc;
        index  index.html index.htm;
    }
}

}

Posted at Nginx Forum:

Hello!

On Tue, May 03, 2011 at 01:42:42PM -0400, art.wu wrote:

I’m running 0.8.53 on QNX Neutrino 6.5.0 with SSL on and the server
doesn’t respond to the client. Instead it times out, as below. It does
work properly with SSL off. Can you provide any suggestions? Thanks.

Yep, this is general bug affecting systems with 32-bit off_t.
Attached patch fixes it.

Please note that using 64-bit off_t may be a good thing anyway (2G
limit is two low today even on embedded platforms…), and it
looks like QNX (at least 6.5.0) supports -D_FILE_OFFSET_BITS=64
(though nginx doesn’t know and doesn’t try it on QNX). Try using

./configure --with-cc-opt="-D_FILE_OFFSET_BITS=64" …

it should resolve the issue even without the patch.

Please also note that there are other problems with QNX 6 due to
time_t type being unsigned there. GCC will refuse to build nginx
with -Werror (as used by nginx) - and this is the right thing.
I’m looking into this issue, but it will require a bit more work.

Maxim D.

The configure option solved the problem. Thanks.

Posted at Nginx Forum: