Ticket #294 (new defect)

Opened 3 years ago

Last modified 2 years ago

HTTPS POST request hangs

Reported by: mgedmin Owned by: ianb
Priority: normal Milestone: 1.4.1
Component: paste Version: svn-trunk
Severity: normal Keywords:
Cc:

Description

If I do a POST request with content-type: application/x-www-form-data, but with a body that's not actually valid x-www-form-data, and if I do it over SSL, the Paste web server hangs. If I do it over plain HTTP, it works.

To reproduce:

svn co  svn://svn.zope.org/repos/main/keas.kmi/trunk keas.kmi cd keas.kmi python2.5 bootstrap.py bin/buildout bin/runserver & wget  https://localhost:8080/new -O kek.dat --ca-certificate sample.pem wget  https://localhost:8080/key --post-file kek.dat -O datakey.dat --ca-certificate sample.pem

The last wget command hangs. If I kill it, the server shows an SysCallError?: (-1, 'Unexpected EOF') in _sock.recv():

If I add --header 'Content-Type: text/plain' to the last wget command, it succeeds.

If I edit server.ini and comment out the ssl_pem option, re-run bin/runserver, I can do both wget requests (without the correct content-type) if I replace https with http.

I would be fine with getting an error complaining about invalid x-www-form-data data in the request body, but paste should not simply hang forever.

I'm using Paste 1.7.1, PasteScript? 1.6.3, PasteDeploy? 1.3.2 and pyOpenSSL 0.7.

Change History

Changed 3 years ago by mgedmin

I should've added some wiki markup to the steps to reproduce, or hit preview, *sigh*:

svn co svn://svn.zope.org/repos/main/keas.kmi/trunk keas.kmi
cd keas.kmi
python2.5 bootstrap.py
bin/buildout
bin/runserver &
wget https://localhost:8080/new -O kek.dat --ca-certificate sample.pem
wget https://localhost:8080/key --post-file kek.dat -O datakey.dat --ca-certificate sample.pem

Changed 2 years ago by maluke

  • component changed from webob to paste
Note: See TracTickets for help on using tickets.