Exit Program for Open Stream File (QHFOPNSF) API


  Required Parameter Group:

1 Operation (OPNSF) Input Char(5)
2 File system job handle Input Char(16)
3 Reserved Input Char(20)
4 Open file handle Output Char(16)
5 Path name Input Char(*)
6 Path name length Input Binary(4)
7 Open information Input Char(10)
8 Attribute information table Input Char(*)
9 Length of attribute information table Input Binary(4)
10 Action taken Output Char(1)

Before applications can use the Open Stream File (QHFOPNSF) API with your file system, you must:

  1. Write an exit program that performs the open stream file operation on behalf of the API. For a detailed description of the API and its calling parameters, see Open Stream File (QHFOPNSF) API.

  2. Give the exit program's name when you register the file system with the Register File System (QHFRGFS) API.

After that, when an application calls the QHFOPNSF API, the API calls your exit program and passes it the parameters specified by the application. Your exit program performs the work and returns any data to the API. The API passes the data back to the calling application.


Authorities and Locks

None.


Required Parameter Group

The following shows the input parameters that the API passes to your exit program and the output parameters that the exit program must pass back to the API:

Operation (OPNSF)
INPUT; CHAR(5)

The abbreviation for the operation being performed (OPNSF).

File system job handle
INPUT; CHAR(16)

The work area or job identifier for use by the file system.

Reserved
INPUT; CHAR(20)

Reserved for future use. This parameter is set to blanks.

Except as noted, the following parameters are the same as the parameters for the API.

Open file handle
OUTPUT; CHAR(16)

Path name
INPUT; CHAR(*)

The API removes the file system name before passing the path name to the exit program.

Path name length
INPUT; BINARY(4)

Open information
INPUT; CHAR(10)

The exit program can ignore character 7, which describes the type of open operation to perform. This field is used by i5/OS HFS support during job cleanup if the job ends before the file is closed.

Attribute information table
INPUT; CHAR(*)

Length of the attribute information table
INPUT; BINARY(4)

Action taken
OUTPUT; CHAR(1)

API Functions

The QHFOPNSF API performs the standard functions described in Standard HFS API Functions and these additional functions:


Exit Program Requirements

You must create an exit program that performs the standard functions described in Standard HFS Exit Program Requirements and these additional functions:


Error Messages for Exit Program Use

This section lists the messages that the exit program can return to the API.

Message ID Error Message Text
CPF1F01 E Directory name not valid.
CPF1F02 E Directory not found.
CPF1F06 E Directory in use.
CPF1F07 E Authority not sufficient to access directory.
CPF1F08 E Damaged directory.
CPF1F2A E Number of open files exceeds limit.
CPF1F21 E File name not valid.
CPF1F22 E File not found.
CPF1F24 E File name already exists.
CPF1F26 E File in use.
CPF1F27 E Authority not sufficient to access file.
CPF1F28 E Damaged file.
CPF1F29 E Use of reserved file name not allowed.
CPF1F37 E File is a read-only file.
CPF1F41 E Severe error occurred while addressing parameter list.
CPF1F42 E Attribute information table not valid.
CPF1F43 E Attribute name not valid.
CPF1F44 E Attribute value is not valid.
CPF1F46 E Use of reserved attribute name not allowed.
CPF1F48 E Path name not valid.
CPF1F49 E Open information value not valid.
CPF1F61 E No free space available on media.
CPF1F62 E Requested function failed.
CPF1F63 E Media is write protected.
CPF1F66 E Storage needed exceeds maximum limit for user profile &1.
CPF1F71 E Exception specific to file system occurred.
CPF1F73 E Not authorized to use command.
CPF1F74 E Not authorized to object.
CPF1F75 E Error occurred during start-job-session function.
CPF1F77 E Severe parameter error occurred on call to file system.


Exit Program Introduced: V2R1
Top | Hierarchical File System APIs | APIs by category