James Ots writes:
> When using the Sockets function 'recv', if I give it a length
> parameter of 30001 it returns an error of EINVAL, although 30000 is
> fine.
IIRC, NetIPC on MPE has a similar limit that differs from the HP-UX limit
(one is 30,000, the other 32K). I think for NetIPC there was an IPCCONTROL
function to let you request a particular maximum size. No idea whether
sockets provides the same thing. There's probably some official sockets
answer to the question (either an API or a constant in some .h file).
Of course there's very little difference between one 30,000 byte recv on a
TCP socket and thirty 1,000 byte receives on the same socket. Yes, it's
probably more efficient to make fewer calls, but the functionality will be
the same since TCP has no concept of a "message" or a "packet" and every
thing is done in units of single bytes, so it doesn't matter what size
"chunks" you use to put data in to, or get data out of, a TCP socket.
G.
* To join/leave the list, search archives, change list settings, *
* etc., please visit http://raven.utc.edu/archives/hp3000-l.html *
|