Consecutive https posts result in hang

Hi,
I'm trying to send multiple consecutive POSTs over https.
After a couple of successful POSTs (with header and body), the next time 
the libwww client sends a POST request, it gets a 100-continue from the 
server, but after that it never actually writes/flushes the POST data out 
to the server, and hangs there.

A log trace (flags = sop) shows that

When it works, I see:
[D] 16137 Host Event.. FLUSH passed to `https://<server-ip>/<uri path>'
intf/testint.req'
[D] 16137 Uploading... Flushing 0x80763a8 with timer 0x8071308
[D] 16137 Posting Data Target is SAVED
[D] 16137 Buffer...... Waiting 30ms on 0x807e578
[D] 16137 Uploading... Callback returned 200
[D] 16137 Buffer...... Timeout flushing 0x807e578 with timer 0x8068fa8

When it doesn't work, I see:
[D] 2424 Host Event.. FLUSH passed to ``https://<server-ip>/<uri path>'
[D] 2424 Uploading... Flushing 0x80816a8 with timer 0x806e9b8
[D] 2424 Posting Data Target is SAVED
[D] 2424 Uploading... Callback returned 200

The line in bold is missing.

With some debugging, I found that, in the case where it doesn't work, it 
enters HTBufferWriter_lazyFlush,
and returns back because (me->read <= me->data) is true, so perhaps never 
calls the flush.
The above comparison probably means that there's no data to flush. How do I 
figure out why there's no data here or what could be going wrong ?

Also, found that when the request was being sent to an https-server on the 
same box, multiple requests  went smoothly without any hang. So, sounds 
like some problem with buffering, but am not sure.

I'm new at using libwww, so appreciate any help.

Thanks,
Priya.

Received on Saturday, 27 July 2002 19:32:03 UTC