Re: PATCH: A fix to allow OpenVMS to (HTTP) POST data larger than 64K...
Date: Thu, 10 Jun 2004 14:12:46 +0200 (CEST)
On Thu, 10 Jun 2004, Tim Sneddon, Systems Programmer, BSD, Infomedia Ltd wrote:
> o. lib/sendf.c - This is the code changed to allow buffers
> larger than 64K to be sent. It basically
> splits the buffer up using a 64K window and
> sends it piece by piece.
> The code is #ifdef'd :-( using
> HAVE_VMS_64K_LIMIT. Didn't really want to
> break anyone else's system.
Hm. I understand and sympathize for the need of this fix. I'm only wondering
if it can't be made in a slightly nicer way. Have you tried to lower the limit
libcurl uses to determine weather the full POST should be sent in the first
initial send() ? libcurl checks the size of the full POST and if it is larger
than 100K, it will split it up and send it in multiple pieces and when doing
this, it will never use pieces larger than 64K. So, if you try to lower the
100K limit down to 60K, does that work for you? (the check is done at
lib/http.c:1891 in my version)
The 100K limit is not scientificly determined, we could easily move it around
to better suit us and having it set to 60K shouldn't hurt anyone much and
would in my eyes provide a much simpler and more elegant solution to your
> o. src/getpass.c - When building the updated source I found
> that this module would not build because
> of the "struct _iosb iosb" declaration that
> had been left behind.
Oh. This "left behind" struct was just recently added by Marty Kuhrt, our
friend in VMS package land. Just removing it will probably re-introduce
problems he's tried to fix...
Marty, what do you say?
-- Daniel Stenberg -- http://curl.haxx.se -- http://daniel.haxx.se Dedicated custom curl help for hire: http://haxx.se/curl.htmlReceived on 2004-06-10