*DECK FCSIIXF 
USETEXT TEXTFCS;
      PROC FCSIIXF; 
*CALL COPYRITE
# TITLE FCSIIXF - INITIALIZE TRANSFER FILE.                            #
  
      BEGIN                            # FCSIIXF                       #
  
# 
**    FCSIIXF - INITIALIZE TRANSFER FILE. 
* 
*     C. J. RAMSAY                     87/11/03 
* 
*     THIS PROCEDURE INITIALIZES THE MBT ENTRY FOR THE TRANSFER FILE
*     THAT IS USED INTERNALLY BY THE FTP CONTROL STATEMENT. THIS FILE 
*     IS USED BY THE DISPLAY_DIRECTORY AND DISPLAY_FILE_NAMES COMMAND 
*     PROCESSORS WHEN OUTPUT IS TO BE WRITTEN TO THE DEFAULT OUTPUT 
*     FILE. 
* 
*     PROC FCSIIXF
* 
*     ENTRY   FTPINPUT   = FTP INPUT FILE NAME. 
*             FTPOUTPUT  = FTP OUTPUT FILE NAME.
*             FTPPROLOG  = FTP PROLOG FILE NAME.
* 
*     EXIT    XFERBLK    = TRANSFER FILE PARAMETER BLOCK. 
*             MBXX       = MBT ENTRY INDEX FOR TRANSFER FILE. 
* 
*     METHOD  GENERATE A UNIQUE LOCAL FILE NAME FOR THE TRANSFER FILE.
*             CREATE A MBT ENTRY FOR THE HOST NAME FILE.
*             INITIALIZE THE TRANSFER FILE PARAMETER BLOCK. 
*             RETURN LOCAL FILE WITH SAME NAME. 
* 
# 
  
# 
****  PROC FCSIIXF - XREF LIST
# 
      XREF
        BEGIN 
        FUNC FCSUGUL U;                # GENERATE UNIQUE LFN           #
        FUNC FCSUIMB B;                # INITIALIZE A MBT ENTRY        #
        FUNC FCSUVFN B;                # VALIDATE NOS FILE NAME        #
        PROC NETUCDA;                  # CONVERT DISPLAY CODE TO ASCII #
        PROC NETUCLR;                  # CLEAR AN AREA OF MEMORY       #
        PROC RETERN;                   # RETURN A LOCAL FILE           #
        END 
# 
****
# 
      ITEM DIND          I;            # DESTINATION INDEX             #
      ITEM LFN           U;            # TRANSFER FILE LOCAL FILE NAME #
      CONTROL EJECT;
# 
*     START MAIN PROCEDURE
# 
      LFN = FCSUGUL ("ZZZZZXF");       # GENERATE UNIQUE LFN           #
# 
*     INITIALIZE FILE TRANSFER PARAMETER BLOCK AND MBT ENTRY. 
# 
      NETUCLR (LOC(XFERBLK), PARSIZ$); # CLEAR TRANSFER PARAMETER BLOCK#
      DIND = 0;                        # INITIALIZE DESTINATION INDEX  #
      NETUCDA (LFN, 0, 7, XFERBLK,
               DIND, FALSE);           # CONVERT FILE NAME TO ASCII    #
      XFERSZ[0] = DIND;                # SIZE OF LOCAL FILE NAME       #
  
      IF FCSUIMB (FTXFER, LFN) AND
         FCSUVFN (XFERBLK)
      THEN
        BEGIN                          # MBT ENTRY + PARAMETER BLOCK   #
        MBXX = MBTX;                   # SAVE INDEX OF MBT ENTRY       #
        RETERN (MBT[MBXX]);            # RETURN FILE WITH SAME NAME    #
        END 
  
      RETURN;                          # RETURN TO CALLER              #
  
      END                              # FCSIIXF                       #
  
      TERM
