The IOCTL call is used to control certain operating characteristics for a socket.
Before you issue an IOCTL socket command, you must load a value that represents the characteristic that you want to control into the COMMAND field.
The variable length parameters REQARG and RETARG are arguments that are passed to and returned from IOCTL. The length of REQARG and RETARG is determined by the value that you specify in COMMAND. See Table 1 for information about REQARG and RETARG.
Authorization: | Supervisor state or problem state, any PSW key. |
Dispatchable unit mode: | Task. |
Cross memory mode: | PASN = HASN. |
Amode: | 31-bit or 24-bit. Note: See "Addressability
mode (Amode) considerations" under CALL instruction API environmental restrictions and programming requirements.
|
ASC mode: | Primary address space control (ASC) mode. |
Interrupt status: | Enabled for interrupts. |
Locks: | Unlocked. |
Control parameters: | All parameters must be addressable by the caller and in the primary address space. |
Figure 1 shows an example of IOCTL call instructions.
WORKING-STORAGE SECTION.
01 SOC-FUNCTION PIC X(16) VALUE 'IOCTL'.
01 S PIC 9(4) BINARY.
01 COMMAND PIC 9(8) BINARY.
01 IFREQ.
03 NAME PIC X(16).
03 FAMILY PIC 9(4) BINARY.
03 PORT PIC 9(4) BINARY.
03 ADDRESS PIC 9(8) BINARY.
03 RESERVED PIC X(8).
01 IFREQOUT.
03 NAME PIC X(16).
03 FAMILY PIC 9(4) BINARY.
03 PORT PIC 9(4) BINARY.
03 ADDRESS PIC 9(8) BINARY.
03 RESERVED PIC X(8).
01 GRP-IOCTL-TABLE.
02 IOCTL-ENTRY OCCURS 100 TIMES.
03 NAME PIC X(16).
03 FAMILY PIC 9(4) BINARY.
03 PORT PIC 9(4) BINARY.
03 ADDRESS PIC 9(8) BINARY.
03 NULLS PIC X(8).
01 IOCTL-REQARG USAGE IS POINTER.
01 IOCTL-RETARG USAGE IS POINTER.
01 ERRNO PIC 9(8) BINARY.
01 RETCODE PIC 9(8) BINARY.
PROCEDURE DIVISION.
CALL 'EZASOKET' USING SOC-FUNCTION S COMMAND REQARG
RETARG ERRNO RETCODE.
For equivalent PL/I and assembler language declarations, see Converting parameter descriptions.