VLRQ0100 exit point format
The exit point for FTP server application request validation is QIBM_QTMF_SERVER_REQ. The exit point for FTP client application request validation is QIBM_QTMF_CLIENT_REQ. The interface that controls the parameter format for these exit points is VLRQ0100. The VLRQ0100 exit point interface contains certain parameters.
Required parameter format for the VLRQ0100 exit point interface
Parameter | Description | Input or output | Type and length |
---|---|---|---|
1 | Application identifier | Input | Binary (4) |
2 | Operation identifier | Input | Binary (4) |
3 | User profile | Input | Char (10) |
4 | Remote IP address | Input | Char (*) |
5 | Length of remote IP address | Input | Binary (4) |
6 | Operation-specific information | Input | Char (*) |
7 | Length of operation-specific information | Input | Binary (4) |
8 | Allow operation | Output | Binary (4) |
Here are the parameter descriptions:
- VLRQ0100 Parameter 1:
- Application identifier
- INPUT; BINARY(4)
- Identifies the TCP/IP application program that is making the request. Four different TCP/IP applications share the VLRQ0100 interface. The first parameter identifies which application is calling the exit program. The following table demonstrates the possible values.
Value | Application |
---|---|
0 | FTP client program |
1 | FTP server program |
2 | REXEC server program |
3 | TFTP server program |
- VLRQ0100 Parameter 2:
- Operation identifier
- Input; Binary(4)
- Indicates the operation (command) that the FTP user wants (requests) to perform.
The following table demonstrates the possible values when the application identifier (parameter 1) indicates the FTP client or FTP server program.
Value | Operation ID | Client subcommand | Server subcommand |
---|---|---|---|
0 | Start session | Open, SECOpen | New connection |
1 | Create directory/library | * | MKD, XMDK |
2 | Delete directory/library | * | RMD, XRMD |
3 | Set current directory/library | LCD | CWD, CDUP, XCWD, XCUP |
4 | List files | * | LIST, NLIST |
5 | Delete file | * | DELE |
6 | Send file | APPEND, PUT, MPUT | RETR |
7 | Receive file | GET, MGET | APPE, STOR, STOU |
8 | Rename file | * | RNFR, RNTO |
9 | Execute CL command | SYSCMD | RCMD, ADDm, ADDV, CRTL, CRTP, CRTS, DLTF, DLTL |
- VLRQ0100 Parameter 3:
- User profile
- INPUT; Char(10)
- The user profile for the FTP session.
- VLRQ0100 Parameter 4:
- Remote IP address
- INPUT; CHAR(*)
- The Internet Protocol (IP) address of the remote host system. For IPv4 connections, this string is in dotted decimal format (123.45.67.89); for IPv6 connections, this string is in colon delimited format (FE80::204:ACFF:FE7C:C84C). The remote host can be a client or a server that is based on the setting of the application identifier parameter.
- VLRQ0100 Parameter 5:
- Length (in bytes) of the remote IP address (parameter 4)
- INPUT; BINARY(4)
- The length of the remote IP address (parameter 4).
- VLRQ0100 Parameter 6:
- Operation-specific information
- INPUT; CHAR(*)
- Information that describes the requested operation. The contents of this
field depend on the values of the operation identifier (parameter 2), and
the application identifier (parameter 1). For example:
- For operation identifier 0 and application identifier 0
- There is no operation-specific information. This field is blank.
- For operation identifier 0 and application identifier 1
- The operation-specific information contains the IP address of the TCP/IP interface that connects to the local host (FTP server) for this session. The format for this string is dotted decimal (123.45.67.89), left-aligned.
- For operation identifiers 1 through 3
- The operation-specific information contains the name of the directory or library in which to perform the operation. The format for the directory or library name is an absolute path name.
- For operation identifiers 4 through 8
- The operation-specific information contains the name of the file on which to perform the operation. The format for the file name is an absolute path name.
- For operation identifier 9
- The operation-specific information contains the Control Language (CL) command the user requests.
- VLRQ0100 Parameter 7:
- Length of operation-specific information.
- INPUT; BINARY(4)
- Indicates the length of the operation-specific information (parameter 6). Length is 0 when the exit point does not provide operation-specific information.
- VLRQ0100 Parameter 8:
- Allow operation.
- OUTPUT; BINARY(4)
- Indicates whether to allow or reject the requested operation. The following table demonstrates the possible values.
Value | Description |
---|---|
-1 | Never allow this operation identifier: Reject this operation identifier unconditionally for the remainder of the current session. This operation identifier will not call the exit program again. |
0 | Reject the operation |
1 | Allow the operation |
2 | Always allow this operation identifier: Allow this operation identifier unconditionally for the remainder of the current session. This operation identifier will not call the exit program again. |