
Configuring the Stack
A-55
Internal Stack Functions
Maximum Time in Seconds to Wait on Socket Read/Write
_ipcfg.SockTimeIo
Default Value
0
Description
This is max amount to time the sockets layer will wait on a read or write opera-
tion without any progress. For example, if the user calls send() with a very large
buffer, the function will not timeout so long as some fraction of the data is sent
during the timeout period. After every successful transfer of data, the timeout
period is reset. A timeout value of ZERO means “never timeout”.
Maximum Size in Bytes of a TCP/UDP Buffer
_ipcfg.SockBufMax
Default Value
4096
Description
This is the size of the TCP send and receive buffers. UDP and RAW IP buffers
are virtual, but will not allow data to queue above this value. This value can not
be overridden by the sockets option function.
Minimum Size in Bytes for Socket “‘Able to Write”
_ipcfg.SockBufMinTx
Default Value
2048
Description
This is the size in bytes required to be free in the TCP buffer before it is re-
garded as “able to write” by the system. (Affects how the “write fd set” behaves
in a select() call.) This value is usually about 25% to 50% of the send buffer
size. UDP and RAW IP sockets are always able to write.
Minimum Size in Bytes for Socket “Able to Read”
_ipcfg.SockBufMinRx
Default Value
1
Description
This is the size in bytes required to be present in a socket buffer to be regarded
as “able to read” by the system. (Affects how the “read fd set” behaves in a se-
lect() call.) Alter at you own risk.
Maximum Time in Seconds to Wait on Pipe Read/Write
_ipcfg.PipeTimeIo
Default Value
0
Description
This is max amount to time the file layer will wait on a read or write operation
on a pipe without any progress. For example, if the user calls send() with a very
large buffer, the function will not timeout so long as some fraction of the data
is sent during the timeout period. After every successful transfer of data, the
timeout period is reset. A timeout value of ZERO means “never timeout”.