next up previous contents index
Next: Format Description Up: Technical details Previous: Remark on padding

List of errors

 

Table gif explains the meaning of the integer IERR returned as the last parameter of most EPIO subroutine calls, zero meaning no error. For each error two types of routines are quoted: those called by the user, and in which the error condition was detected, and those in which the error occurred.

Control is always returned to the user, but some of the errors (marked by * in first column) are so serious that it becomes meaningless to continue reading or writing on the unit concerned, at least after a limited number of them.

 
ErrorRoutineUserMeaning
routine
1 EPBLINEPREADEnd of file on reading or open failure on IBM
EPBOUTEPOUTLreading or writing
EPOUTS
2 EPBLINEPREADr/w parity, or I/O error (IBM)
EPBOUTEPOUTL
EPOUTS
EPRWND
3 EPBLINEPREADend of information on reading, or in some cases after an open error on IBM
4* EPBLINEPREADphysical record length ≤0

5* EPBLINEPREADphysical record length of record just read |>| actual length of block read or user buffer too small
6 see EPREADuser record chopped (|IREC| too small, status word 2) the actual length (including header) can be retrieved from status word 20 using EPGETW
7* see EPREADphysical header error; could be a record in the old format
8 see EPOUTSinvalid mode specified in call
EPOUTL
EPREAD
9 see EPREADcall to EPREADwith mode 11, 12, or 13, without prior call with |MODE=20|
You can also get this error reading OLD format, with |MODE=20| followed by 11, 12 or 13
10 EPBLINEPREADend-of-run (logical record length = 0)
11* EPBOUTEPOUTSunit not declared on JCL card,
EPOUTLor wrong |BLKSIZE| (only IBM)
EPBLINEPREAD
12 EPBOUTEPOUTSend of volume, or unrecovered write
EPOUTLparity (only IBM bib-IOPACK)
EPCLOS
EPRWND
13 EPUNITEPOUTSmaximum number of units reached
EPOUTL
EPRWND
EPADDH
EPSETW
EPSETA
EPREAD
EPGETA
EPGETW
14 see EPDROPunit does not exist
EPADDH
EPEND
15 see EPOUTSlogical record header (or complete record)
EPOUTLtoo long to fit in physical block
16 see EPGETWstatus word address out of range
EPGETA
EPSETW
EPSETA
17 see EPADDHuser switches from reading to writing
EPREADor vice versa, without rewinding unit
EPOUTL
EPOUTS
18 see EPREADdisplacement to start of logical record inconsistent with current logical record length, not tested by EPFRD
19 EPOUTLEPOUTLnumber of words to write < 0

EPOUTS
20 EPOUTLEPOUTLNegative record length or negative or
EPOUTSzero header length in user call
21 EPREADEPREADOld format and |MODE(≠)2|
22 EPBLINEPREADWrong 32 bit physical header read
23 EPREADEPREADLogical record unit neither 16 nor 32 bit (status word 3).
24 EPOUTLEPOUTLLogical record or header length
EPOUTS|>| 65536 for 16 bit headers
25 EPBLINEPREADError from cfseekreading in random access mode


: Overview of the error codes


next up previous contents index
Next: Format Description Up: Technical details Previous: Remark on padding

Janne Saarela
Tue May 16 09:44:28 METDST 1995