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 the exit point is:
VLRQ0100
The
following table shows the parameters and parameter format for the VLRQ0100
interface.
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 |
Note: The asterisk symbol (*) represents control operations
that the FTP client exit does not recognize. The only way a client can use
these operations is with CL commands using the FTP client subcommand SYSCMD.
Operation identifier 9 controls the execution of CL commands.
- 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. The format
for this string is dotted decimal (123.45.67.89), left-aligned. 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 iSeries™ 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.
|