The HCON file transfer facility transfers files from a local system to a System/370 host over a display session. Transfers between a local system and the host take place over an active session. Start a transfer using the HCON Utility Program File Transfer Facility, the fxfer command, a program using the HCON file transfer programming interface, or the High-Level Language Application Programming Interface (HLLAPI).
HCON file transfers are either explicit or implicit. An explicit file transfer occurs when a user establishes the display session manually with the e789 or xhcon command, logs on to the host either manually or automatically, and starts a file transfer from an emulator subshell or another shell. In the explicit transfer, no input from the user is needed other than the file transfer option parameters. An implicit file transfer is a user-invoked transfer from a shell when the destination session is not currently running.
When the user invokes the transfer, the file transfer program checks if the emulator session is already running.
An implicit transfer requires an AUTOLOG script suitable for the user's logon procedure. The user is prompted for the logon ID string. The ID string contains the logon ID, the script name, and the optional AUTOLOG parameters for AUTOLOG. The user is not prompted for the logon ID string if the necessary information is specified within the session profile, entered into the Utility File Transfer screen, or specified by the fxfer command -x option.
When an implicit file transfer is started, additional file transfer requests can be sent to the current file transfer processes without logging on again to the host. The additional transfer requests are sent as long as the file transfer process stays logged on to the host, waiting for additional requests. The transfer process remains logged on for the time period specified by the File Transfer Wait Period characteristic in the session profile. The program then logs off from the host.
Note: File transfers made with the utility program should be explicit; otherwise, an error occurs indicating implicit file transfers cannot be attempted with the utility program. File transfers made with the fxfer command can be either explicit or implicit.
File transfers can be either synchronous or asynchronous.
A synchronous file transfer occurs in the foreground. No other activity can run on that emulator session until the current file transfer completes.
An asynchronous file transfer runs in the background, enabling you to initiate other processes in the shell. Additional asynchronous file transfers can be initiated without waiting for the previous transfer to complete. Each request is placed in a queue. The file transfers are executed sequentially until all are complete.
For a file transfer, the session profile can define:
For an implicit file transfer, the profile can define:
When making a transfer with the fxfer command, provide or override some of these settings by using the appropriate flags at the command line.
A file transfer can be interrupted by any unrecoverable communication error. When the file transfer is interrupted, it saves the state of the transfer in a RESTART file. An interrupted file transfer can be restarted from the beginning without loss of data.
If the host communication is lost or disconnected during an implicit file transfer, the file transfer attempts to recover by reconnecting and logging back on to the host. Automatic recovery is possible only with implicit transfers and is dependent on the length of recovery time defined by the File Transfer Recovery characteristic in the session profile.
In an automatic recovery, the file transfer process uses the logon script, the user logon ID, and the password to log on to the host and execute the file transfer. The file transfer occurs only if the link to the host is recovered within the time specified by the file transfer recovery time in the session profile. Once the host connection is established again, the file transfer resumes from the start. If communication cannot be established again, the file transfer program generates a RESTART file.
When the host connection is lost during a manual logon, log back on to the host before attempting to restart the file transfer.
If, when you begin a new file transfer, a transfer RESTART file exists in the $HOME directory, a message displays. The message states the RESTART file has been created and gives the choice of restarting the interrupted file transfer, deleting the RESTART file, or continuing with the current file transfer. If you elect to continue the present file transfer, the RESTART file for the previous transfer can be deleted or saved.
Attention: Even if you save the existing RESTART file, it will be lost if the new file transfer is interrupted, because the new RESTART file will overwrite the existing RESTART file.
How file transfers are restarted depends on whether the new file transfer is implicit or explicit: