IPCSELECT

Determines the status of a call socket or VC socket.

IPCSELECT(sdbound,readmap,writemap,exceptionmap,timeout,result)

sdbound

32-bit integer, by reference. Specifies the upper

(input/output)

ordinal bound on the range of descriptors specified in the

 

readmap, writemap, and exceptionmap parameters. An

 

IPCSelect call will be most efficient if this parameter is set to

 

the maximum ordinal value of the sockets specified in these

 

parameters. Because a NetIPC process may have concurrent

 

access to a maximum of 32 descriptors, sdbound may be given

 

a maximum value of 32. As an output parameter, sdbound

 

contains the upper ordinal boundary of all of the descriptors

 

that met the select criteria. If none of the criteria were met,

 

sdbound will be set to zero.

readmap

32-bit integer, by reference. A bit map indexed by

(input/output)

VC socket descriptors. When readmap is an input parameter,

 

this map should have bits set for all of the VC sockets from

 

which you would like to receive data. As an output parameter,

 

readmap is a bit map describing all of the readselected VC

 

sockets that are readable.

writemap

32-bit integer, by reference. A bit map indexed by

(input/output)

either call socket descriptors or VC socket descriptors. When

 

writemap is an input parameter, this map should have bits set

 

for all of the call sockets on which you would like to initiate

 

connections, or all of the VC sockets to which you would like to

 

send data. As an output parameter, writemap is a bit map

 

describing all of the writeselected sockets that are writeable.

exceptionmap

32-bit integer, by reference. A bit map indexed by

(input/output)

either call socket descriptors or VC socket descriptors. When

 

exceptionmap is an input parameter, this map should have

 

bits for all of the sockets for which notification of exceptional

 

conditions is desired. As an output parameter,

 

exceptionmap is a bit map describing all of the

 

exceptionselected sockets that are exceptional. For call

 

sockets, an exceptional condition is present if a connection

 

request is queued to the socket; for VC sockets, an exceptional

 

condition is present if the connection referenced by the socket

 

has been aborted.

timeout

32-bit integer, by value in Pascal, by

 

reference in FORTRAN. The number of tenths of seconds

 

the calling process is willing to wait for some event to occur

 

which would cause IPCSelect's report to change. This

 

timeout is put into effect only when none of the sockets

 

referenced can immediately satisfy the select criteria (i.e., none

 

are readable, writeable or exceptional). If this value is set to

 

zero, the call will not block. If it is set to 1, the timeout will be

 

set to infinity (i.e., the call will block).

result

32-bit integer, by reference. The error code

 

returned; zero if no error.

Network Interprocess Communication 617