FTP server cataloged procedure (FTPD)
The following sample shows a start procedure for the FTP server. No start procedure is required for the FTP client.
//FTPD PROC MODULE='FTPD',PARMS=''
//*********************************************************************
//* Descriptive Name: FTP Server Start Procedure *
//* File Name: tcpip.SEZAINST(EZAFTPAP) *
//* tcpip.SEZAINST(FTPD) *
//* SMP/E Distribution Name: EZAFTPAP *
//* *
//* Licensed Materials - Property of IBM *
//* "Restricted Materials of IBM" *
//* 5694-A01 *
//* (C) Copyright IBM Corp. 1995, 2005 *
//* Status = CSV1R7 *
//*********************************************************************
//*
//* SET PARM1=TCPIVP.TCPPARMS(TCPDATA)
//*
//FTPD EXEC PGM=&MODULE,REGION=4096K,TIME=NOLIMIT,
// PARM='/&PARMS'
//*
//* Uncomment the SET statement above when using the next two lines.
//* PARM=('ENVAR("RESOLVER_CONFIG=//''&PARM1''")',
//* '/&PARMS')
//*
//* PARM=('ENVAR("_BPX_JOBNAME=myftp")',
//* '/&PARMS')
//*
//* PARM=('ENVAR("KRB5_SERVER_KEYTAB=1")',
//* '/&PARMS')
//*
//**** IVP Note ******************************************************
//*
//* If executing the FTP installation verification procedures (IVP),
//* - Comment the first PARM card and uncomment both lines of the
//* second PARM card
//* - Uncomment the appropriate SYSFTPD and SYSTCPD DD cards for the IVP
//*
//********************************************************************
//**** _BPX_JOBNAME Note *********************************************
//*
//* The environment variable _BPX_JOBNAME can be specified
//* here in the FTPD procedure, so that all of the logged on
//* FTP users will have the same jobname. This can then
//* be used for performance control and identifying all FTP users.
//* To use this:
//* - Comment the first PARM card and uncomment both lines of the
//* third PARM card
//*
//********************************************************************
//**** KRB5_SERVER_KEYTAB Note ***************************************
//*
//* The environment variable KRB5_SERVER_KEYTAB can be specified
//* here in the FTPD procedure, so that the FTP server will use the
//* local instance of the Kerberos security server to decrypt tickets
//* instead of obtaining the key from the key table.
//* To use this:
//* - Comment the first PARM card and uncomment both lines of the
//* fourth PARM card
//*
//********************************************************************
//*
//* The C runtime libraries should be in the system's link
//* list or add them to the STEPLIB definition here. If you
//* add them to STEPLIB, they must be APF authorized.
//*
//* To submit SQL queries to DB2 through FTP, the DB2 load
//* library with the suffix DSNLOAD should be in the system's
//* link list, or added to the STEPLIB definition here. If
//* you add it to STEPLIB, it must be APF authorized.
//*
//CEEDUMP DD SYSOUT=*
//*
//* SYSFTPD is used to specify the FTP.DATA file for the FTP
//* server. The file can be any sequential data set, member
//* of a partitioned data set (PDS), or HFS file.
//*
//* The SYSFTPD DD statement is optional. The search order for
//* FTP.DATA is:
//*
//* SYSFTPD DD statement
//* jobname.FTP.DATA
//* /etc/ftp.data
//* SYS1.TCPPARMS(FTPDATA)
//* tcpip.FTP.DATA
//*
//* If no FTP.DATA file is found, FTP default values are used.
//* For information on FTP defaults, see z/OS Communications
//* Server: IP Configuration Reference.
//*SYSFTPD DD DISP=SHR,
//* DSN=TCPIP.SEZAINST(FTPSDATA)
//*SYSFTPD DD DISP=SHR,
//* DSN=TCPIVP.TCPPARMS(FTPSDATA)
//*
//* SYSTCPD explicitly identifies which data set is to be
//* used to obtain the parameters defined by TCPIP.DATA
//* when no GLOBALTCPIPDATA statement is configured.
//* See the IP Configuration Guide for information on
//* the TCPIP.DATA search order.
//* The data set can be any sequential data set or a member of
//* a partitioned data set (PDS).
//*SYSTCPD DD DISP=SHR,
//* DSN=TCPIP.SEZAINST(TCPDATA)
//*SYSTCPD DD DISP=SHR,
//* DSN=TCPIVP.TCPPARMS(TCPDATA)
//*