NetIPC 3000/XL Programmer's Reference Manual (5958-8600)
Table Of Contents
- 1 NetIPC Fundamentals
- 2 Cross-System NetIPC
- 3 NetIPC Intrinsics
- 4 NetIPC Examples
- A IPC Interpreter (IPCINT)
- B Cause and Diagnostic Codes
- C ErrorMessages
- D Migration From PTOP to NetIPC and RPM
- E C Program Language Considerations

Chapter 3 127
NetIPC Intrinsics
Asynchronous I/O
Steps for Programming with Asynchronous I/O
The following summarizes the steps to follow to have your program
perform asynchronous I/O:
• Create the call or VC socket with IPCCREATE, IPCCONNECT, or
IPCRECVCN.
• Enable nowait I/O with IPCCONTROL.
• Make a IPCRECVCN, IPCRECV, or IPCSEND NetIPC call on the
socket. The call will be asynchronous.
• Check the
result
code returned by the call to see if an error
occurred when the call was initiated.
• Call IOWAIT to cause the calling process to wait until the NetIPC
call completes or IODONTWAIT to see if the request has completed.
• Once the asynchronous NetIPC call completes do the following:
— Check the condition code to see if an error occurred. If the
condition code=CCE, no error occurred. If the condition code <>
CCE, an error occurred.
— If an error occurred call IPCCHECK to determine the error code
(returned in the
ipcerr
parameter).
—IfIOWAIT or IDONTWAIT was called with
filenum
=0 or no
filenum
specified, check the
fnum
value returned to determine
the socket for which I/O completed. (You can compare the
fnum
value with the
calldesc
value returned by IPCCREATE and the
vcdesc
value returned by IPCCONNECT and IPCRECVCN.)
— If both a send and receive request were pending, check the
returned
cstation
value to determine if a send completed (bit 1
is on) or a receive completed (bit 1 is off).
NOTE
A program does not need Privileged Mode capability in order to make
nowait NetIPC I/O requests.