By Hari,
Prathibha and Raghunand,
CSY
Enhancements summary:
The DEVINFO CI
function returns information about devices in a system. It is a CI interface to
the existing AIFDEVICEGET intrinsic. Most of the items are serviced through the
AIFDEVICEGET
Syntax
DEVINFO (DeviceID,
item[,status])
Parameters
DEVINFO accepts
three parameters :
·
A device ID, the logical device number of the device about which
information is returned.
·
An item indicating what information is desired.
·
An optional status parameter to return the status of the function call.
Device ID
The device ID
identifies a device via its LDEV number. For ease of use, the LDEV number can
be a numeric string or an integer. There are cases (calls to DEVINFO that
return a list of LDEV numbers) when this parameter is not required. In such
cases, the device ID can be set to the empty string (“”), the string “0” or an
integer 0.
Item
This parameter
is a key word that indicates what information about an LDEV is desired. It is a
string parameter. A list of supported items and their description can be found
in a separate section below. The list includes the item name, its aliases,
return type of DEVINFO and a description of the item.
Status
Status is an optional 32 bit integer parameter. It is the CI variable
name where a DEVINFO error number can be returned. Zero indicates success.
Non-zero indicates a failure. Error
values returned in 'status' are the same
as the CIERROR value when an error occurs. If the 'status' parm
is passed, the CI will not set CIERROR and will not report an error
message. If 'status' is not specified
the CI performs its normal error handling.
Description of DEVINFO Items
The following table summarizes the items of the DEVINFO CI function. The
description includes the item string, one or more aliases, the return type, and
a brief description of the item.
|
Item Name |
Type |
Description |
|
AllPrinterDevList |
string
|
List of printer LDEVs separated by a space
Format:"Total/LDEV1 LDEV2 ... LDEVN" * |
|
AllTermDevList |
string
|
List
of terminal LDEVs separated by a space
Format:"Total/LDEV1 LDEV2 ... LDEVN" * |
|
AltOwnerPin |
int |
Device's
alternate owner |
|
AutoReply |
bool |
True
means device automatically replies to tape requests |
|
Available Up |
bool |
True
if the device is available to the System |
|
BlockModeType |
int |
7=both
line and |
|
BOT |
bool |
True
means tape device is at beginning of tape mark |
|
CommDevList |
string
|
List
of data comm devices. Format:
"Total/LDEV1 LDEV2 ... LDEVN" * |
|
DataAccepting |
bool |
True
if device accepts |
|
DevClass |
string |
IO
Device Class: "NOT CONFIG"," |
|
DevName |
string |
Device
name as used in the "adev" SYSGEN command |
|
DevSubType |
int |
Device
subtype. See IODEFAULT. |
|
DevType |
string |
Device
type: " |
|
DiscDevList
DiskDevList |
string |
List
of disk LDEVs separated by a space. Format:"Total/LDEV1
LDEV2 ... LDEVN" * |
|
DiskSizeMB
DiscSizeMB |
int |
Disk
size in megabytes |
|
DiskSizePages DiscSizePages |
int |
Disk
size in 2k pages (8 sectors per physical page) |
|
Down |
bool |
True
if device is unavailable to the system (not up) and no down pending |
|
DownPend |
bool |
True
if device has a down request pending |
|
DSPrinterDevList |
string |
List
of DS printer LDEVs separated by a space.
Format:"Total/LDEV1 LDEV2 ... LDEVN" * |
|
DSTermDevList |
string |
List
of DS terminal LDEVs separated by a space.
Format:"Total/LDEV1 LDEV2 ... LDEVN" * |
|
Duplicative |
bool |
True
all input operations are automatically Echoed |
|
|
bool |
True
if tape is positioned at the end of Tape |
|
Exists Exist |
bool |
True
if the device is configured |
|
FileName |
string |
Formal
device file designator, eg $STDIN. Will be blanks
for non-terminal devices |
|
FormsMounted |
bool |
True
if special forms are mounted for this Device |
|
HeaderDisabled |
bool |
True
if the header pages are suppressed in Printing |
|
IntDevClass |
int |
0=not
config,1=disk,2=tape,3=terminal, 4=CIPER printer,
5=printer(non-ciper), 6=spooled, 7=data comm, 8=DS teminal, 9=DS printer, 10=user-defined |
|
IntDevType |
int |
0-7=disk,
16=terminal, 24=tape, 32=printer |
|
Interactive |
bool |
True
if device requires human intervention for all input operations |
|
IntSpoolerState |
int |
Spooler
process state for LDEV: 0=initializing, 1=release, 2=start, 3=stop, 4=stop
pending, 5=suspend, 6=suspend pending, 7=resume, 8=active, 9=shut pending,
10=idle |
|
IntSubClass |
int |
Device
subclass: 0=unknown,1=connected to TMUX, 2=terminal,3=printer,4=virtual
terminal,5=virtual printer,6=PAD terminal,7=PAD printer,12=null
terminal,13=DHCF terminal,14=pseudo terminal, 15=pseudo null terminal. For
tape: 1=tape. For disk: 1=disk |
|
IntTapeError |
int |
Fatal
tape error value: 0=No fatal error, 1= tape runaway, 2=multiple tracks in
error, 3= timing error, 4=command reject, 5=unit failure, 6=data parity
error, 7=command parity
error |
|
IntTermType |
int |
Terminal
Type: 10=TT10, 18=TT18, 21=TT21, 22=TT22, 24=TT24, 26=TT26 |
|
InvalidLogonCnt |
int |
Invalid
logon counts for interactive device ** |
|
JobAccepting |
bool |
True
if device accepts HELLO or |
|
LineSpeed |
int |
Terminal
line speed setting: 30, 120, 480, 960, 19200, 38400 |
|
NotConfigDevList |
string |
List
of unconfigured LDEVs
separated by a space. Format:"Total/LDEV1 LDEV2 ... LDEVN" * |
|
Opened
|
bool |
True
means device exists and is opened/owned |
|
OwnerJobNum |
string |
Device's
owner's job/session number, "J|Snnn" |
|
OwnerPIN |
int |
|
|
Ownership
|
string |
Device's
ownership state: "OWNED"=owned by a process,
"OS"=temporarily owned by the operating system, ""=not
owned by a process |
|
PrinterDevList |
string |
List
of printers which are not DS nor serial Format:"Total/LDEV1 LDEV2 ...
LDEVN" * |
|
ReadTimeOut |
int |
Number
of seconds for next (timed) read, 0 or negative means timeout is disabled |
|
RecWidth |
int |
Device
record width in bytes |
|
SecurityDown |
bool |
True
if the device is downed by HP Security Monitor ** |
|
SerialPrinterDevList |
str |
List
of serial printers separated by a space.Format:"Total/LDEV1 LDEV2 ...
LDEVN" * |
|
SpoolerDevList |
string |
List
of spooler device separated by a space. Format:"Total/LDEV1 LDEV2 ...
LDEVN" * |
|
SpoolerOutfence |
int |
Current
outfence for the output spooler device, 0..14 |
|
SpoolerState |
string |
Spooler
process state for LDEV: " "RELEASE","START","STOP","STOP
PEND","SUSP", "SUSP
PEND", "RESUME","ACTIVE","SHUT PEND", "IDLE" |
|
SpoolFileID |
string |
"Onnn" ID of the spoolfile
currently being printed
on the device |
|
SpoolingEnabled |
bool |
True
if spooling has been enabled for this Device |
|
SpoolType |
string |