FTP
FTP
FTP
SC31-8780-07
z/OS Communications Server
SC31-8780-07
Note:
Before using this information and the product it supports, be sure to read the general information under “Notices” on page
471.
Tables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xiii
Contents v
CProtect subcommand— Set the protection level on commands . . . . . . . . . . . . . . . . . 161
DEBug subcommand—Set general trace options . . . . . . . . . . . . . . . . . . . . . . . 162
DELEte subcommand—Delete files . . . . . . . . . . . . . . . . . . . . . . . . . . . 166
DELImit subcommand—Display the file name delimiter . . . . . . . . . . . . . . . . . . . . 167
DIr subcommand—Obtain a list of directory entries . . . . . . . . . . . . . . . . . . . . . 168
DUMP subcommand—Set extended trace options . . . . . . . . . . . . . . . . . . . . . . 173
EBcdic subcommand—Change the data transfer type to EBCDIC . . . . . . . . . . . . . . . . . 175
EUckanji subcommand—Change the data transfer type to EUCKANJI . . . . . . . . . . . . . . . 176
FEature subcommand—Query FTP server for features it supports . . . . . . . . . . . . . . . . . 178
FIle subcommand—Set the file structure to File . . . . . . . . . . . . . . . . . . . . . . . 179
Get subcommand—Copy files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 180
GLob subcommand—Toggle expansion of metacharacters . . . . . . . . . . . . . . . . . . . 182
HAngeul subcommand—Change the data transfer type to HANGEUL . . . . . . . . . . . . . . . 184
HElp and ? subcommands—Display help information . . . . . . . . . . . . . . . . . . . . . 186
Ibmkanji subcommand—Change the data transfer type to IBMKANJI . . . . . . . . . . . . . . . 187
JIS78kj subcommand—Change the data transfer type to JIS78KJ . . . . . . . . . . . . . . . . . 188
JIS83kj subcommand—Change the data transfer type to JIS83KJ . . . . . . . . . . . . . . . . . 189
Ksc5601 subcommand—Change the data transfer type to KSC-5601 . . . . . . . . . . . . . . . . 190
LANGuage subcommand—Set the language used for FTP replies from the server . . . . . . . . . . . 192
LCd subcommand—Change the local working directory . . . . . . . . . . . . . . . . . . . . 193
LOCSIte subcommand—Specify site information to the local host . . . . . . . . . . . . . . . . . 195
LOCSTat subcommand—Display local status information . . . . . . . . . . . . . . . . . . . . 218
LMkdir subcommand—Create a directory on the local host . . . . . . . . . . . . . . . . . . . 225
LPwd subcommand—Display the current working-level qualifier . . . . . . . . . . . . . . . . . 228
LS subcommand—Obtain a list of file names . . . . . . . . . . . . . . . . . . . . . . . . 229
MDelete subcommand—Delete multiple files . . . . . . . . . . . . . . . . . . . . . . . . 232
MGet subcommand—Copy multiple files . . . . . . . . . . . . . . . . . . . . . . . . . 235
MKdir subcommand—Create a directory on the remote host . . . . . . . . . . . . . . . . . . 239
MOde subcommand—Set the data transfer mode . . . . . . . . . . . . . . . . . . . . . . 242
MPut subcommand—Copy multiple data sets to the remote host . . . . . . . . . . . . . . . . . 243
NOop subcommand—Test the connection . . . . . . . . . . . . . . . . . . . . . . . . . 246
Open subcommand—Connect to the FTP server . . . . . . . . . . . . . . . . . . . . . . . 247
PAss subcommand—Supply a password . . . . . . . . . . . . . . . . . . . . . . . . . 248
PRIvate subcommand—Set the protection level for data transfers to PRIVATE . . . . . . . . . . . . . 249
PROMpt subcommand—Toggle interactive prompting for M* commands . . . . . . . . . . . . . . 250
PROTect subcommand—Set the protection level for data transfers . . . . . . . . . . . . . . . . . 251
PROXy subcommand—Execute FTP subcommand on secondary control connections . . . . . . . . . . 252
PUt subcommand—Copy data sets to the remote host . . . . . . . . . . . . . . . . . . . . . 255
PWd subcommand—Display the current working directory . . . . . . . . . . . . . . . . . . . 257
QUIt subcommand—Leave the FTP environment . . . . . . . . . . . . . . . . . . . . . . 258
QUOte subcommand—Send an uninterpreted string of data . . . . . . . . . . . . . . . . . . . 259
RECord subcommand—Set the file structure to record . . . . . . . . . . . . . . . . . . . . . 261
REName subcommand—Rename files . . . . . . . . . . . . . . . . . . . . . . . . . . 262
REStart subcommand—Restart a checkpointed data transfer . . . . . . . . . . . . . . . . . . . 263
RMdir subcommand—Remove a directory on the remote host . . . . . . . . . . . . . . . . . . 264
SAfe subcommand—Set the protection level to safe. . . . . . . . . . . . . . . . . . . . . . 265
SChinese subcommand—Change the data transfer type to SCHINESE . . . . . . . . . . . . . . . 266
SENDPort subcommand—Toggle the sending of port information . . . . . . . . . . . . . . . . . 268
SENDSite subcommand—Toggle the sending of site information . . . . . . . . . . . . . . . . . 269
SIte subcommand—Send site-specific information to a host . . . . . . . . . . . . . . . . . . . 270
SJiskanji subcommand—Change the data transfer type to SJISKANJI . . . . . . . . . . . . . . . . 297
SRestart subcommand—Restart a stream data transfer . . . . . . . . . . . . . . . . . . . . . 299
STAtus subcommand—Retrieve status information from a remote host . . . . . . . . . . . . . . . 301
STREam subcommand—Set the stream data transfer mode . . . . . . . . . . . . . . . . . . . 308
STRucture subcommand—Set the file structure . . . . . . . . . . . . . . . . . . . . . . . 309
SUnique subcommand—Changes the storage method . . . . . . . . . . . . . . . . . . . . . 310
SYstem subcommand—Display the operating system name . . . . . . . . . . . . . . . . . . . 311
TChinese subcommand—Change the data transfer type to TCHINESE . . . . . . . . . . . . . . . 312
TSO subcommand—Use TSO commands . . . . . . . . . . . . . . . . . . . . . . . . . 314
TYpe subcommand—Set the data transfer type . . . . . . . . . . . . . . . . . . . . . . . 315
UCs2 subcommand—Change data transfer type to Unicode UCS-2 . . . . . . . . . . . . . . . . 319
Contents vii
Enter option—Override the default key mapping for Enter . . . . . . . . . . . . . . . . . . 395
GColornn option—Specify a color name . . . . . . . . . . . . . . . . . . . . . . . . 396
Geometry option—Specify the size and location of the initial GDDMXD graphics presentation space . . . . 397
GMCPnn option—Override GDDM multicolor patterns with workstation color names . . . . . . . . . 398
HostRast option—Perform raster image processing at the System/370 host . . . . . . . . . . . . . 399
NewLine option—Override the default key mapping for NewLine . . . . . . . . . . . . . . . 400
XSync option—Request that the X Window System process one request at a time . . . . . . . . . . 401
ZWL option—Tell GDDMXD/MVS to draw all lines using 0-width lines . . . . . . . . . . . . . 402
Keyboard functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 403
GDDMXD/MVS keyboard functions . . . . . . . . . . . . . . . . . . . . . . . . . 403
GDDMXD/MVS to X Window System keyboard functions . . . . . . . . . . . . . . . . . . 403
APL2 character set keyboard . . . . . . . . . . . . . . . . . . . . . . . . . . . . 404
Setting up hlq.GDXAPLCS.MAP . . . . . . . . . . . . . . . . . . . . . . . . . . . 404
Notices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 471
Trademarks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 479
Bibliography . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 481
z/OS Communications Server information . . . . . . . . . . . . . . . . . . . . . . . . 481
z/OS Communications Server library . . . . . . . . . . . . . . . . . . . . . . . . . 481
Planning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 481
Resource definition, configuration, and tuning . . . . . . . . . . . . . . . . . . . . . . 481
Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 482
Customization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 483
Writing application programs . . . . . . . . . . . . . . . . . . . . . . . . . . . . 483
Diagnosis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 484
Messages and codes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 484
Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 485
Contents ix
x z/OS V1R9.0 Comm Svr: IP User’s Guide and Commands
Figures
1. Sample output of the MORE program—first screen . . . . . . . . . . . . . . . . . . . . 24
2. Sample output of the MORE program—second screen . . . . . . . . . . . . . . . . . . . 24
3. FTP.DATA for FTP client . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
4. JCL to run FTP in batch using data sets . . . . . . . . . . . . . . . . . . . . . . . . 100
5. Contents of an INPUT DD data set . . . . . . . . . . . . . . . . . . . . . . . . . 100
6. JCL to run FTP in batch without using data sets . . . . . . . . . . . . . . . . . . . . . 101
7. Job to create a new GDS in batch . . . . . . . . . . . . . . . . . . . . . . . . . . 101
| 8. Submitting an FTP batch job with concatenated input . . . . . . . . . . . . . . . . . . . 101
9. How to issue the FTP subcommands from a data set . . . . . . . . . . . . . . . . . . . 103
10. How to issue the FTP subcommands from a z/OS UNIX file system . . . . . . . . . . . . . . 103
11. How to issue FTP subcommands from an EXEC . . . . . . . . . . . . . . . . . . . . . 104
12. How FTP subcommands can be solicited interactively from an EXEC . . . . . . . . . . . . . . 105
13. SMTP gateway overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 324
14. Example of preparing and sending mail . . . . . . . . . . . . . . . . . . . . . . . 327
15. TSO RECEIVE command. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 328
16. Example of a nondelivery note . . . . . . . . . . . . . . . . . . . . . . . . . . . 329
17. Example of an unknown recipient note . . . . . . . . . . . . . . . . . . . . . . . . 329
18. SMTP as a mail gateway . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 336
Before using this document, you should be familiar with the IBM Multiple Virtual
Storage (MVS™) operating system, the IBM Time Sharing Option (TSO), and z/OS
UNIX System Services and the z/OS UNIX shell. In addition, z/OS
Communications Server V1R9 should already be installed and customized for your
network. For information about installing, see the z/OS Program Directory. For
information about customizing, see the z/OS Communications Server: IP Configuration
Reference.
http://www.software.ibm.com/network/commserver/support/
Most problems can be resolved at this Web site, where you can submit questions
and problem reports electronically, as well as access a variety of diagnosis
information.
For telephone assistance in problem diagnosis and resolution (in the United States
or Puerto Rico), call the IBM Software Support Center anytime (1-800-IBM-SERV).
You will receive a return call within 8 business hours (Monday – Friday, 8:00 a.m.
– 5:00 p.m., local customer time).
Outside of the United States or Puerto Rico, contact your local IBM representative
or your authorized IBM supplier.
All of the exit routines described in this document are installation-wide exit routines.
You will see the installation-wide exit routines also called installation-wide exits,
exit routines, and exits throughout this document.
Samples used in this book might not be updated for each release. Evaluate a
sample carefully before applying it to your system.
For definitions of the terms and abbreviations used in this document, you can view
the latest IBM terminology at the IBM Terminology Web site.
The syntax diagram shows you how to specify a command so that the operating
system can correctly interpret what you type. Read the syntax diagram from left to
right and from top to bottom, following the horizontal line (the main path).
You must include all punctuation such as colons, semicolons, commas, quotation
marks, and minus signs that are shown in the syntax diagram.
Commands
Commands that can be used in both TSO and z/OS UNIX environments use the
following conventions in syntax diagrams:
v When describing how to use the command in a TSO environment, the command
is presented in uppercase (for example, NETSTAT).
v When describing how to use the command in a z/OS UNIX environment, the
command is presented in bold lowercase (for example, netstat).
Parameters are classified as keywords or variables. For the TSO and MVS console
commands, the keywords are not case sensitive. You can code them in uppercase
or lowercase. If the keyword appears in the syntax diagram in both uppercase and
lowercase, the uppercase portion is the abbreviation for the keyword (for example,
OPERand).
For the z/OS UNIX commands, the keywords must be entered in the case
indicated in the syntax diagram.
Variables are italicized, appear in lowercase letters, and represent names or values
you supply. For example, a data set is a variable.
Syntax examples
In the following example, the USER command is a keyword. The required variable
parameter is user_id, and the optional variable parameter is password. Replace the
variable parameters with your own values.
USER user_id
password
The first line of a syntax diagram that is longer than one line
Required operands
Required operands and values appear on the main path line.
REQUIRED_OPERAND
OPERAND
,
REPEATABLE_OPERAND_OR_VALUE_1
REPEATABLE_OPERAND_OR_VALUE_2
REPEATABLE_OPER_OR_VALUE_1
REPEATABLE_OPER_OR_VALUE_2
Nonalphanumeric characters
If a diagram shows a character that is not alphanumeric (such as parentheses,
periods, commas, and equal signs), you must code the character as part of the
syntax. In this example, you must code OPERAND=(001,0.001).
Default operands
Default operands and values appear above the main path line. TCP/IP uses the
default if you omit the operand entirely.
DEFAULT
OPERAND
variable
Syntax fragments
Some diagrams contain syntax fragments, which serve to break up diagrams that
are too long, too complex, or too repetitious. Syntax fragment names are in mixed
case and are shown in the diagram and in the heading of the fragment. The
fragment is placed below the main diagram.
Syntax fragment
Syntax fragment:
Required information
Before using this product, you should be familiar with TCP/IP, VTAM, MVS, and
UNIX System Services.
Related information
This section contains subsections on:
v “Softcopy information”
v “Other documents” on page xxii
v “Redbooks” on page xxiii
v “Where to find related information on the Internet” on page xxiii
v “Using LookAt to look up message explanations” on page xxv
v “Using IBM Health Checker for z/OS” on page xxv
Softcopy information
Softcopy publications are available in the following collections:
Other documents
For information about z/OS products, refer to z/OS Information Roadmap
(SA22-7500). The Roadmap describes what level of documents are supplied with
each release of z/OS Communications Server, as well as describing each z/OS
publication.
Title Number
DNS and BIND, Fourth Edition, O’Reilly and Associates, 2001 ISBN 0-596-00158-4
Routing in the Internet , Christian Huitema (Prentice Hall PTR, 1995) ISBN 0-13-132192-7
sendmail, Bryan Costales and Eric Allman, O’Reilly and Associates, 2002 ISBN 1-56592-839-3
SNA Formats GA27-3136
TCP/IP Illustrated, Volume I: The Protocols, W. Richard Stevens, Addison-Wesley ISBN 0-201-63346-9
Publishing, 1994
TCP/IP Illustrated, Volume II: The Implementation, Gary R. Wright and W. Richard ISBN 0-201-63354-X
Stevens, Addison-Wesley Publishing, 1995
TCP/IP Illustrated, Volume III, W. Richard Stevens, Addison-Wesley Publishing, 1995 ISBN 0-201-63495-3
TCP/IP Tutorial and Technical Overview GG24-3376
Understanding LDAP SG24-4986
z/OS Cryptographic Service System Secure Sockets Layer Programming SC24-5901
z/OS Integrated Security Services LDAP Client Programming SC24-5924
Redbooks
The following Redbooks™ might help you as you implement z/OS
Communications Server.
Title Number
Communications Server for z/OS V1R8 TCP/IP Implementation, Volume 1: Base SG24-7339
Functions, Connectivity, and Routing
Communications Server for z/OS V1R8 TCP/IP Implementation, Volume 2: Standard SG24-7340
Applications
Communications Server for z/OS V1R8 TCP/IP Implementation, Volume 3: High SG24-7341
Availability, Scalability, and Performance
Communications Server for z/OS V1R8 TCP/IP Implementation, Volume 4: Policy-Based SG24-7342
Network Security
IBM Communication Controller Migration Guide SG24-6298
IP Network Design Guide SG24-2580
®
Managing OS/390 TCP/IP with SNMP SG24-5866
Migrating Subarea Networks to an IP Infrastructure Using Enterprise Extender SG24-5957
SecureWay Communications Server for OS/390 V2R8 TCP/IP: Guide to Enhancements SG24–5631
SNA and TCP/IP Integration SG24-5291
TCP/IP in a Sysplex SG24-5235
TCP/IP Tutorial and Technical Overview GG24-3376
Threadsafe Considerations for CICS SG24-6351
Information about Web addresses can also be found in information APAR II11334.
Note: Any pointers in this publication to Web sites are provided for convenience
only and do not in any manner serve as an endorsement of these Web sites.
You can use LookAt from these locations to find IBM message explanations for
z/OS elements and features, z/VM®, VSE/ESA™, and Clusters for AIX and Linux™:
v The Internet. You can access IBM message explanations directly from the LookAt
Web site at www.ibm.com/servers/eserver/zseries/zos/bkserv/lookat/.
v Your z/OS TSO/E host system. You can install code on your z/OS systems to
access IBM message explanations using LookAt from a TSO/E command line
(for example: TSO/E prompt, ISPF, or z/OS UNIX System Services).
v Your Microsoft® Windows® workstation. You can install LookAt directly from the
z/OS Collection (SK3T-4269) or the z/OS and Software Products DVD Collection
(SK3T-4271) and use it from the resulting Windows graphical user interface
(GUI). The command prompt (also known as the DOS > command line) version
can still be used from the directory in which you install the Windows version of
LookAt.
v Your wireless handheld device. You can use the LookAt Mobile Edition from
www.ibm.com/servers/eserver/zseries/zos/bkserv/lookat/lookatm.html with a
handheld device that has wireless access and an Internet browser (for example:
Internet Explorer for Pocket PCs, Blazer or Eudora for Palm OS, or Opera for
Linux handheld devices).
You can obtain code to install LookAt on your host system or Microsoft Windows
workstation from:
v A CD-ROM in the z/OS Collection (SK3T-4269).
v The z/OS and Software Products DVD Collection (SK3T-4271).
v The LookAt Web site (click Download and then select the platform, release,
collection, and location that suit your needs). More information is available in
the LOOKAT.ME files available during the download process.
For additional information about checks and about IBM Health Checker for z/OS,
see IBM Health Checker for z/OS: User’s Guide. Starting with z/OS V1R4, z/OS users
can obtain the IBM Health Checker for z/OS from the z/OS Downloads page at
http://www.ibm.com/servers/eservers/zseries/zos/downloads/.
SDSF also provides functions to simplify the management of checks. See z/OS
SDSF Operation and Customization for additional information.
The information in this document includes descriptions of support for both IPv4
and IPv6 networking protocols. Unless explicitly noted, descriptions of IP protocol
support concern IPv4. IPv6 support is qualified within the text.
This document refers to Communications Server data sets by their default SMP/E
distribution library name. Your installation might, however, have different names
for these data sets where allowed by SMP/E, your installation personnel, or
administration staff. For instance, this document refers to samples in SEZAINST
library as simply in SEZAINST. Your installation might choose a data set name of
SYS1.SEZAINST, CS390.SEZAINST or other high-level qualifiers for the data set
name.
New information
v Allow FTP client to select source IP address, see “FTP command — Entering the
FTP environment” on page 30.
v IPv6 scoped address architecture API, see:
– “FTP command — Entering the FTP environment” on page 30
– “NETRC data set” on page 40
– “Open subcommand—Connect to the FTP server” on page 247
– “REXEC command—Execute a command on the remote host and receive the
results on your local host” on page 406
– “Using the NETRC data set” on page 408
– “RSH command—Execute a command on a remote host and receive the
results on your local host” on page 413
– “RHOSTS.DATA data set” on page 415
– “The z/OS UNIX orexec/rexec command—Execute a command on the remote
host” on page 417
– “The z/OS UNIX orsh/rsh Command—Execute a Command on the remote
host” on page 419
v FTP TLS/SSL RFC compliance, see:
– “Using security mechanisms” on page 50
– “AUth subcommand—Request security mechanism” on page 147
– “LOCSIte subcommand—Specify site information to the local host” on page
195
– “LOCSTat subcommand—Display local status information” on page 218
– “STAtus subcommand—Retrieve status information from a remote host” on
page 301
v FTP enhancements, see:
– “Sample FTP.DATA data set (FTCDATA)” on page 72
Changed information
v FTP unicode support, see:
– “LOCSIte subcommand—Specify site information to the local host” on page
195
– “SIte subcommand—Send site-specific information to a host” on page 270
– “TYpe subcommand—Set the data transfer type” on page 315
Deleted information
The APPC Application Suite is removed from the z/OS V1R9 Communications
Server product and therefore documentation describing APPC Application Suite
support has been deleted.
You might notice changes in the style and structure of some content in this
document—for example, headings that use uppercase for the first letter of initial
words only, and procedures that have a different look and format. The changes are
ongoing improvements to the consistency and retrievability of information in our
documents.
Summary of changes
for SC31-8780-06
z/OS Version 1 Release 8
The information in this document includes descriptions of support for both IPv4
and IPv6 networking protocols. Unless explicitly noted, descriptions of IP protocol
support concern IPv4. IPv6 support is qualified within the text.
This document refers to Communications Server data sets by their default SMP/E
distribution library name. Your installation might, however, have different names
for these data sets where allowed by SMP/E, your installation personnel, or
administration staff. For instance, this document refers to samples in SEZAINST
library as simply in SEZAINST. Your installation might choose a data set name of
SYS1.SEZAINST, CS390.SEZAINST or other high-level qualifiers for the data set
name.
New information
v FTP UTF-8 data transfer and storage, see the following:
– “LOCSIte subcommand—Specify site information to the local host” on page
195
– “SIte subcommand—Send site-specific information to a host” on page 270
Changed information
You might notice changes in the style and structure of some content in this
document—for example, headings that use uppercase for the first letter of initial
words only, and procedures that have a different look and format. The changes are
ongoing improvements to the consistency and retrievability of information in our
documents.
Summary of changes
for SC31-8780-05
z/OS Version 1 Release 7
The information in this document includes descriptions of support for both IPv4
and IPv6 networking protocols. Unless explicitly noted, descriptions of IP protocol
support concern IPv4. IPv6 support is qualified within the text.
This document refers to Communications Server data sets by their default SMP/E
distribution library name. Your installation might, however, have different names
for these data sets where allowed by SMP/E, your installation personnel, or
administration staff. For instance, this document refers to samples in SEZAINST
library as simply in SEZAINST. Your installation might choose a data set name of
SYS1.SEZAINST, CS390.SEZAINST or other high level qualifiers for the data set
name.
New information
v LISTSUBdir and NOLISTSUBdir parameters added to LOCSIte and SIte
subcommands.
v New examples added to GET, MGET, PUT, MPUT, LS, and MDelete
subcommands.
v MBSENDEOL and SBSENDEOL parameters defined for LOCSIte and SIte
subcommands.
Changed information
v Promotion of the use of IPv6 global unicast addresses - Site-local addresses were
designed to use private address prefixes that could be used within a site without
the need for a global prefix. Until recently, the full negative impacts of site-local
addresses in the Internet were not fully understood. The IETF has deprecated
the special treatment given to the site-local prefix. Because of this, it is preferable
to use global unicast addresses. This means we are replacing addresses and
prefixes that use the site-local prefix (fec0::/10) with ones that use the global
prefix for documentation (2001:0DB8::/32).
Deleted information
v OROUTED references
You might notice changes in the style and structure of some content in this
document—for example, headings that use uppercase for the first letter of initial
words only, and procedures that have a different look and format. The changes are
ongoing improvements to the consistency and retrievability of information in our
documents.
Understanding TCP/IP
TCP/IP is a set of protocols and applications that enable you to perform certain
computer functions in a similar manner independent of the types of computers or
networks being used. When you use TCP/IP, you are using a network of
computers to communicate with other users, share data with each other, and share
the processing resources of the computers connected to the TCP/IP network.
Computer networks enable you to share the data and computing resources of
many computers. Applications, such as departmental file servers, rely on
networking as a way to share data and programs.
Many forms of communication media are available today. Each is designed to take
advantage of the environment in which it operates. Communication media consist
of a combination of the physical network used to connect the computer nodes and
the language, or protocol, they use to communicate with each other.
Physical network
A physical network consists of electrical wiring and components, such as modems,
bridges, controllers, access units, telephone lines, fiber optic cables, and coaxial
cables. These are used to connect the computer nodes. The physical network can
connect two nodes in a single room or thousands of nodes communicating across
large geographic areas. The most common networks in use today are Local Area
Networks (LANs) and Wide Area Networks (WANs). LANs cover a limited
distance, generally one or two floors or buildings, while WANs, using
telecommunication facilities, are used for longer distances.
Network devices
See the z/OS Communications Server: IP Configuration Reference for more information
about network devices.
Addresses
A network address is a component of the communication network and is
associated with both hardware and software. The address is the means by which
the sending node selects the receiving node for data transfer. It is also used by the
receiving node to recognize what data is destined for it. An address is a unique
code assigned to every node on a network. But an address is formed differently for
different protocols. The length, position, and method used to specify an address
are unique for each protocol. A communication node using one protocol cannot
recognize the address of another protocol.
TCP/IP addresses
An address enables data to be routed to the chosen destination. Each destination in
your network, as well as any other TCP/IP network you have access to, can be
uniquely identified by its assigned address (either a 32-bit IPv4 address in dotted
decimal notation, or a 128-bit IPv6 address in colon hexadecimal notation).
v IPv4 TCP/IP address
An IPv4 TCP/IP address is a 32-bit number written in dotted decimal notation.
This scheme is numeric and consists of four groups separated by a period (.).
For example, 9.67.1.100 represents a single host on a single network. 193.5.86.9
represents another host on another network.
v IPv6 TCP/IP address
An IPv6 TCP/IP address is a 128-bit number written in colon hexadecimal
notation. This scheme is hexadecimal and consists of eight 16-bit pieces of the
address. For example, x:x:x:x:x:x:x:x represents a single host on a single network.
Alternate notations described in RFC 2373 are acceptable. For example,
FEDC:BA98:7654:3210:FEDC:BA98:7654:321 or ::1.
To indicate IPv6 prefixing use a slash followed by the number of prefix bits. For
example, use 12AB:0:0:CD30::/60 to indicate the prefix X'12AB00000000CD3'.
Most TCP/IP commands require you to include the address of the remote host
where the server you wish to access resides. Each link (physical or virtual) on a
host has an IP address.
Network names
An alternative to supplying a numeric address is to use the host name, rather than
the address, in TCP/IP commands. (Each host may be assigned at least one name.)
Your local host can resolve the name you supply in a command into the correct
numeric address. The names are translated using either a translation file or an
application known as a name server. Your ability to use network names depends
on how your TCP/IP network has been designed and which features have been
installed.
How you define the port number depends on your configuration. Some
applications make use of standard, or well-known, port numbers. Two applications
at the same address cannot use the same port number. If you are configuring your
system with multiple instances of TCP/IP on the same system, however, they will
have different addresses and therefore the same port number can be used for the
same function on each stack.
TCP/IP assumes the well-known port number unless you explicitly specify
otherwise when entering a TCP/IP command. A port number is entered as a
Connecting to the z/OS UNIX Telnet server from any client results in a session
with the z/OS shell as if the user had entered UNIX System Services from TSO in
line mode or character mode. Once the z/OS UNIX Telnet session has been
established, you can enter any UNIX System Services command that can be issued
from within the z/OS shell.
The FTP command provides subcommands that enable you to change the local and
remote directories, set the transmission character code, list remote files, delete
remote files, and send and receive files between hosts. You can use z/OS FTP
client to perform Structured Query Language (SQL) queries and to submit jobs to
JES for batch processing, as well as file transfer. FTP includes optional security
features such as Kerberos and TLS authentication, and server user ID and
password verification.
See Chapter 3, “File Transfer Protocol (FTP),” on page 29, for a complete list of FTP
functions.
Command Description
SMTPNOTE Composes and sends mail from you to users on local or remote hosts.
The TSO SMTPNOTE command helps you address the mail, set up a
copy list, and enter the text of the message. The date, time, and your
address are included automatically.
z/OS UNIX Composes and sends mail from you to users on local or remote hosts.
sendmail The z/OS UNIX sendmail command helps you address the mail, set up
a copy list, and enter the text of the message. The date, time, and your
address are included automatically.
RECEIVE Retrieves data that has been sent to you through the Job Entry
Subsystem (JES). You use the RECEIVE command for your TCP/IP mail
just as you do for other mail, messages, and data sets that are sent to
you.
See Chapter 6, “Sending electronic mail using SMTP commands,” on page 323 for
more information about the SMTP mail facility.
See Chapter 7, “Sending electronic mail using z/OS UNIX sendmail,” on page 359
for more information about the z/OS UNIX mail facility.
Command Description
LPQ Enables you to query a printer queue on a remote printer. You can query
a printer queue for a specific job, a specific user ID, or all the jobs in a
remote printer queue.
LPR Prints a data set on a remote printer. A variety of options enables you to
specify how and where the data set is printed.
LPRM Removes a job from a printer queue.
LPRSET Specifies remote printer and remote host names when they are not
specifically included in the Line Print commands.
In order to use z/OS Communications Server for V1R9 applications, you must be
authorized to use z/OS UNIX System Services. For information about z/OS UNIX,
see the z/OS UNIX System Services User’s Guide.
You can use the loopback address with any TCP/IP command that accepts IP
addresses. When you issue a command with the loopback address, the command is
sent out from your local host’s client and continues until it reaches the IP layer on
your local host. The command is then sent on to your local host’s server.
Note: Any command or data that you send using the loopback address never
actually goes out on any network.
You can also use a nonloopback local IP address for testing. It can be any local IP
address assigned to a device, even though the device may not be active, but cannot
be a multicast or broadcast address. The nonloopback address provides a faster
response but may not reach the IP layer on your host.
The loopback address is commonly used as the first step in diagnosing network
problems. The information you receive indicates the state of your system and
checks to ensure that the client and server code for the function you are testing is
operating properly. You should see the same response as for a normal, successful
command. If the client or server code is not operating properly, the same message
that would be returned for an unsuccessful command is returned.
TELNET management of your terminal for the remote host can also cause
operational differences. For example, the function keys described in “Using the
TELNET function keys” on page 23 can result in different actions.
When all of the display data does not fit on your screen, Linemode displays the
HOLDING message in the lower right corner of your screen. If this message
appears, press the CLEAR key to see the rest of the data.
If your TELNET session ends for any reason, the following message is displayed:
Session ended. <ENTER> to return to TSO.
If you invoke the services of the MVS Telnet 3270 server from a Telnet client that is
not Telnet 3270 capable, you cannot use applications in full-screen mode. Once in
line-mode, all nested Telnet sessions continue to be line mode. If you use TELNET
in line-mode to access an MVS or VM TELNET server, all subsequent nested
TELNET requests are automatically connected in line-mode as a start-stop TTY
terminal, and transparent (full-screen) operations are not possible.
When you return to TSO, a message explaining why the TELNET session ended is
displayed. The following is an example of what is displayed when you return to
TSO:
TELNET terminated -- Foreign host is no longer responding
Note: The z/OS TELNET client does not support the Secure Sockets Layer (SSL)
protocol.
Format
TELNET
23
foreign_host port_number
Help
(
Linemode DEBUG TRANslate data_set_name
Parameters
foreign_host
Specifies the name or IP address of the local or remote host. If you do not
specify the name or IP address of the host, you are prompted for the
foreign_host. This must be an IPv4 address or a host name that resolves to an
IPv4 address.
port_number
Specifies the port number to which you want to connect on the host. The
default is well-known port 23.
Help
Provides a description of the TELNET command, its subcommands, and how it
operates.
Linemode
Uses the line mode and prevents operation in the transparent mode.
In line mode, the foreign host output is displayed on your screen one line at a
time, without full-screen capabilities.
Note: You cannot use the TELNET command to log on to an MVS host from
an existing MVS line mode TELNET session. In this situation, the error
message TELNET requires a 327x-Type terminal is displayed.
Examples
v To log on to a host with an IP address of 1.1.2.3, enter:
TELNET 1.1.2.3
Usage
v The minimum abbreviation for each parameter is shown in uppercase letters.
v TELNET normally operates in transparent mode. In 3270 transparent mode, all
full-screen capabilities of the remote host are functional at your local display
station, but the PA1 key is the only special-function key whose intended
To invoke a TELNET subcommand while you are logged on to the foreign host,
press the PA1 key (transparent mode) or the designated PF key (line mode). After
you press the PA1 or PF key, you are prompted to enter a TELNET subcommand.
You can enter TELNET subcommands in uppercase or lowercase characters. Table 1
lists the TELNET subcommands.
Table 1. TELNET subcommands
Subcommand Description See
AO Stops the display of “AO—Terminate output display” on page
information 14
AYt Queries the existence of the “AYT—Query the connection” on page 15
connection
Brk Sends a Break or Attn “BRK—Send a Break or Attention
keystroke keystroke to a host” on page 16
Help or ? Displays help information “HELP or ?—Display help information”
on page 17
Ip Interrupts the current process “IP—Interrupt the process” on page 18
Pa1 Sends a PA1 keystroke in “PA1—Send the PA1 keystroke to a host”
transparent mode on page 19
Quit Disconnects from the foreign “QUIT—End the TELNET session” on
host page 20
Synch Clears the data path “SYNCH—Clear the data path” on page
21
Format
AO
Parameters
There are no parameters for this subcommand.
Usage
The AO subcommand is used to clear any output that has already been produced,
but has not been displayed on your terminal.
Format
AYt
Parameters
There are no parameters for this subcommand.
Usage
v You can use the AYT subcommand to check for the existence of a TELNET
connection. For example, if you feel that a command is taking longer than it
should to complete, issue the AYT subcommand to test whether the connection
is still active.
v If the connection exists and you are operating in transparent mode, the terminal
makes a sound. If you are operating in line mode, you receive a message from
the TELNET server.
Format
Brk
Parameters
There are no parameters for this subcommand.
Usage
You can use the BRK subcommand to end a command without terminating the
TELNET session.
Format
Help
?
Parameters
There are no parameters for this subcommand.
Usage
v After your TELNET connection is established, your display station screen is
controlled by the foreign host, so the help you see is different for line mode and
transparent mode. The help available in transparent mode is abbreviated because
TELNET does not have control of the screen.
v When you invoke the HELP or ? subcommand in line mode, TELNET displays
the help information one line after another, as in the following example:
Once connected, follow the log in and usage
procedures of the remote host.
To invoke one of several TELNET commands, hit a
PF key (PF4-12, PF16-24), and then enter any of
the following commands:
Help or ? -- Receive (this) assistance
AYT -- Are You There?
AO -- Abort Output
BRK -- Break
IP -- Interrupt Process
SYNCH -- Clear data path, except for TELNET commands
Quit -- Quit the TELNET session
Format
Ip
Parameters
There are no parameters for this subcommand.
Usage
You can use the IP subcommand if you want to stop a process that is in a loop, or
when you want to stop a process that you inadvertently started.
Format
Pa1
Parameters
There are no parameters for this subcommand.
Usage
v The PA1 subcommand operates only in transparent mode. This subcommand
replaces the PA1 attention key on the remote host.
v When there are nested TELNET sessions, use the PA1 key to enter a TELNET
subcommand in the first open TELNET session. To enter a TELNET
subcommand in the second open TELNET session, send a PA1 subcommand
from the first session.
v You would normally interrupt a PING command by pressing PA1. However, in
a transparent mode TELNET session, this key is used to invoke a TELNET
subcommand. You would issue a PA1 subcommand to interrupt the PING
command instead.
Format
Quit
Parameters
There are no parameters for this subcommand.
Usage
v You should use the QUIT subcommand carefully because it can create an MVS
error condition. If you do not reconnect within a timeout period, your TELNET
session is canceled.
v If you are logged on to an application on a remote host, and that application is
defined as disconnectable to VTAM and TCP/IP, you can use the QUIT
subcommand to disconnect from the remote host without logging off the
application.
v When you want to end a logon session with the host, use the logoff procedure
of the host.
For more information about defining applications to VTAM and TCP/IP, see the
z/OS Communications Server: IP Configuration Reference.
Format
Synch
Parameters
There are no parameters for this subcommand.
Usage
The SYNCH subcommand clears the data path to the host, except for any TELNET
subcommands in the data path. This subcommand enables you to ensure that
commands issued when the TELNET server is inactive are not executed when the
TELNET server becomes active.
Format
¢ control_character
`
Parameters
control_character
Indicates the ASCII control character that you want to send to the host. The
purpose of each control character is specific to the remote host.
Examples
To send Ctrl-p, use either: ¢p or `p.
Usage
v If you want to use ¢ or ` without indicating a control character, you must enter
these characters twice.
v The ASCII control characters are shown in Table 2.
Table 2. ASCII control characters
Character input ASCII output
`A – `Z 01 – 1A (Ctrl-a – Ctrl-z)
`{ 5B (left square bracket - [)
`} 5D (right square bracket - ])
`2 – `6 1B – 1F
`# 7F (DEL)
See “PA1—Send the PA1 keystroke to a host” on page 19 for information about
how to send the PA1 keystroke to the foreign host session.
Figure 1 on page 24 and Figure 2 on page 24 show the output of a BSD UNIX
program called MORE. This program displays one line or one page at a time. A
carriage return character (CR) causes it to display one line, while a blank character
causes it to display one page. If you are executing this program from an MVS host,
use the grave accent (`) character to suppress the CR that is normally sent when
you press Enter.
TELNET 3270 DBCS transform mode is used to provide 3270 DBCS emulation,
while the 3270 processing is done only at the host end of the connection. This
enables full-screen access from non-3270 terminals.
To log on to the server using 3270 DBCS transform mode, specify the LINEMODE
option on the TELNET client command line. The following banner is displayed if
transform mode is available:
VT282 SJISKANJI
VT100 /
TTY JIS78KJ
JIS83KJ
BIG5
EUCKANJI
DECKANJI
HANGEUL
KSC5601
SCHINESE
TCHINESE
Parameters
VT100
VT100 terminal type, full-screen mode—no DBCS support
VT282
VT282 terminal type, full-screen mode—with DBCS support
TTY
Line mode—no DBCS support. This option bypasses operation in transform
mode.
SJISKANJI
Shift JIS Kanji DBCS conversion
JIS78KJ
JIS Kanji 1978 DBCS conversion
JIS83KJ
JIS Kanji 1983 DBCS conversion
BIG5
Big-5 DBCS conversion
EUCKANJI
Extended UNIX code Kanji DBCS conversion
DECKANJI
DEC Kanji DBCS conversion
HANGEUL
Hangeul DBCS conversion
KSC5601
Korean Standard code KSC-5601 DBCS conversion
SCHINESE
Simplified Chinese DBCS conversion
TCHINESE
Traditional Chinese (5550) DBCS conversion
Context
For more information about using translation tables, see the z/OS Communications
Server: IP Configuration Reference.
For information about character sets, see “Character set cross reference table” on
page 441.
For information about the TELNET extensions for terminals other than the 3270
family, see Appendix C, “TELNET extensions,” on page 441.
Using FTP
Before transferring files between your local host and a remote host, or using any
other FTP functions, you must enter the FTP environment. Enter the FTP
environment by doing one of the following:
v Code PGM=FTP in a batch job and pass parameters using the PARM keyword.
See “Submitting FTP requests in batch” on page 98 for more information.
v Enter the FTP command from TSO.
v Enter the FTP command from the z/OS UNIX shell.
v Pass the FTP command parameters to the FTP Client API. See FTP Client API
information in the z/OS Communications Server: IP Programmer’s Guide and
Reference for complete details on the FTP Client API.
Guidelines:
1. The FTP client expects to be invoked with POSIX(ON). If you invoke the FTP
client with POSIX(OFF) you might experience unpredictable results because
many of the status and result functions that are meant to inform the user of
any errors during the transfer are dependent on POSIX(ON).
2. In a z/OS UNIX environment, using the FTP command in the format shown in
this example results in an error:
ftp 1.1.2.3 (trace
Instead, use the standard UNIX flag (for example, -d) or precede the left
parenthesis with an escape character, such as the backslash (\):
ftp 1.1.2.3 \(trace
Format
|
ftp
-a NEVER 21
GSSAPI foreign_host
TLS port_number
-d
-e
-f ftpdata_filename
-g
-i
-n
-p tcpip
-r NEVER
GSSAPI
TLS
-s srcip
-t data_set_name
-v
-w nn
-x
(
Exit TRACe TImeout nn TCP tcpip
Exit = nn
TRANslate data_set_name
Parameters
-a
NEVER
FTP does not attempt authentication upon initial connection.
Rule: When using the -f parameter from the TSO client, enclose the ftpdata
parameter in quotes. For example:
ftp -f ″//’SYS1.TCPPARMS(MYFTPDAT)’″
Usage
v When starting FTP in a TSO environment that includes support for the REXX™
programming language, you receive the following message:
CSV003I Requested module IRXSTK not found
>>> PASS
230 USER10 is logged on. Working directory is "/tmp".
Command
After successfully identifying yourself, you are prompted for a password if the
foreign host requires a password. If you enter the password correctly, you are
connected to the foreign host.
Notes:
1. You can use the data set NETRC to automatically log in to a remote host. For
information about using NETRC, see “NETRC data set” on page 40.
2. If you have enabled UTF-8 encoding of the control connection, the login
sequence is different. See “UTF-8 enabled control connection” on page 39 for
more information.
3. During the FTP login process, if you receive a series of 230-type replies there
might be errors in the server configuration files. These replies contain CD and
SITE command errors that might appear. These errors describe the failures of
CD and SITE commands listed in a user-level configuration file on the server.
Contact the system programmer for assistance.
See FTPD reply codesz/OS Communications Server: IP and SNA Codes for
additional information about 230-type replies.
4. When the FTP Client API is invoked by an application program, ddnames
associated with the application are not available to the spawned FTP client
process and the handling of prompts from the client differs. See the FTP client
behavior when started by the FTP Client API section in the z/OS
Communications Server: IP Programmer’s Guide and Reference for more
information.
For the procedure to enter the FTP environment using the FTP command, see
“Establishing and exiting a connection” on page 41 for more information.
The record length and block size of the output data set can be any size. If the
logical record length of the output data set is less than 100 bytes, some messages
could be truncated or wrapped around to the next line.
If you create INPUT and OUTPUT data sets, use the following guidelines:
v Specify the INPUT data set:
– Record format=FB.
– Logical record length=2080.
The logical record length of the input data set can be any value in the range
80–2080.
– Block size is a multiple of logical record length.
v Specify the OUTPUT data set:
– Record format=FB.
– Logical record length=160.
>>> PASS
230 USER10 is logged on. Working directory is "/tmp".
Command:
The difference is that the client issues the FEAT command during login to
negotiate use of UTF-8 on the control connection, as specified in RFC 2640 (see
Appendix D, “Related protocol specifications,” on page 449). In this example, the
FEAT reply indicates the server supports RFC 2640 (UTF8 and LANG keywords),
so the client issues LANG to commence UTF-8 encoding of the control connection.
Here is an example of a UTF-8 enabled client logging in to a server which does not
support UTF-8 encoding:
IBM FTP CS V1R5
FTP: using TCPCS
Connecting to: 9.67.113.37 port: 21.
220-FTPD1 IBM FTP CS V1R4 at vic135, 19:20:43 on 2001-10-15.
220 Connection will close if idle for more than 5 minutes.
>>> FEAT
211- Extensions supported
SIZE
MDTM
REST STREAM
211 End
NAME (9.67.113.37:USER10):
The client issued the FEAT command during login because EXTENSIONS UTF8 is
coded in FTP.DATA. Since the server FEAT reply did not indicate the server
supports RFC 2640, no LANG command was issued by the client. The client will
not send UTF-8 encoded data to this server.
The keywords machine, login, and password must be lowercase and the variables
user_ID and password might be case sensitive, depending on the remote host. (For
example, when using UNIX or AIX hosts, the user_ID and password values are case
| sensitive.) The hostname variable that is specified after the machine keyword can
| include scope information, as described in the support for scope information in the
| z/OS Communications Server: IPv6 Network and Application Design Guide.
To invoke the user_id.NETRC data set and automatically log on to the remote host
named MVS1, enter the FTP command as shown in the following example:
User: ftp mvs1
System:
IBM FTP CS V1R5
FTP: using TCPCS
Connecting to: 9.67.113.61 port: 21.
220-FTPD1 IBM FTP CS V1R2 at MVSVIC04, 12:00:51 on 2003-01-12.
220 Connection will close if idle for more than 5 minutes.
>>>USER user28
331 Send password please.
>>>PASS ********
230 USER28 is logged on. Working directory is "/u/user28".
Command:
Environment variables
The following are environment variables that are referenced by FTP:
Getting help
The FTP Help subcommands are listed in Table 5.
Table 5. FTP subcommands for getting help
Subcommand Description See
? Provides an introduction to “HElp and ? subcommands—Display help
using FTP. information” on page 186
HElp Displays help information for “HElp and ? subcommands—Display help
FTP. information” on page 186
man UNIX Shell command “Obtaining command help” on page 7
provides help information
about the z/OS UNIX FTP
client.
Command:
User: open 192.9.2.4
_
System:
Command:
User: account
System:
Usage: ACCT account-information
Command:
User: acct vmuser
System:
>>>ACCT ********
230 You now have write permission to VMUSER 191
Command:
User: close
System:
>>>QUIT
221 Quit command received. Goodbye.
Command:
Note: To use FTP, your user ID must have an OMVS segment defined (or
defaulted).
If STARTDIRECTORY MVS is defined at the server and no prefix is defined for the
user ID, the initial working directory is the user ID followed by a period. An
example of an initial working directory for USER1 is the following:
USER1.
If your TSO user ID is defined through Resource Access Control Facility (RACF®)
and a PREFIX is defined for the user ID, the PREFIX value is used as the initial
working directory.
The PREFIX of a TSO user ID can be set or changed by using the TSO PROFILE
command as follows:
1. Log in to TSO on the MVS system of the FTP server.
2. Set your new prefix using the TSO PROFILE command:
TSO PROFILE Prefix(prefix)
where prefix is any TSO prefix that you choose.
Notes:
a. You must enter both the opening and closing parentheses.
b. At this point, the TSO prefix is defined for your current TSO session but is
not known to RACF or the FTP server until you log off and log on.
3. Log off to save the new default working directory name.
The TSO prefix should now be your default working directory whenever you log
on to an FTP session on that FTP server. To verify that you set up the default
working directory correctly, perform the following steps:
1. Establish an FTP session to the FTP server.
2. Issue a PWD command. This should show the TSO prefix as your new default
working directory. For information on using the PWD command, see “PWd
subcommand—Display the current working directory” on page 257.
Notes:
1. To use the TSO PREFIX as your default working directory, you must have
installed RACF Version 1.9 and you must define your TSO user IDs through
RACF.
2. When you log in to an FTP server from a z/OS UNIX shell, the default local
working directory is the directory from which the FTP client was started.
>>>PASS ********
230 USER121 is logged on. Working directory is "/u/user121".
Command:
User: cd tcpip
System:
>>>CWD tcpip
250 HFS directory /u/user121/tcpip is the current working directory
Command:
User: cd ..
System:
>>>CWD ..
250 HFS directory /u/user121 is the current working directory
Command:
User: cd ’user121’
System:
250 "’user121’" is working directory name prefix.
Command:
>>>PASS ********
230 USER21 is logged on. Working directory is "/u/user121".
Command:
User: dir
System:
>>>PORT 9,67,112,25,4,25
200 Port request OK.
>>>LIST
125 List started OK.
total 2736
drwxr-xr-x 2 USER121 SYS1 0 Nov 20 18:15 IBM
-rwxr-xr-t 2 USER121 SYS1 389120 Feb 5 16:03 ftpdka
-rwxr-xr-t 2 USER121 SYS1 962560 Feb 5 16:04 ftpsrvka
-rw-r----- 1 USER121 SYS1 11648 Jan 20 14:30 g.s
drwxr-x--- 3 USER121 SYS1 0 Oct 21 17:50 msg
-rw-r----- 1 USER121 SYS1 1458 Jan 10 19:25 s.k
drwxr-x--- 2 USER121 SYS1 0 Feb 6 15:59 tcpip
drwxr-x--- 2 USER121 SYS1 0 Feb 6 17:29 test
250 List completed successfully.
Command:
User: ls
System:
>>>PORT 9,67,112,25,4,26
200 Port request OK.
>>>NLST
125 List started OK.
IBM
ftpdka
ftpsrvka
g.s
msg
s.k
tcpip
test
250 List completed successfully.
Command:
DIR provides detailed information about the data sets under the remote working
directory, while LS shows the data set names only.
User: cd ’tcpv3’
System:
>>>CWD ’tcpv3’
257 "’TCPV3.’" is working directory name prefix.
Command:
User: site directorymode
System:
>>>SITE directorymode
200 Site command was accepted
Command:
User: dir
System:
>>>PORT 1,1,2,2,4,39
200 Port request OK.
>>>LIST 125 List started OK.
Volume Unit
Referred Ext Used Recfm Lrecl BlkSz Dsorg Dsname
Pseudo Directory ETC
Pseudo Directory FTP
Pseudo Directory HOSTS
Pseudo Directory NSMAIN
Pseudo Directory PROFILE
Pseudo Directory STANDARD
Pseudo Directory TCPIP
Pseudo Directory TCPIPL62
Pseudo Directory TELNET
250 List completed successfully.
Command:
Command:
User: dir
System:
>>>PORT 1,1,2,2,4,40
200 Port request OK.
>>>LIST
125 List started OK.
Volume Unit Date Ext Used Recfm Lrecl BlkSz Dsorg Dsname
APCSPL 3380D 07/16/97 1 1 FB 80 8800 PS ETC.RPC
APCSPL 3380D 08/03/97 1 1 FB 80 3200 PS ETC.SERVICES
APCSPL 3380D 08/03/97 1 1 FB 80 3120 PS FTP.DATA
APCSPL 3380D 08/02/97 1 1 F 158 158 PS HOSTS.ADDRINFO
APCSPL 3380D 08/03/97 1 1 FB 80 3120 PS HOSTS.LOCAL
APCSPL 3380D 07/30/97 1 1 F 56 56 PS HOSTS.SITEINFO
APCSPL 3380D 07/15/97 1 1 FB 80 8800 PS NSMAIN.CACHE
APCSPL 3380D 07/28/97 1 1 FB 80 8800 PS NSMAIN.DATA
APCSPL 3380D 08/03/97 1 2 FB 80 3200 PS PROFILE.TCPIP
APCSPL 3380D 07/26/97 1 2 FB 80 3200 PS PROFILE.TCPIP.XA2
APCSPL 3380D 08/03/97 1 1 VB 5124 6160 PS STANDARD.TCPKJBIN
APCSPL 3380D 08/03/97 1 15 F 256 256 PS STANDARD.TCPXLBIN
APCSPL 3380D 08/03/97 1 1 FB 80 3120 PS TCPIP.DATA
APCSPL 3380D 06/29/97 1 2 FB 80 3200 PS TCPIPL62.CONFIG
APCSPL 3380D 07/29/97 1 15 F 256 256 PS TELNET.TCPXLBIN
250 List completed successfully.
Command:
Command:
User: ls
System:
>>>PORT 1,1,2,2,4,41
200 Port request OK.
>>>NLST
125 List started OK.
ETC
FTP
HOSTS
NSMAIN
PROFILE
STANDARD
TCPIP
TCPIPL62
TELNET
250 List completed successfully.
Command:
Command:
User: ls
System:
>>>PORT 1,1,2,2,4,42
200 Port request OK.
>>>NLST
125 List started OK.
ETC.RPC
ETC.SERVICES
FTP.DATA
HOSTS.ADDRINFO
HOSTS.LOCAL
HOSTS.SITEINFO
NSMAIN.CACHE
NSMAIN.DATA
PROFILE.TCPIP
PROFILE.TCPIP.XA2
STANDARD.TCPKJBIN
STANDARD.TCPXLBIN
TCPIP.DATA
TCPIPL62.CONFIG
TELNET.TCPXLBIN
250 List completed successfully.
Command:
Your default working directory on the local host is set according to the
environment in which the FTP client is invoked: $HOME in z/OS UNIX, your
MVS user ID in TSO.
>>>PASS ********
230 MVSUSER is logged on. Working directory is "/u/mvsuser".
Command:
User: lpwd
System:
Local directory is MVSUSER.
Command:
User: lcd tcpip
System:
Local directory name set to MVSUSER.TCPIP.
Command:
User: lpwd
System:
Local directory is MVSUSER.TCPIP.
Command:
User: lcd ’ftp.test’
System:
Local directory name set to FTP.TEST.
Command:
User: lpwd
System:
Local directory is FTP.TEST.
Command:
User: lcd ..
System:
Local directory name set to FTP.
Command:
User: lpwd
System:
Local directory is FTP.
Command:
Security considerations
The following describes security issues to consider when using FTP.
Many TLS/SSL applications work by having a client connect to one TCP port for
unprotected sessions and a separate TCP port for protected ones. FTP supports this
mode for compatibility with the original SSL design. However, FTP also provides a
more general solution for FTP security, where the client connects to the FTP server
on the regular, non-encrypted port and negotiates authentication and encryption
options.
| FTP assumes that the port configured by the TLSPORT statement (default
| TLSPORT is 990) is a protected port. An AUTH command is not needed and the
client completes the exchange of additional data with the server immediately after
a successful connection.
| FTP support for SSL/TLS protected sessions is based on the Internet Draft, On
| Securing FTP with TLS. As of October, 2005, On Securing FTP with TLS has been
| published as RFC 4217. The RFC level is different from the Internet draft. You can
| set the TLSRFCLEVEL configuration option to choose which level of On Securing
| FTP with TLS you want FTP to support.
| To use the new RFC 4217 function, the client and server must have the same
| TLSRFCLEVEL value. Otherwise, the client and server do not need to be
| configured with the same TLSRFCLEVEL values.
| Table 10 identifies important differences between the draft level and the RFC level
| of the TLSRFCLEVEL value.
| Table 10. Important differences between the draft level and the RFC level
| Draft level RFC level
| The server does not support the CCC and The server supports the CCC and AUTH
| AUTH commands when the connection is commands on TLS-secured connections that
| secured with TLS. are not implicitly secured by connecting to
| the port that is configured with the
| TLSPORT statement.
| The client does not allow CCc or CProtect The client allows the CCc and CProtect clear
| clear subcommands during a session that is subcommands during a TLS-secured session
| secured with TLS. that is not implicitly secured by connecting
| to the port that is configured with the
| TLSPORT statement.
There are optional FTP commands and statements for negotiating session security.
The following is a list of the configuration parameters that determine whether the
client uses a security mechanism to protect the session:
v See “FTP command — Entering the FTP environment” on page 30 for a
description of the start parameters.
Start parameters
-a TLS
-a GSSAPI
-r TLS
-r GSSAPI
v See “Changing local site defaults using FTP.DATA” on page 70 and the z/OS
Communications Server: IP Configuration Reference for a description of the
FTP.DATA statements.
FTP.DATA statements
SECURE_MECHANISM
SECURE_FTP
SECURE_CTRLCONN
SECURE_DATACONN
| SECUREIMPLICITZOS
CIPHERSUITE
KEYRING
| TLSPORT
| TLSRFCLEVEL
TLSTIMEOUT
SECURE_PBSZ
Table 13 shows how to set the transmission attributes for different host systems.
For example, VM or MVS host systems use EBCDIC for internal character
representation. A text file of ASCII data type contains displayable characters; a
carriage return (X'0D') and line feed (X'0A') are used to delimit a line. A text file of
EBCDIC data type contains displayable characters; the new-line character (X'15') is
used to delimit a line. A binary file contains a contiguous stream of bits with no
line delimiters.
Table 13. Recommended methods for data transfer
Transfer between host types Data transfer type Data transfer mode
EBCDIC and EBCDIC — DBCS text data IBMKANJI (EBCDIC) Stream
For more information about the DBCS data type keywords and examples, see “FTP
with traditional DBCS support” on page 87.
For information about setting data transfer type, see “TYpe subcommand—Set the
data transfer type” on page 315. For information about setting data transfer mode,
see “MOde subcommand—Set the data transfer mode” on page 242.
Restrictions:
1. The LISTSUBDIR statement applies to z/OS UNIX file operations only. MVS
data set operations are not affected.
2. The SITE LISTSUBDIR command is supported by z/OS FTP in V1R7 and later
releases. The FTP client must be communicating with a z/OS V1R7 or later FTP
server or an unrecognized parameter response results.
Example 1: GET and MGET enable you to obtain files from a remote host and send
them to the local host. In this example, FTP subcommands are issued from
MVSXA2 to MVSVIC03. See Table 12 on page 55 for other subcommands useful for
working with and transferring data.
Restrictions:
1. You do not have a choice of names for the local file as a result of the MGET
subcommand.
2. The MGET subcommand is not applicable for generation data groups (GDGs).
Restriction: The LISTSUBDIR statement applies to z/OS UNIX file operations only;
MVS data set operations are not affected.
Example 1: PUT and MPUT subcommands enable you to send files from a local
host to a remote host. In this example, FTP subcommands are issued from
MVSXA2 to MVSVIC03. The data set USER121.FTP.EXAMPLE on MVSXA2
contains the following members:
APPEND01
XA2FILE1
XA2FILE2
XA2FILE3
User: sunique
System: Store unique is ON
Command:
User: put ’user121.ftp.example(xa2file1)’ ’user121.ftp.example(f1from2)’
System: >>>SITE FIXrecfm 128 Lrecl=128 Recfm=FB BlockSize=6144
200 Site command was accepted
>>>PORT 1,1,2,2,4,50
200 Port request OK.
>>>STOU ’user121.ftp.example(f1from2)’
125 Storing data set USER121.FTP.EXAMPLE(F1FROM21) ( unique name )
250 Transfer completed successfully.
390 bytes transferred in 1.085 seconds.
Transfer rate 0.36 Kbytes/sec.
Command:
User: sunique
System: Store unique is OFF
Command:
User: cd ’user121.ftp.example.’
System: >>>CWD ’user121.ftp.example.’
257 "’USER121.FTP.EXAMPLE.’" is working directory name prefix.
Command:
User: lpwd
System: Local directory is USER121.
Command:
User: lcd ’user121.ftp.example’
System: Local directory name set to PDS USER121.FTP.EXAMPLE.
Command:
User: lpwd
System: Local directory is partitioned data set USER121.FTP.EXAMPLE.
Command:
Restriction: The MPUT command is not applicable for generation data groups
(GDGs).
locsite NOlistsubdir
prompt
Interactive mode is off
Command:
mput *
>>> PORT 127,0,0,1,4,11
200 Port request OK.
>>> STOR x
125 Storing data set /u/user1/x
250 Transfer completed successfully.
5 bytes transferred in 0.070 seconds. Transfer rate 0.07 Kbytes/sec.
Command:
ddname support
This section describes how the FTP client transfers a data set or file allocated in the
JCL for a batch job or by an interactive user prior to the transfer. The FTP client
refers to the data set with the ddname used on the allocation.
The FTP Client API does not support ddname transfers. The ddnames associated
with a batch job that invokes an application program using the FTP Client API are
not available to the spawned FTP client process.
The //DD: token prefixed before a 1–8 character local file name on a client file
access command indicates that the token which follows is actually a ddname,
rather than a local file name. This ddname must be allocated by the user (for
example, in the JCL that started the FTP client). The server file name must be
explicitly specified when a ddname is being used to access a local file for a put
command.
Sometimes the client requires DCB information before it opens a data set. Among
the situations where this is true are:
v Reading and writing spanned records (RECFM=VS or VBS)
v Reading and writing records that contain ASA control characters
When a data set is allocated using a ddname and the DCB information is needed
before open, the FTP client must be able to find the DCB information on the DD
statement that was used to allocate the data set.
DCB attributes for a ddname allocation are acquired using the attributes or data set
name specified in the DD statement DCB parameter. See the z/OS MVS JCL
Reference for restrictions on using backward references in the DCB parameter.
If the DD statement refers to a cataloged DASD data set, any DCB attributes that
are not specified are retrieved from the DSCB. DCB attributes on the DD statement
that override those found in the DSCB, except that LRECL=0 and BLKSIZE=0 do
not override a different value in the DSCB.
If the DD statement refers to a tape data set that is to be opened for input (PUT
//DD:), the record format that is specified on the DD statement is used instead of
the READTAPEFormat setting. If no record format (RECFM) is specified on the DD
statement, the READTAPEFormat setting (if any) is used.
Once the data set is opened by FTP, its attributes are set using the data returned in
the DCB by open.
Following is a sample job that shows usage of the //DD: token. In the sample job
there are two data sets that use the local file specification with the //DD: token.
One is a data set that is created as a new GDG data set in STEP01 (see the
OUTSET DD statement). Note that STEP02 (the FTP step) uses a backward
reference with the DD02 DD statement to locate the data set. Since the referenced
DD statement contains explicit DCB attributes, FTP can access the attributes prior
to opening the data set. The second data set is an old data set that existed before
the job was executed.
The FTP output for the above job is the following. Note that only a few selected
FTP trace statements are shown.
EZA1736I FTP (TCP TCPCS
EZA1450I IBM FTP CS V1R5 2003 090 19:22 UTC
EZA1466I FTP: using TCPCS
EZA1456I Connect to ?
EZA1736I 9.67.113.57 6321
EZA1554I Connecting to: 9.67.113.57 port: 6321.
220-FTPDJG1 IBM FTP CS V1R2 at MVS164, 14:58:36 on 2003-01-01.
220 Connection will not timeout.
EZA1459I NAME (9.67.113.57:USER33):
EZA1701I >>> USER USER33
331 Send password please.
EZA1701I >>> PASS
230 USER33 is logged on. Working directory is "/u/user33".
EZA1460I Command:
1 EZA1736I put //DD:DD02 data
2 MF0680 seq_open_file: DDname DD02 has filename USER33.MYGDG.G0087V00
EZA1701I >>> PORT 9,67,113,57,6,158
200 Port request OK.
EZA1701I >>> STOR data
125 Storing data set /u/user33/data
250 Transfer completed successfully.
EZA1617I 820 bytes transferred in 0.020 seconds. Transfer rate 41.00 Kbytes/sec.
EZA1460I Command:
3 EZA1736I get data //DD:DD01
4 MF0680 seq_open_file: DDname DD01 has filename USER33.TEST.S.A
EZA1701I >>> PORT 9,67,113,57,6,159
200 Port request OK.
EZA1701I >>> RETR data
125 Sending data set /u/user33/data
250 Transfer completed successfully.
EZA1617I 820 bytes transferred in 0.030 seconds. Transfer rate 27.33 Kbytes/sec.
EZA1460I Command:
EZA1736I quit
EZA1701I >>> QUIT
221 Quit command received. Goodbye.
1 Put subcommand using //DD: token for the local file
2 Trace statement showing that the local data set name is the new GDG data
set that was created in STEP01
3 Get subcommand using //DD: token for the local file
4 Trace statement showing that the local data set name is the existing data
set.
Load module transfer processing (at z/OS V1R2 Communications Server or later)
makes use of the IEBCOPY system utility, which must be available on both the
origin and destination hosts.
The following FTP file transfer commands will properly transfer MVS load
modules:
v get
v mget
v put
v mput
Because of the special requirements of MVS load modules, there are some
additional restrictions:
v The current working directory on both the client and the server must be the
source or destination load library. A load library is a PDS or PDSE with
RECFM=U.
v Only member names can be specified. No fully qualified names can be specified.
v File rename is not supported on load module transfer.
v Load modules can be transferred only between the same types of libraries. For
example, PDS to PDSE transfer is not allowed.
v If load modules are being sent to or from the z/OS FTP client, the client must be
started from one of the following environments:
– TSO terminal session
– TSO REXX
– TSO batch
– TSO background
– Unix System services terminal session
v A load module loading from a temporary data set will always be a REPLACE
operation, overwriting existing members. LMTR is not performed in STOU mode
(the user has toggled SUNIQUE on).
v There is no prompting on mput and mget subcommands. All files that match the
mask provided are transferred.
In most cases where load module processing cannot be performed, including
failure to abide by the restrictions given above, FTP completes the file transfer
using normal processing. Any load modules transferred with normal processing
will not be executable on the target system.
For the examples shown below, the following assumptions are made:
v The contents of load library USER.LINKLIB are:
Name Prompt Alias-of Size TTR AC AM RM
EZACDOPN 0000D268 00160F 01 31 ANY
EZAFTPLC 000E3758 00001B 01 31 ANY
FTP EZAFTPLC 000E3758 00001B 01 31 ANY
OPING EZACDOPN 0000D268 00160F 01 31 ANY
v USER1.TESTLIB is a PDS with RECFM=U.
>>> PASS
230 USER1 is logged on. Working directory is "USER1.".
Command:
cd ’user.linklib’
>>> CWD ’user.linklib’
250-The working directory may be a load library
250-The working directory "USER.LINKLIB" is a partitioned data set //1//
Command:
lcd ’user1.testlib’
Local directory might be a load library //1//
Local directory name set to partitioned data set USER1.TESTLIB
Command:
get oping
>>> XLMT PDS 0 oping //2//
250 PDS 53864 - send next command for load module transfer //2//
>>> PORT 9,67,43,65,4,41
200 Port request OK.
>>> RETR oping
125-Transferring load module //2//
125 DCB 32760 32760 //2//
COPY OUTDD=SYS00156,INDD=((SYS00157,R))
ORIGINAL PDS (BEFORE UNLOAD) WAS RECFM=U BLKSIZE=32760 LRECL=0
KEYLEN=0 OPTCD=X’20’ UCBTYPE=X’3010200F’ INDC=X’00’
ALLOCATED 2 CONTIGUOUS BUFFERS EACH 111K BYTES. WORK AREA HAS 757K
BYTES AVAILABLE.
Notes:
1. When a cd or lcd subcommand is performed, the user will be notified if the
new current directory is eligible for load module transfer processing. If this
message or reply is not seen when changing to a directory, load module
transfer will not be attempted.
2. There are additional flows between the client and server for load module
transfer.
3. The IEBCOPY system utility is invoked by FTP as part of load module transfer
processing. Note that this output is seen only when running with debug or
trace on. Otherwise the IEBCOPY output is placed in the syslog.
4. The actual load module and all of its aliases are transferred, even though (in
this case only) the alias was specified by the user.
5. When load module transfer processing cannot be performed, the user is warned
and the transfer might be completed using normal processing. The data set
USER.TESTLIB(PING) is not executable on the client system.
Note: Unless otherwise indicated, FTP.DATA data set refers to both the
/etc/ftp.data z/OS UNIX file and the MVS data set FTP.DATA.
| The FTP.DATA configuration data set is optional. If you specify the -f parameter on
| the FTP invocation, that parameter is used; otherwise, the FTP client uses one of
| the search orders shown in Table 14 on page 71 to obtain the local site parameter
| values.
See the z/OS Communications Server: IP Programmer’s Guide and Reference for a
description of the FTP.DATA search order used when FTP is started from the FTP
Client API.
You can find a sample FTP.DATA file in the SEZAINST (FTCDATA) data set.
You can change several of the FTP local site parameters during the FTP session by
using the LOCSITE subcommand. See “LOCSIte subcommand—Specify site
information to the local host” on page 195 for more information about using the
LOCSITE subcommand to change the local site parameters.
The FTPS.RC configuration data set is optional. The FTP server uses the following
search order to find the data set:
1. tso_prefix.FTPS.RC
2. userid.FTPS.RC
3. $HOME/ftps.rc
The following are the syntax rules for the FTPS.RC file:
v Only SITE and CWD commands are allowed for this file. (CD is also accepted
and is treated as CWD.)
v Each command must be contained in a single line.
v The SITE command can have multiple parameters.
v Comments are allowed, but the entire line will be commented out. In other
words, comments cannot exist on the same line as the actual command line.
v Each comment must begin with a semicolon.
v Comments can be entered between two or more command lines.
The following are examples of an FTPS.RC file with no errors and with errors.
v No errors (correctly coded).
; This is a sample configuration file for FTPS.RC
; You may enter comments by starting a line with semicolon (;). The
; entire line will be ignored.
; The server FTP.DATA file must have the statement DEBUGONSITE TRUE
; for the SITE DEBUG= subcommand to be accepted by the server.
SITE debug=all
; You may also insert comments between command lines.
; You may code either ’CD’ or ’CWD’.
CWD /user2
CD tmp
v Errors within the file.
; This is a sample configuration file for FTPS.RC
; You may enter comments by starting a line with semicolon (;). The
; entire line will be ignored.
; The line below has an error: errormount is an unrecognized parameter.
SITE errormount
; PUT subcommand is not accepted in this file.
PUT ’user2.tmp.banner’ ’user3.tmp.banner’
The FTP client references the SOCKSCONFIGFILE only when the FTP server is
known to it by an IPv4 IP address or by a DNS name that resolves to an IPv4 IP
address. The FTP client always connects directly to FTP servers known to it by
IPv6 addresses or by DNS names that resolve to IPv6 addresses.
See the z/OS Communications Server: IP Configuration Reference for details regarding
the contents of the SOCKS configuration file.
Some methods of specifying alternate translation tables for the FTP client apply to
both the control and data connection. If the translation table you need for data
transfer does not support the standard encodings for the portable character set,
you should establish different translation tables for the control and data
connections to ensure that FTP commands and replies are translated correctly.
Specify SBCS encoding for the data connection with one of the following methods:
v Code statements in FTP.DATA: SBDATACONN and SBTRANS.
v Use LOCSITE SBDataconn or LOCSITE XLATE subcommands to set the code
page.
v Place an MVS data set containing a binary translate table in the FTP client’s
search order for TCPXLBIN data sets. Use the CONVXLAT utility to generate an
MVS data set containing the binary translation table you require. See SBCS
translation table hierarchy in the z/OS Communications Server: IP Configuration
Reference for the search order used by the FTP client.
v Specify the TRANSLATE parameter as an FTP client start option. The translate
parameter applies to both the control and data connections.
If you need to establish different translate tables for the control and data
connection, use one of the other methods to establish the translate table, or else
change either translate table after starting the client.
If the table you specified with the TRANSLATE parameter does not support the
POSIX portable character set, start the client without specifying a host name so
the client does not attempt to send commands on the control connection before
the correct translation table is established. Then change the client’s translation
table after starting FTP.
You can specify different conversions for the control connection by using any of
the following methods:
v Code CTRLConn statements in the FTP.DATA file.
If you code EXTENSIONS UTF8 in the client FTP.DATA file, the control connection
uses 7-bit ASCII for commands and, when negotiated with the server, UTF-8
encoding of path names. The client can override the EXTENSIONS UTF8 statement
by using the FTP TRANSLATE start parameter or by issuing SITE and LOCSITE
subcommands. However, the client cannot resume UTF-8 encoding on the control
connection until you restart the client.
Extended trace point ID 81 is available for tracing the translate tables. When set to
ON, 256 bytes of each translate table can be traced as follows:
v When the FTP STAT command is sent to the server, the translate tables being
used by the server for the control and data connection are traced. When the FTP
LOCSTAT subcommand is entered, the translate tables being used by the client
are traced.
v When the LOCSITE subcommand is entered to change the client translate table,
the client traces the new table. When the server receives a SITE command to
change the translate table, the server traces the new table.
See the “SITE subcommand - DUMP parameter” on page 281 for instructions for
activating extended trace point 81 for the server. See the “DUMP
subcommand—Set extended trace options” on page 173 for instructions for
activating extended trace point 81 for the client.
The z/OS FTP server and client programs access data sets containing data that is
usually in EBCDIC format. To transfer these data sets to or from an ASCII-based
host requires translation tables. The transfer of DBCS data uses two tables—one for
DBCS characters and one for SBCS characters.
The FTP server and client can be configured to load a number of DBCS translation
tables. These are used during data set transfers to convert MVS host DBCS
characters and non-MVS DBCS characters. The FTP command TYPE B n or the
corresponding client subcommand is used to enter DBCS transfer mode and select
a DBCS table.
SBCS tables are used by the control connection to transfer commands; they are also
used by the data connection. Often the same SBCS table is used, but you might
want to select a different table to be used for data transfers. How you specify the
SBCS table for the data connection depends on whether the translation is to be
done by the FTP server or the FTP client.
When the EBCDIC-to-ASCII translation is done by the FTP server, you can issue a
SITE SBDataconn command to select the SBCS table to be used by the server for
data transfers.
When the EBCDIC-to-ASCII translation is done by the FTP client, you can use the
following parameters in your local FTP.DATA file to establish the SBCS tables:
CTRLConn Establishes the SBCS tables the client uses for control connections.
SBDataconn Establishes the SBCS tables the client uses for data connections.
Alternatively, you can use the TRANSLATE option of the FTP command to change
the SBCS and DBCS translation table hierarchy for both the control and data
connection. The TRANSLATE option results in the same SBCS table for both the
control and the data connection.
Note: The TRANSLATE option can be used as long as the table maintains the
integrity of the portable character set.
Another alternative when the FTP client is to perform the translation is to use the
LOCSITE SBDataconn subcommand to change the SBCS table used by the client
for the data connection.
DBCS subcommands
DBCS data sets are transferred using the standard FTP subcommands PUT and
GET. However, before the transfer commences, the current transfer type for the
session must be set to the required DBCS type. To set the transfer type to DBCS for
an FTP session, you must issue the appropriate FTP subcommand to the client or
the server, depending on where the DBCS conversion is to be done. The FTP
subcommands for DBCS support are listed in Table 15.
Table 15. FTP subcommands for DBCS support
Subcommand Description See
BIG5 Sets the transfer type “BIG5 subcommand—Change the data transfer
to BIG-5 type to BIG5” on page 148
EUckanji Sets the transfer type “EUckanji subcommand—Change the data
to EUCKANJI transfer type to EUCKANJI” on page 176
HAngeul Sets the transfer type “HAngeul subcommand—Change the data
to HANGEUL transfer type to HANGEUL” on page 184
Ibmkanji Sets the transfer type “Ibmkanji subcommand—Change the data transfer
to IBMKANJI type to IBMKANJI” on page 187
JIS78kj Sets the transfer type “JIS78kj subcommand—Change the data transfer
to JIS78KJ type to JIS78KJ” on page 188
JIS83kj Sets the transfer type “JIS83kj subcommand—Change the data transfer
to JIS83KJ type to JIS83KJ” on page 189
For more information about CCSIDs, see Character Data Representation Architecture
Reference and Registry, GC09-2207.
Table 17. Mapping of DBCS keywords to CCSIDs
DBCS keyword CCSID Description
BIG5 00947 IBM Big-5 DBCS
EUCKANJI 00954 Japanese EUC (G0, G1 and G2 only)
HANGEUL 00926 Korean DBCS-PC
JIS78KJ 00955 JIS X0208–1978
JIS83KJ 05048 JIS X0208–1990
KSC5601 00951 IBM Korean Standard code
SCHINESE 01380 Simplified Chinese DBCS-PC
SJISKANJI 00301 Japanese DBCS-PC
TCHINESE 00927 Traditional Chinese DBCS-PC
The FTP client and server provide double-byte language support using a set of
subcommands at the client and corresponding TYPE B commands at the server.
This support is described in “FTP with traditional DBCS support” on page 87. An
alternative to using the subcommands and TYPE B commands is to use the
multibyte support in FTP that is activated by the ENCODING keyword in the
FTP.DATA file, LOCSITE subcommand, or SITE command. Use the ENCODING
and MBDATACONN keywords to enable translation using system supplied
codepages. This method supports most of the double-byte languages currently
handled by the traditional DBCS (TYPE B) support.
For example, you can specify that you want to use the Chinese standard GB18030
provided by the codepage IBM-5488 for data conversion on your data connections.
To use the codepage IBM-5488, you must specify that multibyte encoding is to be
used. You can do this in one of the following ways:
v Code the following statement in the FTP.DATA file:
ENCODING MBCS
You can then specify which codepage the IBM-5488 encoded data is to be
converted to or from in the file system by doing one of the following:
v Code one of the following statements in the FTP.DATA file:
MBDATACONN (IBM-1388,IBM-5488)
or
MBDATACONN (UTF-8,IBM-5488)
v Issue one of the following subcommands:
LOCSITE MBDATACONN=(IBM-1388,IBM-5488
or
LOCSITE MBDATACONN=(UTF-8,IBM-5488)
Guideline: These steps control the client end of the data connection. To request the
same conversions at the server end of the data connection, the same statements
must be added to the server FTP.DATA file or use the SITE subcommand.
Dynamic allocation
FTP enables you to dynamically allocate a new physical-sequential data set,
partitioned data set (PDS), or partitioned data set extended (PDSE) for the purpose
of transferring data to be written to that data set. The following optional allocation
variables can be used by the client to override and turn off the hard-coded defaults
that affect the allocation of the data set.
where data_set_name is the name of the data set to be used as a model to set the
values of the logical record length (LRecl), the block size (BLKsize), the
retention period (RETpd), and the record format (RECfm) of a new data set.
_________________________________________________________________
2. Issue the following command to enable the LRecl, BLKSIze, and RECfm of the
model to be used:
SITE LRECL BLKSIZE RETPD RECFM
_________________________________________________________________
3. Issue the following command to create the new data set with the values
specified by the DCBDSN model:
PUT data_set_name
Note: If you are using a non-MVS client that does not support the SITE
command, you might be able to send the SITE command to the MVS
server by using the QUOTE command. For example:
QUOTE SITE DCBDSN=data_set_name
| Restriction: If more than one concurrent FTP user attempts to update a partitioned
| data set (PDS) using the FTP REName, DELEte, or PUt subcommands, the PDS
| directory might be accessed by more than one user simultaneously. This situation
| can cause problems with the PDS directory. To avoid this situation, when
| concurrent users will be using FTP REName, DELEte, or PUt subcommands to
| update a PDS, use a partitioned data set extended (PDSE).
Note: ISPFStats is ignored for sequential data sets. Also, the record format must be
either variable or fixed, and the record length must be less than 256.
Transferring PDS member to PDS member in block mode or in compress
mode differs in behavior from transferring in stream mode. If the user wants
to preserve the statistics of a PDS member that already has the statistics and
have the same statistics copied over to the target PDS member, transferring
in block mode or in compress mode is required.
v Effect of ISPFStats setting when issuing GET or MGET when the file does not
already exist
Whenever a PDS member is being transferred, FTP checks the setting of
ISPFStats. If the member does not already exist, FTP follows what the ISPFStats
is set to. For example:
– If ISPFStats is TRUE, FTP creates statistics for PDS members.
– If ISPFStats is FALSE, FTP does not create statistics.
v Effect of ISPFStats setting when issuing GET or MGET when the target PDS
member already exists
Whenever a member is being transferred, FTP checks the setting of ISPFStats. If
the targeted PDS member already exists, FTP considers whether the target
member has statistics and the setting of ISPFStats. For example:
– If ISPFStats is TRUE and the existing member has statistics, FTP updates the
statistics.
– If ISPFStats is TRUE and the existing member does not have statistics, FTP
creates the statistics.
– If ISPFStats is FALSE and the existing member has statistics, FTP updates the
statistics and sends a message indicating the behavior.
– If ISPFStats is FALSE and the existing member does not have statistics, FTP
does not create statistics.
The relationship between DCBDSN and GDGs is governed by MVS allocation rules
rather than FTP usage rules. Therefore, when creating a new GDG [put
‘sys1.proclib(jes2)’ user77.mygdg(+1)], at least one of the following must be true:
v A valid MODEL or PATTERN DSCB (for FTP, DCBDSN) specification must be
coded in the FTP.DATA file when the z/OS FTP server is started.
v A valid SITE DCbdsn=dataset_name must be issued before a PUT command is
issued.
v A data set having the same name as the GDG base must reside on the volume as
the user catalog that contains the GDG definition. In this case, neither a SITE
DCbdsn or a DCBDSN argument in the FTP.DATA data file is required.
94 z/OS V1R9.0 Comm Svr: IP User’s Guide and Commands
Allocation detects that a GDG is being created and looks in the VTOC of the
volume containing the USERCATALOG for a data set (uncataloged) that has the
same name as the GDG BASE (see the sample GDG JCL that follows).
Notes:
1. A model or pattern DSCB that is the same name as the GDG BASE cannot
exist on an SMS managed volume. This is an SMS restriction and is
documented in the DFP manuals pertaining to using data sets (generation
data sets or generation data groups).
2. Allocation does not generally have any requirements about the characteristics
of a MODEL DSCB (cannot be VSAM, must be on DASD). Most facilities
create one model DSCB for the entire system and everyone uses that model.
The system-wide model usually has no logical record length (LRecl), block
size (BLKsize), record format (RECfm), data set organization (DSORG) or
retention period (RETpd) associated with it.
3. The z/OS FTP server requires the MODEL DSCB to have a valid DSORG of
physical sequential organization (PS). Otherwise the SITE command for the
DCBDSN is ignored, and a message is issued indicating the DCBDSN was
ignored.
4. GDGs are MVS-specific structures. Other operating systems might not
support this structure. Using FTP to send GDG members to other operating
systems is not guaranteed to yield the same results as an MVS-to-MVS
transfer.
| 5. The REName subcommand does not guarantee serialization of the GDG data
| set. Use the PUt subcommand instead. See Informational APAR II08285 for
| more information.
Note: If there are explicit values associated with LRecl, BLKsize, RECfm, or the
SMS management equivalent parameters, these explicit parameters override
the values associated with the model DSCB specified on the DCBDSN.
The following is a sample Job Control Language (JCL) to create a model and the
GDG BASE:
USER77.MYGDG -MODEL/PATTERN
VOL=SER=CPDLB1 -Volume having USERCATALOG, where USER77 is defined
(NAME(USER77.MYGDG) -GDG BASE definition
GDG examples
Before you specify a (+nnn) value to create a new GDS, issue the following
command:
SITE DCBDSN=model
This subcommand specifies an MVS data set to be used as a model. The model
must have a DSORG of PS. The other DCB characteristics of the data set are not
checked.
Notes:
1. Failure to have a valid DCBDSN before trying to create a new GDS might
cause FTP or ALLOCATION to fail or to return unpredictable results.
2. If you issue a SITE DCbdsn LRecl BLKsize command before the creation of a
new data set, the LRecl and BLKsize parameters on the SITE command
override the LRecl and BLKsize parameters on the DCbdsn command.
For more information about GDGs, see MVS/DFP Version 3 Release 3, Using Data
Sets.
The following are sample FTP commands that access a GDG called JIMKEO.GDG.
Notes:
1. In the following examples, gdg (0), gdg (-1), and gdg (+1) specify which copy
of the GDG you are using. 0 indicates the latest version, -1 indicates the
previous version, and +1 indicates that a new version is created.
2. GDGALL is not supported by the z/OS FTP server. GDGALL processing occurs
when the base name for the GDG is specified without a relative index value.
3. The MPUT and MGET subcommands are not applicable for GDGs.
The following example illustrates a PUT to the latest existing GDS. The working
directory at the server is JIMKEO:
Command:
put my.gdg gdg(0)
>>>SITE FIXrecfm 150
200-Blocksize must be a multiple of lrecl for FB data sets. Blocksize set to
6150.
200 Site command was accepted
>>>PORT 129,34,128,245,126,229
200 Port request OK.
>>>STOR gdg(0)
125 Storing data set JIMKEO.GDG.G0055V00
250 Transfer completed successfully.
612 bytes transferred. Transfer rate 3.24 Kbytes/sec.
The following example illustrates a PUT to a new GDS [After the STOR is
complete, this new version is referenced by (0)].
Command:
put my.gdg gdg(+1)
>>>SITE FIXrecfm 150
200 Site command was accepted
>>>PORT 129,34,128,245,126,234
200 Port request OK.
>>>STOR gdg(+1)
125 Storing data set JIMKEO.GDG.G0056V00
250 Transfer completed successfully.
612 bytes transferred. Transfer rate 1.16 Kbytes/sec.
The following example illustrates a GET of the previous GDS into the local file
called my.gdg3:
Command:
get gdg(-1) my.gdg3
>>>PORT 129,34,128,245,126,239
200 Port request OK.
>>>RETR gdg(-1)
125 Sending data set JIMKEO.GDG.G0055V00 FIXrecfm 150
250 Transfer completed successfully.
612 bytes transferred. Transfer rate 2.77 Kbytes/sec.
The following example illustrates a GET that replaces the contents of my.gdg3 with
the most recent GDS:
Command:
get gdg(0) my.gdg3 (replace
>>>PORT 129,34,128,245,126,243
200 Port request OK.
>>>RETR gdg(0)
125 Sending data set JIMKEO.GDG.G0056V00 FIXrecfm 150
250 Transfer completed successfully.
612 bytes transferred. Transfer rate 3.36 Kbytes/sec.
| Rules: When coding the data set, file, or input stream for the ddname INPUT
| statement as described in Figure 4 on page 100, the following rules apply:
| v When you specify a data set for input as shown in Figure 4 on page 100, the
| SEQNUMSUPPORT statement coded in the client’s FTP.DATA file determines
| the disposition of sequence numbers that are in the data set:
| – If the FTP.DATA file has SEQNUMSUPPORT FALSE coded (this is the
| default), the file, data set, or input stream designated by the DDNAME
| INPUT statement that contains the FTP commands cannot have sequence line
| numbers in it. You must save the FTP command file as an unnumbered file.
| – If the FTP.DATA file has SEQNUMSUPPORT TRUE coded, the file, data set,
| or input stream that is designated by the DDNAME INPUT statement
| containing the FTP commands can have sequence numbers in it. These
| sequence numbers are removed.
| v You can add comments to the command input file using the REXX program that
| stacks the commands. The support includes standalone comment records and
| comments that are appended to the end of the line.
| To add standalone comments, use a semicolon (;) as the first non-space character
| on a line. For example:
| ; This is a stand-alone comment record
| The following example shows a blank user ID between a comment line and
| password.
| ; This below is a blank userid
|
| mypasswd
| v If a command is too long to insert on a line, type a plus sign (+) in place of the
| next command option and then enter the remaining options on the next line. For
| example:
| put local_file +
| remote_file
| v Use a blank followed by a plus sign (+) at the end of an FTP subcommand line
| as a continuation indicator for all FTP subcommands except for the QUOTE
| subcommand. When the continuation indicator is encountered at the end of an
| FTP subcommand line, the next line is appended to the subcommand. For
| example, the following command is interpreted as PUT SOURCE.DS.NAME
| DEST.DS.NAME:
| PUT SOURCE.DS.NAME +
| DEST.DS.NAME
Tips:
v FTP can be run in batch either by specifying data sets for input and output as in
Figure 4 on page 100, or without referring to data sets for input and output as in
Figure 6 on page 101. See “Allocating FTP input and output data sets” on page
38 for the attributes that are allowed on the INPUT and OUTPUT DD
statements.
v Use the (EXIT parameter if you want FTP to display an error return code and
then exit when certain errors are detected. See “FTP return codes” on page 105
for more information.
Requirements:
v To have the FTP client perform DB/2 queries in a batch job, the DSNLOAD
library must be in the link list or appear on a STEPLIB DD statement for the job.
v When connecting to a server such as a UNIX server where user IDs, passwords,
directory names, and file names are case-sensitive, the data in the FTP batch job
must be in the correct case.
Figure 4 on page 100 shows an example of the JCL required to submit a batch job
by referring to data sets for input and output.
Notes:
1. REGION=2048K is a minimum requirement. The requirement could increase
depending on the block size of the data set being transmitted.
2. The first JCL statement is a standard job statement. The next JCL statement is
an EXEC statement. It has PGM=FTP (a region parameter) because FTP might use
more storage than your default region size, and a PARM field.
3. For PARM=, you can specify any parameter that is valid when invoking FTP from
your terminal. See “Using FTP” on page 29 for more information. These
parameters are supported only on the PARM= field of the EXEC card.
As shown in Figure 4, to run FTP in batch mode, you must include the following
three DD statements:
SYSPRINT DD
Alternative name for the OUTPUT DD statement. You can use
SYSPRINT DD in place of the OUTPUT DD statement.
OUTPUT DD Specifies the data set where FTP is to place the client messages and
server replies generated during the FTP session.
INPUT DD Specifies the data set where the FTP subcommands to be
performed are located.
You can use the user_id.NETRC data set, as defined by the NETRC DD statement
in Figure 4, to identify the user ID and password for a batch-processed remote
login. You can also specify the user ID and password in the INPUT DD data set.
Figure 5 shows the records in an INPUT DD data set that contains the FTP
commands to be executed.
HOSTNAME
USERID PASSWD
DIR
PUT MYFILE.LISTING
QUIT
The first line of Figure 5 contains the name of the host that you want FTP to use.
The second line contains the user ID followed by its password. The next three lines
contain the FTP commands that you want FTP to perform. In this example, FTP is
doing a directory listing of the server to which you are connecting. The example
then instructs FTP to send a file to the server. The last line ends the connection.
Any client messages and server replies to the commands you execute appear in the
OUTPUT DD data set. The SYSPRINT can contain some additional messages that
relate to the execution of your FTP session.
Figure 7 shows step 1 creating a new GDS in batch and FTP getting the data set.
Note: All the GDG allocation in batch must be complete before the start of FTP.
Chapter 4. Transferring data using the File Transfer Protocol (FTP) 101
| v Additional FTP parameters can be concatenated to the FTP.DATA file. This
| technique is useful when you need additional debugging information and you
| do not want to change the source FTP data file or FTP command input.
| v Multiple data sets can be concatenated as input as long as you follow MVS JCL
| concatenation guidelines. See the z/OS MVS JCL Reference for additional
| information. If concatenated files contain both sequenced and unsequenced input
| command files, each file must have a semicolon (;) in the first data column. See
| FTP.DATA statement SEQNUMSUPPORT information in the z/OS
| Communications Server: IP Configuration Reference for additional information.
If the data transfer fails when CONDDISP=DELETE, the data set is deleted and
uncataloged.
If you are running a job scheduling program that detects files as they are
catalogued and then schedules a subsequent job for processing, the job scheduler
must take into account that setting CONDDISP=DELETE causes FTP to delete and
uncatalog the data set when the file transfer fails. For generation data groups, the
following might occur:
v FTP intends to create a new GDG(+1) and generates GDG.G00023V00.
v FTP of this data set fails and the GDG.G00023V00 data set is deleted and
uncataloged.
v A follow-on reference for the current GDG, for example, GDG(0), would cause
the data set GDG.G00022V00 to be accessed and old data to be processed.
By default, the FTP session dialog is printed on the terminal. If you want the
dialog sent to a data set rather than the terminal do one of the following:
TSO Specify an OUTPUT data set as part of the ALLOC
statement.
z/OS UNIX System Services Redirect the output to a z/OS UNIX file when
invoking the FTP command.
The following examples are written in REXX. See the z/OS TSO/E REXX Reference
and z/OS Using REXX and z/OS UNIX System Services for more information about
the REXX language.
where EXAMPLE1 is the name of the EXEC. This example must be invoked from the
z/OS UNIX shell.
/* rexx */
/* */
/* Input: infile - z/OS UNIX file containing FTP commands */
/* outfile - z/OS UNIX file to contain FTP output. If not specified */
/* output goes to terminal. */
say "FTP client return code is:" rc /* print client return code */
Figure 10. How to issue the FTP subcommands from a z/OS UNIX file system
The following is an example of the input file (either the input data set FTPIN1 or
the z/OS UNIX file /u/user117/ftpin1).
Chapter 4. Transferring data using the File Transfer Protocol (FTP) 103
krasik mvsftp
cd examples
put t.info t1.info
get t1.info t2.info (r
quit
Where:
krasik Is the user ID
mvsftp Is the password
t.info Is the file to be transferred
Note: To use FTP in a z/OS UNIX environment, TSO users must be authorized
users or have a default z/OS UNIX user ID.
/* rexx */
/* push commands on stack */
QUEUE "YKTVSH" /* server address */
QUEUE "krasik mvsftp" /* userid/password */
QUEUE "cd /tmp/examples/"
QUEUE "put t.info t1.info"
QUEUE "cd .."
QUEUE "cd dummy"
QUEUE "quit"
say "FTP client return code is:" rc /* print client return code */
exit 0 /* return */
Figure 11. How to issue FTP subcommands from an EXEC
Note: If data set DUMMY does not exist, FTP exits with a return code.
Figure 12 on page 105 is an example of how to call FTP from a TSO/E REXX EXEC
and enable it to solicit its FTP subcommands interactively from the user’s TSO
terminal. This requires that TSO/E has prompting enabled.
Tips:
v You can call this EXEC from another TSO/E REXX EXEC by invoking this EXEC
as a function call. For example, if this EXEC is named rexxftp, invoke it with the
following call: return_code = rexxftp()
v If commands are stacked for processing and the newstack and delstack
statements are removed from the sample, FTP subcommands are retrieved and
processed from the stack. If no QUIT command is processed, FTP obtains
commands interactively until a QUIT command is received.
v See the FTP Client API REXX function information in the z/OS Communications
Server: IP Programmer’s Guide and Reference for an alternate method of using
REXX to invoke the FTP client.
When FTP is started from the FTP Callable Application Programming Interface, all
elements that compose the values described below are returned to the application.
These include the client error code, the server reply code, and the FTP
subcommand code. The CLIENTERRCODES setting in the FTP.DATA file has no
effect on the FTP Callable API. See the z/OS Communications Server: IP Programmer’s
Guide and Reference for detailed information about using the FTP Callable API.
The FTP client issues message EZA1735I to display the standard return code and
the client error code when the (EXIT parameter is specified on the FTP command
an an error occurs. The standard return code is described in “FTP standard return
codes” on page 106; the client error code is described in “FTP client error codes”
on page 110. All possible computed return codes (excluding EXIT=nn) can be
derived from the information found in the message. EZA1735I is issued regardless
of the type of return code or whether client error logging is in use. See “FTP client
error logging” on page 111 for more information about logging client errors.
When a critical error occurs before the client can establish its environment, FTP
client initialization can exit with a return code set to client error code regardless of
the type of return code requested or the EXIT=nn value.
Chapter 4. Transferring data using the File Transfer Protocol (FTP) 105
Each subcommand has an EXIT_IF_ERROR flag that determines whether the FTP
client exits when an error occurs if you specify EXIT or EXIT=nn on the FTP
command. See “FTP subcommand codes” on page 107 for a list of the FTP
subcommand codes and their EXIT_IF_ERROR settings.
The following are the methods for computing the return code:
EXIT=nn
This method instructs the client to exit with a specified fixed return code for
any eligible error. The EXIT parameter is specified with an equal sign (=)
followed by a number in the range of 0–4095.
EXIT with CLIENTERRCODES FALSE (or unspecified) in FTP.DATA
This is the standard return code processing for FTP with EXIT specified. This
type of return code is described in “FTP standard return codes.” Some
limitations of this method are:
v The size of the return code might exceed the capacity (65536) of the SMF
record type 30 subtype 4.
v The return code issued as a batch job step completion code generally does
not match the original return code.
v The batch job step completion codes are difficult to interpret.
Because of these limitations, using one of the other return code options that are
available is recommended.
This method can be used in conjunction with client error logging even if no
EXIT parameter is in use. See “FTP client error logging” on page 111 for more
information about logging client errors.
EXIT with CLIENTERRCODES TRUE in FTP.DATA
This method uses a list of error codes, defined in “FTP client error codes” on
page 110, to describe different types of errors that occur within the FTP client.
For example, errors returned by the server are reported in the client as
FTP_SERVER_ERROR. The client error codes are the same in all environments
and are easier to interpret than standard return codes, but client error codes
contain less information about the cause of the error.
This method can be used in conjunction with client error logging even if no
EXIT parameter is in use. See “FTP client error logging” on page 111 for more
information about logging client errors.
EXIT with CLIENTERRCODES EXTENDED in FTP.DATA
The EXTENDED client error code is composed of an FTP client error code and
an FTP subcommand code, as described in “FTP client error codes extended”
on page 111. These return codes match in all environments, are easily
interpreted, and provide more information regarding the cause of the error
than the client error codes alone.
This method can be used in conjunction with client error logging even if no
EXIT parameter is in use. See “FTP client error logging” on page 111 for more
information about logging client errors.
Where:
yy Is the subcommand code, a number in the range 1-99 representing the
subcommand that the FTP client was executing when it detected the error.
Each subcommand has an EXIT_IF_ERROR flag that determines whether FTP
is exited when an error occurs if you specified EXIT on the FTP command.
Table 18 describes the possible FTP subcommand codes.
xxx
Is the reply code from the most recent reply sent by the FTP server. All FTP
server replies begin with a 3-digit number. All reply codes used by the z/OS
FTP server are listed the z/OS Communications Server: IP and SNA Codes. See
RFC 959 and RFC 1123 for a generic description of FTP reply codes.
Information about accessing RFCs can be found in Appendix D, “Related
protocol specifications,” on page 449.
For example, the FTP standard return code 16550 indicates the following:
16 The GET command failed.
550 The reply code from the FTP server. The latest reply from the server began
with the number 550.
00 and 000 are valid values for yy and xxx. This means that the error occurred at a
time when no FTP subcommand was being processed (yy=00) or at a time when no
reply had been received from the server for the current process. Message EZA1735I
(issued when EXIT was specified at client start) contains the standard return code
and the client error code.
Note: LOCSITE will EXIT_IF_ERROR only when there are no parameters on the
command.
Table 18. FTP subcommand codes
Code number Subcommand EXIT_IF_ERROR
00 No subcommand Determined by internal FTP CLIENT
selected ERROR CODE
1 AMBIGUOUS false
2 ? false
3 ACCT true
4 APPEND true
5 ASCII true
6 BINARY true
7 CD true
Chapter 4. Transferring data using the File Transfer Protocol (FTP) 107
Table 18. FTP subcommand codes (continued)
Code number Subcommand EXIT_IF_ERROR
8 CLOSE true
9 TSO false
10 OPEN true
11 DEBUG false
12 DELIMIT false
13 DELETE true
14 DIR true
15 EBCDIC true
16 GET true
17 HELP false
18 LOCSTAT true
19 USER true
20 LS true
21 MDELETE true
22 MGET true
23 MODE true
24 MPUT true
25 NOOP true
26 PASS true
27 PUT true
28 PWD true
29 QUIT true
30 QUOTE true
31 RENAME true
32 SENDPORT true
33 SENDSITE false
34 SITE false
35 STATUS true
36 STRUCTURE true
37 SUNIQUE true
38 SYSTEM true
40 TYPE true
41 LCD true
42 LOCSITE true (see previous note in “FTP
subcommand codes” on page 107)
43 LPWD false
44 MKDIR true
45 LMKDIR true
46 EUCKANJI true
47 IBMKANJI true
Chapter 4. Transferring data using the File Transfer Protocol (FTP) 109
FTP clients generally interpret only the reply code and ignore the text. The reply
code indicates to the client whether the server is still processing the command, or
whether the server finished processing the command successfully, or whether the
server stopped processing the command because of errors. For a generic
description of FTP server reply codes, see RFC 959 and RFC 1123. Information
about accessing RFCs can be found in Appendix D, “Related protocol
specifications,” on page 449. For a complete list of the replies used by the z/OS
FTP server, see z/OS Communications Server: IP and SNA Codes.
| Result: The return code 24 might supersede condition codes that were used in
| earlier releases.
Table 19. Client error codes
Code Error Examples of cause
01 FTP_INTERNAL_ERROR Failure to acquire storage, unexpected
error in REXX stack.
02 FTP_SERVER_ERROR Error reply returned by the server.
03 unused N/A
04 FTP_INVALID_PARAM Parameter specified on FTP command
is not valid.
05 FTP_OPEN_IOSTREAM_FAILED Failed to open the INPUT stream.
06 FTP_ALREADY_CONNECTED Attempt to OPEN when already
connected.
07 FTP_USAGE Syntax error in a subcommand,
combination of settings is not valid.
08 FTP_CONNECT_FAILED Attempt to reach unknown host, lost
connection, data connect failed.
09 FTP_TIMEOUT Timeout waiting for response on the
control or data connection.
10 FTP_SESSION_ERROR Socket error, other send/receive
errors.
11 FTP_LOGIN_FAILED User ID, password, or account info is
not valid.
12 FTP_INPUT_ERR Error reading INPUT or STDIN.
13 FTP_INPUT_EOF Internal use only.
14 FTP_NOTFOUND TCP/IP stack not found, resolver not
found, translation table not found or
could not be loaded.
15 FTP_INVALID_ENVIRONMENT Missing INPUT DD.
16 FTP_NOT_ENABLED Improper installation of TCP/IP.
17 FTP_AUTHENTICATION Security authentication or negotiation
failure, incorrect specification of
security keywords.
ecyy
Where:
ec The client error code set by the FTP client. See “FTP client error codes” on
page 110 for more information.
yy The subcommand code, which is a number in the range of 0–99. See “FTP
subcommand codes” on page 107 for a list of the subcommand codes.
The return code returned to the user or batch job is the 4-digit ecyy value. This
value can also be derived from the contents of message EZA1735I, which displays
the standard return code and client error code.
Chapter 4. Transferring data using the File Transfer Protocol (FTP) 111
Each subcommand has an EXIT_IF_ERROR flag that determines whether the FTP
client exits when an error occurs if you specified EXIT or EXIT=nn on the FTP
command. See “FTP subcommand codes” on page 107 for a list of FTP
subcommand codes and their EXIT_IF_ERROR settings.
If the client session is interactive, the message is displayed on the user terminal. If
the client session is not running in an interactive environment, the message
appears in the system log and in the batch job log. The information contained in
EZZ9830I includes:
v The address space name.
v The FTP subcommand code.
v The last reply code from the server (or 000 if none).
v Whether EXIT was specified at client start.
v The type of computed return code.
v The computed return code value based on the start parameters and
configuration settings. It might not match the actual return code observed from
the client.
Because EZZ9830I is written to the system log when the FTP client is running as a
batch job, the message can be used to drive automation. The computed return code
displayed in the message might be the EXIT=nn value, a standard return code, a
client error code, or a client error code extended.
The standard return code can be derived from the FTP subcommand code and last
reply from the server displayed in the message text. See z/OS Communications
Server: IP Messages Volume 4 (EZZ, SNM) for the complete message format of
EZZ9830I and an explanation of the computed return code value and the other
fields in the message.
To restart a block or compressed mode data transfer, checkpointing must have been
initiated prior to the start of the transfer. You can use either the LOCSITE or SITE
subcommands to initiate checkpointing.
v The LOCSITE subcommand parameter CHKPTINT controls the checkpoint
interval at the client, and the parameters CHKPTPREFIX and RESTGET control
the naming of the client checkpoint data set.
v The SITE subcommand parameter CHKPTINT controls the checkpoint interval at
the server.
Each of the LOCSITE/SITE parameters is also supported in the FTP.DATA file.
If the SITE JESOWNER= completes successfully, then the user has SAF
authority to other users’ jobs. If the SITE JESJOBNAME= completes
successfully, then the user has SAF authority to other jobs.
Note: The maximum LRecl for the submitted job is 254 characters. JES scans
only the first 72 characters of JCL.
_________________________________________________________________
2. Start a session with the FTP server on the MVS system to which you want to
submit the job.
_________________________________________________________________
Chapter 4. Transferring data using the File Transfer Protocol (FTP) 113
3. After you have entered your user ID and password, specify that you want to
interface to JES with a site parameter by entering the following:
SITE FILEtype=JES
_________________________________________________________________
4. To submit the JCL file you have created, enter the following:
PUT filename.filetype
_________________________________________________________________
When you are done, the JCL is then submitted to the JES internal reader and waits
for an initiator to start the job. The job is submitted under the user ID that you
used when you logged on to the system unless a different user ID is specified on
the JOB card.
The default for filetype is SEQ, and when you want to go back to normal FTP file
transfer mode, enter the following:
SITE FILEtype=SEQ
See the z/OS MVS JCL Reference for more information about using JCL.
1 2 3 4
Note: The LS subcommand lists the job ID without the job status or number of
spool files. Providing this spool information consumes a lot of computer
resources. Use the LS subcommand rather than the DIR subcommand
when the job status and number of spool files are not required.
Chapter 4. Transferring data using the File Transfer Protocol (FTP) 115
JOBID
The job ID, assigned by JES. This 8-character job ID, consisting of the word
JOB followed by a 5-digit number or the letter J followed by a 7-digit
number, is assigned by JES to identify your job.
OWNER
The user ID that owns the job.
STATUS
The current job status. The status is one of the following:
INPUT
The job was received, but not run yet.
HELD The JCL specified that the job is to be put on hold.
ACTIVE
The job is running.
OUTPUT
The job has finished and has output to be printed or retrieved. For
each OUTPUT job, there are spool files that consist of JCL messages,
JES messages, initiator and terminator messages, and SYSOUT. For
jobs with a status of OUTPUT, the number of spool files for each job
is specified in the DIR display output.
CLASS
The job class.
These fields are followed by information about the job termination (if it has been
reached) or clarification of the status field. This information might include an
ABEND code, an indication of a JCL error, an indication that the job is held as a
DUP, or the maximum return code for the job in a 4-digit decimal field.
v For a TSO user the following additional fields are displayed:
STEPNAME
The procstepname for the logon procedure.
PROCNAME
The logon procedure.
CPUTIME
The total CPU seconds used.
ELAPSED TIME
The total elapsed time in seconds.
v For an individual job, these additional fields are displayed for each spool file:
ID The ID for the spool file being listed.
STEPNAME
The job step that generated the spool file.
PROCSTEP
The procedure stepname (if any) that generated the spool file.
C The SYSOUT class of the spool file.
DDNAME
The DDNAME associated with this spool file.
BYTE-COUNT
The total number of bytes in the spool file.
To retrieve the spool output, use the FTP GET subcommand while in the
FILEtype=JES mode, specifying the job ID and the number of the spool file you
want.
You can specify a short form of the job ID by entering the letter J followed by a
4-digit or 5-digit job number. For example:
GET JOB05444.1 JOB05444.FILE1 (REPLACE
GET JOB05766.6 ASSEMBLY.FILE6
GET JOB06235.2 (REPLACE
GET JOB00275.4
GET J7438.3
In these examples, foreign_file is specified first, followed by local_file (on your client
machine) with the appropriate options, such as REPLACE. The first example
requests that the first spool file for JOB05444 be transmitted and replace the file on
your client named JOB05444.FILE1. The second command requests that the sixth
spool file for JOB05766 be transmitted to your client with the name
ASSEMBLY.FILE6.
If you have specified FILEtype=JES, you can use the MGET subcommand to
receive output from multiple jobs without specifying them one at a time. For
example, you can enter:
MGET parameter
Chapter 4. Transferring data using the File Transfer Protocol (FTP) 117
Receiving a group of spool files
To retrieve all the spool files associated with the same job simultaneously into the
same destination file, specify:
GET jobid.x
where x can be uppercase or lowercase. All the spool files are transferred together
and put into file jobid.x. The following line appears between each retrieved JES
spool file:
!! END OF JES SPOOL FILE !!
This enables you to easily find the end of each spool file.
You can also specify a data set name to send the files to, such as:
GET jobid.x data_set_name
All the spool files are put into the file named file.name. This eliminates the need
to retrieve each spool file separately. For example,GET J3456.X retrieves all the
spool files for JOB03456 and puts them in a file named J3456.X.
The command MGET with any parameter produces the same results as issuing
GET jobid.x commands for each job that is associated with your user ID.
Notes:
1. In JES2 (if JESINTERFACELEVEL=1), the spool files retrieved by GET and
tallied by DIR must be in a hold queue (commonly class=H).
2. In JES3 (if JESINTERFACELEVEL=1), the spool files must be in a hold queue
reserved for external writers. Ask your system programmer for the class that
says (HOLD=EXTWTR) in the JES3 installation stream.
3. The maximum record length that can be received at the server is 254 characters
before the record is truncated.
4. Receiving the output of a job does not remove the job output from the queue.
To remove the job output from the queue, you must issue a DELETE command.
Deleting a job
You can delete a job before or during execution, or you can delete the output of a
job before you have retrieved it. You do this by using the DELETE subcommand
while in the FILEtype=JES mode and the job ID. You can specify either the
8-character job ID or a short form of the job ID by entering the letter J followed by
a 1 to 7-digit job number. For example,
DELETE JOB05444
DELETE J3672
When you issue the DELETE command, all spool output related to a job is deleted.
The host returns the message CANCEL SUCCESSFUL after it deletes the job.
The outputfilename.outputfiletype defines the data set at the FTP client site that is
to contain the HELD job output when the job completes.
_________________________________________________________________
The MVS FTP server reads the data set jclfilename.jclfiletype and submits it to the
JES internal reader.
You know you are done when you see the following replies. The next two replies
indicate that the job has been submitted and the MVS FTP server is waiting for it
to complete. The third reply indicates that the job has finished and the files have
been copied to your output data set:
125 Submitting job outputfilename.outputfiletype FIXrecfm 80
125 When JOB05125 is done, will retrieve its output250 Transfer completed successfully.
Note: When submitting a job and automatically receiving the output, remember
that your session is suspended. You should use care, based on the
anticipated run time of your job, when using this function. If your session
times out, you must restart FTP and manually retrieve your output. Session
timeouts are caused by the following:
v The FTP Server does not wait long enough for the job that is executing to
end. Increase the JESPUTGETTO interval in the FTP.DATA data statement
on the server. This defaults to 10 minutes and defines the amount of time
FTP waits for the submitted job to complete before timing out.
v The FTP client does not wait long enough for the job to complete and the
server to retrieve the output. Increase the DATACTTIME timer value in
the client. This defaults to two minutes and defines the amount of time
the client waits for a response from the server.
v FTP client and FTP Server receive resets. This is usually caused by a
firewall that timed out the session because of a lack of activity. Add an
FTPKEEPALIVE statement or decrease the time interval on the current
Chapter 4. Transferring data using the File Transfer Protocol (FTP) 119
FTPKEEPALIVE statement in the FTP.DATA data file. The keepalive value
on FTPKEEPALIVE must be less than the expected value of the server.
JESINTERFACELEVEL differences
The FTP JESINTERFACELevel 2 allows increased functionality for users over that
available with JESINTERFACELevel 1. Jobs allowable by the system (JESSPOOL
RACF class) whether they are in held or nonheld output class can be viewed.
Information about jobs such as held/dup for jobs on the internal reader, CPU time
of running jobs, and number of sysout data sets for completed jobs can be
displayed.
If the user does a DIR subcommand without any operands, the display shows
matches of the search criteria — one line per task. If the user does a DIR
subcommand for a specific JOBID, the status of the job is listed and, if the status is
OUTPUT, it lists information about all the sysout data sets created by this job (and
available in the JES spool data set at the time of access). If a JOBID is supplied and
the job is active, it lists information about the job step name, cpu busy, and elapsed
time.
The subcommands DIR, LS, MDELETE, and MGET allow wildcard (*) filtering on
a specific jobid only if JESINTERFACELevel 2 is active. A DIR subcommand results
in the use of the LIST FTP command. An LS, MDELETE, or MGET subcommand
results in the use of the NLST FTP command.
The NLST command is used under the covers for MGET and MDELETE to obtain
lists of the resource names to issue individual GET or DELETE subcommands
against. For job IDs, the list is simply a list of JES job IDs. For sysout data set IDs,
the list is a list of JES job IDs suffixed with sysout data set numbers — in the same
syntax that is supported by the GET and DELETE subcommands.
LIST, NLST, MDELETE, and MGET all show different behaviors for
JESINTERFACELevel 2 over JESINTERFACELevel 1. This is because LIST and
NLST use the filters for JESINTERFACELevel 2, and the commands DIR, LS,
MDELETE, and MGET use LIST and NLST.
v For job IDs, an NLST command returns:
JOB00013
JOB00034
STC00067
v For sysout data set IDs, an NLST command returns:
JOB00013.1
JOB00013.2
JOB00013.3
JOB00013.4
Chapter 4. Transferring data using the File Transfer Protocol (FTP) 121
JES security
If FTP.DATA does not set the JESINTERFACELevel to 2, the FTP server behaves as
in releases prior to z/OS Communications Server level V2R10. FTP clients are
allowed to submit jobs to JES, retrieve held output that matches their logged in
user ID plus one character, and delete held jobs that match their logged in user ID
plus one character.
If JESINTERFACELevel is set to 2, then FTP clients have the ability to retrieve and
delete any job in the system permitted by the Security Access Facility (SAF)
resource class JESSPOOL. For that reason, JESINTERFACELevel=2 should be
specified only if the proper JES and SDSF security measures are in place to protect
access to JES output. The SAF controls used for JESINTERFACELevel=2 are
essentially a subset of those used by SDSF. Therefore, if an installation has
customized SAF facilities for SDSF, then they are configured for FTP JES level 2.
Before customizing the FTP-to-JES interface, you must complete JES customization.
For example, JESJOBS is an SAF class that controls which users can submit jobs to
JES. JESSPOOL is the SAF class that controls which users can access output jobs.
Customize these SAF classes before beginning customization of the FTP-to-JES
interface.
JESSTATUS can be changed by an FTP client using the SITE command to filter jobs
in INPUT, ACTIVE, or OUTPUT state. The SDSF resources checked for these states
are ISFCMD.DSP.INPUT.jesx, ISFCMD.DSP.ACTIVE.jesx, and
ISFCMD.DSP.OUTPUT.jesx, respectively. At login time (USER command), the
default value is set to ALL if READ access is allowed to all three classes. Otherwise
it attempts to set it to OUTPUT, ACTIVE, and then INPUT if the appropriate
READ access is allowed. If no READ access is allowed to any of the classes,
JESSTATUS is set to OUTPUT but JESOWNER and JESJOBNAME cannot be
changed from the default. In this way, SAF controls can be put in place to limit
FTP clients to whatever status of jobs an installation requires.
At login time, JESOWNER has the value of the logged in user ID. Authority to
change JESOWNER is obtained by READ access to RACF profiles
ISFCMD.FILTER.OWNER. An FTP client with READ access to
ISFCMD.FILTER.OWNER is allowed to change the JESOWNER parameter using the
SITE command.
At login time, JESJOBNAME has the value of the logged in user ID plus an
asterisk (*). Authority to change JESJOBNAME is obtained by READ access to
When a user issues a DIR command for a specific jobid, a check for READ access
to JESSPOOL resource nodeid.userid.jobname.jobid is made. This check is
performed to prevent a different user (one who happens to know a jobid of
another user’s job) from obtaining status information, even though the user was
not allowed to filter on OWNER. If a user is not allowed READ access, the
following reply is sent:
550 RETR fails: nodeid.ownerid.jobname.jobid. User not authorized.
JES examples
The following example shows the JCL file USER121.JCL.CNTL(SMFALL) being
submitted to the JES. Before FTP commands are issued, only the data set
USER121.FTP.EXAMPLE exists on MVSXA2.
Chapter 4. Transferring data using the File Transfer Protocol (FTP) 123
User: ftp 9.67.113.24 621
System:
IBM FTP CS V1R5
FTP: using TCPCS
FTP.DATA FILE NOT FOUND. USING HARDCODED DEFAULT VALUES.
Connecting to 9.67.113.24, port 621
220-FTPSERVE IBM FTP CS V1R2 at MVSVIC03.TCP.RALEIGH.IBM.COM,
19:03:
on 2003-01-17
220 Connection will close if idle for more than 5 minutes.
NAME (<host>:tsouserid):
User: user121
System:
>>>USER user121
331 Send password please.
Password:
>>>PASS ********
230 user121 is logged on. Working directory is "/u/user121".
Command:
User: dir
System:
>>>PORT 9,67,112,25,4,38
200 Port request OK.
>>>LIST
125 List started OK.
USER121A JOB00067 INPUT
250 List completed successfully.
Command:
User: dir
System:
>>>PORT 9,67,112,25,4,39
200 Port request OK.
>>>LIST
125 List started OK.
USER121A JOB00067 ACTIVE
250 List completed successfully.
Command:
User: dir
System:
>>>PORT 9,67,112,25,4,40
200 Port request OK.
>>>LIST
125 List started OK.
USER121A JOB00067 OUTPUT 4 Spool Files
250 List completed successfully.
Command:
Command:
User: dir
System:
>>>PORT 9,67,112,25,4,41
200 Port request OK.
>>>LIST
125 List started OK.
USER121A JOB00067 OUTPUT 4 Spool Files
250 List completed successfully.
Command:
User: get job00067.x spoolall
System:
>>>PORT 9,67,112,25,4,42
200 Port request OK.
>>>RETR job00067.x
125 Sending all SPOOL files for requested JOBID.
250 Transfer completed successfully.
5935 bytes transferred in 4.755 seconds. Transfer rate 1.25 Kbytes/sec.
Command:
Chapter 4. Transferring data using the File Transfer Protocol (FTP) 125
User: get job00067.5 spool5
System:
>>>PORT 9,67,112,25,47
200 Port request OK.
>>>RETR job00067.5
550 Index 5 is greater than number of spool files for JOB00067
Command:
User: dir
System:
>>>PORT 9,67,112,25,4,50
200 Port request OK.
>>>LIST
125 List started OK.
user121A JOB00067 OUTPUT 4 Spool Files
250 List completed successfully.
Command:
User: delete job00067
System:
>>>DELE job00067
250 Cancel Successful
Command:
User: dir
System:
>>>PORT 9,67,112,25,4,51
200 Port request OK.
>>>LIST
125 List started OK.
No jobs found on Held queue
250 List completed successfully.
Command:
User: site filetype=seq
System:
>>>SITE filetype=seq
200 Site command was accepted
Command:
User: quit
System:
>>>QUIT
221 Quit command received. Goodbye.
READY
After executing the FTP commands, the following data sets now exist on MVSXA2:
USER121.FTP.EXAMPLE.SPOOLALL
USER121.FTP.EXAMPLE.SPOOL1
USER121.FTP.EXAMPLE.SPOOL2
USER121.FTP.EXAMPLE.SPOOL3
USER121.FTP.EXAMPLE.SPOOL4
Note: In most situations, the INPUT status is too fast to be captured by issuing
DIR. However, if the ACTIVE or OUTPUT status of the job is captured, the
INPUT status has been passed successfully.
Chapter 4. Transferring data using the File Transfer Protocol (FTP) 127
If JESINTERFACELevel is set to 2, then the GET command should produce results
similar to those below (JESJOBName=* JESOwner=* JESSTATUS=ALL
JESENTRYLimit=200 displays SYSOUT data sets from JOB00061).
DIR JOB00061
JOBNAME JOBID OWNER STATUS CLASS
USER3A JOB00061 USER3 OUTPUT D 3 spool files RC=0000
ID STEPNAME PROCSTEP C DDNAME REC-COUNT COMMENT
001 JESE H JESMSGLG 18
002 JESE H JESJCL 11
003 A JESYSMSG 22
DIR ’JOB00061.1’
JOBNAME JOBID OWNER STATUS CLASS
USER3A JOB00061 USER3 OUTPUT D 3 spool files RC=0000
ID STEPNAME PROCSTEP C DDNAME REC-COUNT COMMENT
001 JESE H JESMSGLG 18
GET JOB00061.1
125 Sending data set USER3.USER3A.JOB00061.D0000002.JESMSGLG
250 Transfer completed successfully.
1012 bytes transferred in 0. 40 seconds. Transfer rate 25.30 Kbytes/sec.
GET ’JOB00022.1’ (REP
125 Sending data set USER3.USER3A.JOB00022.D0000001.JESMSGLG
250 Transfer completed successfully.
1012 bytes transferred in 0. 40 seconds. Transfer rate 25.30 Kbytes/sec.
At the end of each SYSOUT data set of a MGET, the following line is stored:
!! END OF JES SPOOL FILE !!
MGET JOB00061.*
125 Sending all spool files for Jobid JOB00061
250 Transfer completed successfully.
5541 bytes transferred in 4.92 seconds. Transfer rate 1.35 Kbytes/sec.
SITE JESENTRYLIMIT=2
200 Site command was accepted
DIR
JOBNAME JOBID OWNER STATUS CLASS
USER1 TSU00017 USER1 INPUT A
USER1 JOB00022 USER1 ACTIVE D STEP=STEPNAME PROC=PROCSTEP CPUT= 7.27 ELAPT= 7.27
JESENTRYLIMIT of 2 reached. Additional entries not displayed.
Note that the DIR showed jobs TSU00017 and JOB00022, but the MGET is not able
to retrieve them.
MGET
550 No spool files available for TSU00017
550 No spool files available for JOB00022
SITE JESSTATUS=OUTPUT
200 Site command was accepted
DIR
JOBNAME JOBID OWNER STATUS CLASS
USER1A JOB00061 USER1 OUTPUT D 3 spool files RC=0000
USER1B JOB00070 USER1 OUTPUT D 5 spool files RC=0000
MGET
125 Nlst started OK
250-JESENTRYLIMIT of 2 reached. Additional entries not received
250 Nlst completed successfully
For information about installing the SQL query function for the FTP client or
server, see the z/OS Communications Server: IP Configuration Reference.
Chapter 4. Transferring data using the File Transfer Protocol (FTP) 129
v CHAR (fixed length, up to 254 characters)
v DECIMAL
v INTEGER (full word)
v SMALLINT (half word)
v FLOAT (single or double precision)
v LONG VARCHAR (VARCHAR(n), where n is greater than 254)
v GRAPHIC
v VARGRAPHIC
v LONG VARGRAPHIC
Mixed data (double-byte character set and single-byte character set) is supported in
CHAR, VARCHAR, and LONG VARCHAR data types, but column alignment in
the output file might not be maintained.
You can create queries on the client and use the FTP PUT command to send the
queries to the MVS system to be processed. Or, you can prepare a group of SQL
queries on the MVS system and perform them regularly.
Note: FTP can process only one SQL query per file.
For example, a data set on an MVS system named userid.SQL.IN contains the
following SQL query:
SELECT LASTNAME, EMPID, YEARS_EMPLOYED FROM EMPLOYEE_TABLE
WHERE YEARS_EMPLOYED > 25
You either created that data set on the MVS system with TSO, or you used the FTP
PUT command to put the data set on the MVS system.
There are several commands that are relevant to the client and server in SQL
mode. The server commands use SITE, and the client commands use LOCSITE.
The following list describes the commands:
SITE/LOCSITE DB2=
Specifies the name of the DB2 subsystem that you want to perform your
queries. See “Specifying the DB2 subsystem to perform the query” on page 131
for more information about DB2 subsystems.
SITE/LOCSITE SPRead or NOSPRead
Specifies whether you want the output to be in spreadsheet or report format.
See “Specifying the output format” on page 132 for more information about
output format.
SITE/LOCSITE SQLCol=
To prevent the automatic sending of a SITE command that might override your
SITE setting, toggle SENDSITE to OFF. For more information about the SENDSITE
command, see “SENDSite subcommand—Toggle the sending of site information”
on page 269.
FTP connects to a DB2 system to have it execute a DB2 query. You can specify
what DB2 system FTP should connect to with the following SITE or LOCSITE
parameter:
SITE/LOCSITE DB2=
For example, if you want the FTP server to have the DB2T system perform your
queries, specify:
SITE DB2=DB2T
If you want the FTP client to have the DB2P system perform your queries, specify:
LOCSITE DB2=DB2P
The default DB2 system name is DB2. You can change the default with the DB2
parameter in the FTP.DATA data set. See “Changing local site defaults using
FTP.DATA” on page 70 for more information about the FTP.DATA data set.
The SQLCol parameter of the SITE command enables you to specify whether you
want names or labels to appear at the top of the columns in your output file. The
default value is Names. Issue the following command if you want a database
column name to appear at the top of each column in your output file:
SITE/LOCSITE SQLCol=Names
Chapter 4. Transferring data using the File Transfer Protocol (FTP) 131
Issue the following command if you want a label to appear at the top of each
column:
SITE/LOCSITE SQLCol=Labels
If you specify the Labels parameter, and a column in your query does not have a
label defined in the database, the FTP server supplies a column heading. For more
information about column headings, see “FTP-supplied column headings.”
Issue the following command if you want either a label or a name to appear at the
top of each column:
SITE/LOCSITE SQLCol=Any
If you specify the Any parameter, the label appears as the column heading.
However, if the column does not have a label, the name appears at the top of the
column.
results in two columns. The first column gets its name from DB2, while the second
column is built by the server. The server uses the heading COL002 for the second
column because it supports the SQL limit of 750 columns.
Spreadsheet Format: You can have the output of the SQL query formatted to load
directly into a spreadsheet program running on a PC or a workstation. To get the
spreadsheet format, issue the following command:
SITE SPRead or LOCSITE SPRead
The SPRead format option puts a TAB character before the first character of each
column entry, except the first column. See your spreadsheet program
documentation for instructions about how to import the output of the SQL query.
Report Format: The NOSPRead format option puts one or more blank spaces
between the columns, and it lists the SQL query, the column headings, and the
resulting columns. Each section is separated with horizontal dashed lines. An
output data set in NOSPRead, or report, format is easier to view and print.
A lowercase letter in the first position of each dashed line specifies what part of
the output follows, enabling a program to read and interpret the contents. For
example, s indicates that the SQL query follows, h indicates a header, d indicates
that the rest of the data set is the actual data, and e indicates that an error message
follows.
The width of the output data set depends on the width of the results from the DB2
query.
Next, perform a PUT command specifying the name of the file on the client that
contains the SQL query.
For example, if the client has a file named userid.SQL.IN that contains an SQL
query, you can specify:
PUT SQL.IN SQL.OUT
The FTP client then submits the query found in SQL.IN to the DB2 subsystem on
the client and sends the resulting rows of output to the server to be put into
SQL.OUT on the server.
Then perform a GET command specifying the name of the file on the server that
contains the SQL query.
Chapter 4. Transferring data using the File Transfer Protocol (FTP) 133
For example, if the server has a file named userid.SQL.IN that contains an SQL
query, you can specify:
GET SQL.IN SQL.OUT
The FTP server then submits the query found in SQL.IN to the DB2 subsystem on
the server and sends the resulting rows of output to the client to be put into
SQL.OUT on the client.
and
s--------+---------+---------+---------+---------+---------+---------+---------+
SELECT * FROM ABC.STAFF
h--------+---------+---------+---------+---------+---------+---------+---------+
EMPLOYEE TLA AGE SALARY
d--------+---------+---------+---------+---------+---------+---------+---------+
Steve Jasinski SJJ 23 28040.00
Alison Cook ACO 22 28040.00
Mark Ballam MFB 63 87420.55
Chapter 4. Transferring data using the File Transfer Protocol (FTP) 135
136 z/OS V1R9.0 Comm Svr: IP User’s Guide and Commands
Chapter 5. FTP subcommands
The FTP subcommands are listed in Table 20. The minimum abbreviation, a
description, and the link to each subcommand are also included. You must be in
the FTP environment to use the FTP subcommands. See “Using FTP” on page 29
for more information.
Table 20. FTP subcommands
Subcommand Description See
? Provides information to use FTP. “HElp and ? subcommands—Display
help information” on page 186
! Passes a z/OS UNIX System “! subcommand—Invoke a z/OS
Services command to the local UNIX System Services function” on
z/OS shell. This command must be page 142
issued while using FTP in the z/OS
shell.
ACCount Sends host-dependent account “ACCt subcommand—Supply
information. account information” on page 143
APpend Appends a data set on your local “APpend subcommand—Append a
host to a file on the foreign host. local data set” on page 144
| AUth Requests a security mechanism for “AUth subcommand—Request
| the session. security mechanism” on page 147
AScii Sets the transfer type to ASCII. “AScii subcommand—Change the
data transfer type to ASCII” on page
146
BIG5 Sets the transfer type to BIG5. BIG “BIG5 subcommand—Change the
is the minimum abbreviation for data transfer type to BIG5” on page
BIG5. 148
BINary Sets the transfer type to IMAGE. “BINary subcommand—Change the
data transfer type to Image” on page
150
BLock Sets the data transfer mode to block “BLock subcommand—Set the block
mode. This is equivalent to data transfer mode” on page 151
specifying the MOde B
subcommand.
CCc Turns off integrity protection on the “CCc subcommand—Turn off
command channel. integrity protection” on page 152
CD Changes the working directory. “CD subcommand—Change the
directory on the remote host” on
page 153
CDUp Changes to the parent of the current “CDUp subcommand—Change to
working directory. the parent of the working directory”
on page 156
CLEar Sets the protection level for data “CLEar subcommand—Set the
transfers to CLEAR. protection level for data transfers to
CLEAR” on page 158
CLose Disconnects from the foreign host. “CLose subcommand—Disconnect
from a remote host” on page 159
Purpose
In a z/OS UNIX environment, use the ! subcommand to invoke z/OS UNIX
functions.
Format
!
shell_command
Parameters
shell_command
Specifying the ! subcommand with a shell command enables you to invoke
z/OS UNIX, perform the subcommand, and return to the FTP environment.
If no shell command is specified, the ! subcommand invokes z/OS UNIX.
There you can specify any number of shell commands before typing exit to
return to the FTP environment.
Purpose
Use the ACCt subcommand to supply account information to a host.
Format
ACCt account_information
Parameters
account_information
Specifies the account information required by the host. See your foreign-host
FTP server documentation for the information required by that host.
Usage
v The z/OS FTP server does not require any account information.
v You might have to use the ACCt subcommand when the foreign host requires
passwords for read and write access to its files or data sets. If you are not
prompted by the foreign host for the passwords, use the ACCt subcommand to
send these passwords to the foreign host.
Purpose
Use the APpend subcommand to append a local data set to a remote host.
Format
APpend local_data_set destination_file
Parameters
local_data_set
The name of the data set on your local host to be appended.
destination_file
The name of the file on the remote host to which your data set is appended. If
the destination file does not already exist at the remote host, a new file is
created. If the server is a z/OS UNIX server, the local file can be appended to a
z/OS UNIX file or an MVS data set.
Examples
In the following example, an FTP command is issued from MVSXA2 to MVSXA3.
MVSXA2 has a data set MVSUSER.FTP.EXAMPLE with one member. The member,
APPEND01, contains:
;
; THIS FILE ORIGINALLY RESIDED IN MVSXA2, AND
; WILL BE APPENDED TO A FOREIGN FILE IN MVSXA3.
;
User: lpwd
System: Local directory is MVSUSER.
Command:
Usage
v FTP maintains the attributes of a data set that is transmitted between a client
and a server. However, when you use the APpend subcommand, FTP can
truncate data records and you might lose data. If the data set name already
exists at the receiving site and the logical record length (LRecl) of the data set at
the receiving site is less than the LRecl of the transmitted data set, FTP truncates
the transmitted data set.
v If the remote host is an MVS or VM host, and if the data set on the remote host
has a fixed-record format, the format and record length of the data set on the
remote host are always preserved.
v Records from the data set on your local host are truncated or padded with blank
spaces when necessary.
v To append to a file on a remote host, you must define a working directory on
that host, and you must have write privileges to the files in that directory.
v The z/OS FTP Server does not request that unused space be released from a
data set created during APPEND processing. If you are using the z/OS FTP
Server and wish for the Server to request that unused space be released on a
newly-created data set, use the PUT subcommand instead of APPEND.
Context
v See “CD subcommand—Change the directory on the remote host” on page 153
for more information about working with current directories.
v See Appendix A, “Specifying data sets and files,” on page 429 for more
information about naming conventions.
v APpend can be used with the PROXy subcommand to transfer files from a host
on a secondary connection to a host on a primary connection. See “PROXy
subcommand—Execute FTP subcommand on secondary control connections” on
page 252 for more information.
Purpose
Use the AScii subcommand to change the data transfer type to ASCII.
Format
AScii
Parameters
There are no parameters for this subcommand.
Usage
Use the ASCII subcommand to direct FTP to translate outgoing files into ASCII
before sending them to the other host, and to convert incoming files from ASCII to
the file system code page before storing them.
Context
For more information about transfer methods, see Table 13 on page 55.
|
| AUth subcommand—Request security mechanism
| Purpose
| Use the AUth subcommand to request a security mechanism for the session.
| Format
| AUth security_mechanism
|
| Parameters
| security_mechanism
| The possible value is:
| TLS
| Request or reset TLS security for the session.
| Result: The server might not support the security mechanism that you specify,
| or it might not accept the security mechanism that you specify.
| Restrictions:
| v This subcommand is not valid with a TLSPORT implicit connection.
| v This subcommand is not valid during a TLS-secured session when
| TLSRFCLEVEL parameter is set to DRAFT. See “Using security mechanisms”
| on page 50 for more information.
| v This subcommand is not valid during a Kerberos-secured session.
Purpose
Use the BIG5 subcommand to change the data transfer type to BIG5.
MVS FTP uses the same SBCS translate table for single-byte or double-byte data
transfers. If you require an alternate SBCS table for a double-byte transfer, use the
SIte/LOCSIte SBDataconn or SIte XLate subcommand to have the server (or client)
change the SBCS translation for the data connection.
Format
BIG5
(
Ascii NOSo NOType
Sosi
Ebcdic
Space
Parameters
Sosi
Transferred data contains the shift-out and shift-in characters specified by one
of the following parameters – Ascii, Ebcdic, or Space. If no parameter is
specified, ASCII is used as the default.
If Sosi is not specified at all, shift-out or shift-in characters are not used in the
transferred data.
Ascii
When combined with the Sosi parameter, causes shift-out and shift-in
characters X'1E' and X'1F' to be used to delimit DBCS strings in ASCII
data.
Ebcdic
When combined with the Sosi parameter, causes shift-out and shift-in
characters X'1E' and X'1F' to be used to delimit DBCS strings in ASCII
data.
Space
When combined with the Sosi parameter, causes shift-out and shift-in
characters X'20' andX'20' (ASCII spaces) to be used to delimit DBCS strings
in ASCII data.
NOSo
Specifies that the data transferred is pure DBCS (data with no SBCS characters)
and is to be transferred to and from EBCDIC DBCS data that contains no
shift-out or shift-in delimiters.
NOType
Suppresses the sending of the corresponding TYpe command to the server. Use
this parameter when translation is to be performed by the FTP client only.
Usage
v The BIG5 client subcommand is equivalent to the TYPE B 8 command.
v The minimum abbreviation for BIG5 is BIG.
Context
See “FTP with traditional DBCS support” on page 87 and “Support for MBCS
languages” on page 90 for more information.
Purpose
Use the BINary subcommand to change the data transfer type to image (binary).
Format
BINary
Parameters
There are no parameters for this subcommand.
Usage
Use the image transfer type to transfer files between client and server without any
translation of the file data. When using the image transfer type, data is sent as
contiguous bits packed into 8-bit bytes. Use the image transfer type for efficient
storage and retrieval of data sets or files, and for the transfer of binary data.
Context
For more information about data transfer methods, see Table 13 on page 55.
Purpose
Use the BLock subcommand to set the data transfer mode to block mode. This is
equivalent to specifying the MOde B subcommand. See “MOde subcommand—Set
the data transfer mode” on page 242 for more information.
Format
BLock
Parameters
There are no parameters for this subcommand.
Purpose
Use the CCc subcommand to turn off integrity protection on the control
connection. This command must be integrity-protected, and must be preceded by a
successful security mechanism negotiation.
Format
CCc
Parameters
There are no parameters for this subcommand.
| Restrictions: When the security mechanism is TLS, the following restrictions apply:
| v The CCc subcommand is not supported when the connection is implicitly
| secured with a connection to the port that is configured with the TLSPORT
| statement.
| v The CCc subcommand is supported only when the TLSRFCLEVEL is RFC4217.
Purpose
Use the CD subcommand to change the working directory or file group on the
remote host.
Format
CD directory
Parameters
directory
Specifies the name of a file directory, a fully qualified data set, or a prefix on
the remote host.
Examples
Changing the directory of a z/OS FTP server
If the remote server is z/OS FTP, the directory value can specify either a z/OS
UNIX file system name, a common prefix for a group of MVS data sets, or the
qualifiers of a partitioned data set (PDS).
To override the existing directory rather than append to the directory, issue the
directory parameter within single quotation marks. For example, if the current
working directory is TCPUSR14.TEST, and you issued the CD subcommand:
CD ’FTP.FILES’
the new working directory would be FTP.FILES. If the subdirectory name contains
white space, such as NEW SUBDIRECTORY, then the syntax for the CD command
would be as follows:
CD ’NEW SUBDIRECTORY’
The command syntax must specify the full subdirectory name (including the blank)
delimited within single quotation marks.
If a PDS exists with the exact name of the current working directory, FTP considers
the working directory to be that PDS. Otherwise, FTP considers the working
directory to be a common prefix qualifier for sequential data sets.
If a PDS exists with the same name as the current working directory, but you want
the current working directory to be treated as a common prefix for sequential data
sets, specify the working directory with a period (.) at the end. For example, if a
PDS named TCPUSR14.TEST exists, the subcommand:
CD ’TCPUSR14.TEST’
makes the PDS TCPUSR14.TEST the current working directory. A subsequent PUt of
file name1 adds a member name1 to the TCPUSR14.TEST PDS. In contrast, the
subcommand
CD ’TCPUSR14.TEST.’
makes the current working directory, TCPUSR14.TEST., a prefix for sequential data
sets. A subsequent PUt command used to copy data set name1 would create the
sequential data set TCPUSR14.TEST.name1.
To back up one level of the current working directory, issue the CD subcommand
with two periods (..) at the end. For example, if the working directory is
jones.source, the subcommand
CD ..
makes jones. the working directory. You can also use the CDUp command to back
up one level of the current working directory. See “CDUp subcommand—Change
to the parent of the working directory” on page 156 for more details.
The following sample commands and responses are displayed as a result of the CD
subcommand.
To use this function, first change the working directory to *DEV.NULL by using
one of the following commands:
v CD *DEV.NULL
v CWD *DEV.NULL
This affects the working directory only for PUt commands. You then use the PUt
command to copy the file to the server system. The input data set must be valid,
and the output file can either be new or already exist. In either case, the file is not
actually stored.
The following response shows information such as the number of bytes transferred
and the rate of transfer.
To end the use of the *dev.null directory for PUt commands, issue another
CHANGE Directory command.
Command:
cd *dev.null
>>>CWD *dev.null
250-Working directory for PUT is NULL Device;
250 for GET is HFS directory /u/user31
Command:
put a.b a.bbbbb
>>>SITE VARrecfm Lrecl=128 Recfm=VB BlockSize=6144
200 Site command was accepted
>>>PORT 14,0,0,0,4,14
200 Port request OK.
>>>STOR a.bbbbb
125 Storing data set in the Null directory (*dev.null).
250 Transfer completed successfully.
82 bytes transferred in 0.245 seconds. Transfer rate 0.33 Kbytes/sec.
Command:
quit
>>>QUIT
221 Quit command received. Goodbye.
Usage
You can also use the CWD and CW subcommands to change the current working
directory. These subcommands are synonyms of the CD subcommand.
Purpose
Use the CDUp subcommand as a special case of the CD subcommand to change
the working directory to the next higher directory level. You can use it to simplify
the implementation of programs for transferring directory trees between operating
systems that have different syntaxes for naming the parent directory.
Format
CDUp
Parameters
There are no parameters for this subcommand.
Examples
Change the working directory to the next higher directory level:
cd ’a.b.c.d’
>>>CWD ’a.b.c.d’
257 "’A.B.C.D.’" is working directory name prefix.
Command: pwd
>>>PWD
257 "’A.B.C.D.’" is working directory
Command: cdup
>>>CDUP
257 "’A.B.C.’" is working directory name prefix.
Command: pwd
>>>PWD
257 "’A.B.C.’" is working directory
Command: cdup
>>>CDUP
257 "’A.B.’" is working directory name prefix.
Command: pwd
>>>PWD
257 "’A.B.’" is working directory
Change the working directory to the next higher directory level for a z/OS UNIX
file:
cd ’/u/user121/A/B/C’
>>>CWD ’/u/user121/A/B/C’
250 HFS directory /u/user121/A/B/C is the current working directory
Command: pwd
>>>PWD
257 "/u/user121/A/B/C" is the HFS working directory
Command: cdup
>>>CDUP
250 HFS directory /u/user121/A/B is the current working directory
Command: pwd
>>>PWD
257 "/u/user121/A/B" is the HFS working directory
Command: cdup
>>>CDUP
250 HFS directory /u/user121/A is the current working directory
Command: pwd
>>>PWD
257 "/u/user121/A" is the HFS working directory.
Command:
Purpose
Use the CLEar subcommand to set the protection level for data transfers on the
data connections to clear. This subcommand is equivalent to specifying the
PROTect CLEar subcommand.
Format
CLEar
Parameters
There are no parameters for this subcommand.
Examples
To set the protection level to clear, enter:
clear
Usage
See the “PROTect subcommand—Set the protection level for data transfers” on
page 251 for additional protection level information.
The CLEar subcommand is not valid when there is no active security mechanism.
Purpose
Use the CLose subcommand to disconnect from the remote host and remain in
FTP.
Format
CLose
Parameters
There are no parameters for this subcommand.
Usage
The FTP session remains active on your local host, but the session to the remote
host is terminated. You can use the Open subcommand to establish a new session
with either the same or a different remote host. If you establish a new session with
the same remote host, values set by the SIte subcommand during the previous
session are cleared. The remote host default values for the parameters of the SIte
subcommand are used for the new session.
Context
v See “Open subcommand—Connect to the FTP server” on page 247 for
information about the Open subcommand.
v CLose can be used with the PROXy subcommand to close a secondary control
connection. See “PROXy subcommand—Execute FTP subcommand on secondary
control connections” on page 252 for more information.
Purpose
Use the COMpress subcommand to set the data transfer mode to compressed
mode. This is equivalent to specifying the MOde C subcommand. See “MOde
subcommand—Set the data transfer mode” on page 242 for more information.
Format
COMpress
Parameters
There are no parameters for this subcommand.
Purpose
Set the protection level on commands to protection-level.
Format
CProtect [protection-level]
Parameters
The valid protection levels are:
protection-level
Can have the following values:
clear
Unprotected commands
safe
Commands integrity-protected by cryptographic checksum
private
Commands confidentiality and integrity-protected by encryption
Purpose
Use the DEBug subcommand to enable or disable general internal tracing.
Format
DEBug
?
ACC
ALL
BAS
CMD
FLO
FSC(n)
INT
NONE
PAR
SEC
SOC(n)
SQL
TIMestamps
UTL
Xyyy
Parameters
One or more of the following options can be specified:
? Displays the status of the traces.
ACC
The ACC trace shows the details of the login process.
ALL
This parameter is used to set all of the trace points.
Note: Both the FSC and the SOC traces will be set to level 1 when the ALL
parameter is processed.
BAS
This parameter is used to set a select group of traces that offer the best overall
debug data without the detailed information of some of the traces. Specifying
this parameter is the same as DEBUG CMD INT FSC SOC.
CMD
The CMD trace shows each command and the parsing of the parameters for
the command.
FLO
The FLO trace shows the flow of control within FTP. It is useful to show which
services of FTP are used for an FTP request.
FSC(n)
The FSC trace shows details of the processing of the file services subcommands
APpend, PUt, Get, MGet, and MPut. This trace can generate very detailed
information and therefore allows you to specify levels of detail for the trace
points.
The level 1 tracing that is specified by entering FSC or FSC(1) is the level
normally used unless more data is requested by TCP/IP service group. The
level (n) can be a number from 1 to 8.
INT
The INT trace shows the details of the initialization and termination of the FTP
session with the server.
NONE
This parameter is used to turn off all of the traces.
PAR
The PAR trace shows details of the FTP command parser. It is useful for
debugging problems in the handling of the command parameters.
SEC
The SEC trace shows the processing of security functions such as TLS and
GSSAPI negotiations.
SOC(n)
The SOC trace shows details of the processing during the setup of the interface
between the FTP application and the network as well as details of the actual
amounts of data that is processed.
This trace can generate very detailed information and therefore allows you to
specify levels of detail for the trace points. The level (n) can be a number from
1 to 8.
SQL
The SQL trace shows details of the processing for SQL requests, such as
requests when LOCSIte FILETYPE=SQL is in effect.
TIMestamps
This is a special parameter used to request that each trace entry have a
timestamp showing the time the entry was made. This is useful during long
running file transfers to track the duration of the transfer and also to match
client trace to the server trace, which also has a timestamp.
UTL
The UTL trace shows the processing of utility functions such as LCd and
LOCSIte.
Xyyy
This syntax is used to turn off (reset) a trace that is named by yyy. For
example, DEBUG XPAR XACC will turn off the PAR and the ACC traces.
Examples
The following example shows sample client traces with DEBug.
debug none fsc soc time
Active client traces - FSC(1) SOC(1)
get a ’user33.abc111’ (replace
11:21:33 CG0204 get: F=1 p=FSA ARTW=0000
11:21:33 CG3356 rcvFile: entered
11:21:33 MR1200 set_filename: entered with pathname ’user33.abc111’
11:21:33 CG2078 mvs_rcvFile: entered
11:21:33 CG1944 newGDGname: entered
11:21:33 MV0874 seq_create_file: entered with dsn=USER33.ABC111
11:21:34 MV1545 seq_create_file: ddname=SYS00009
12345678901234567890123456789012345678901234567890123456789012345678901234567890
11:21:34 MV1605 seq create file: data set has recfm=50, lrecl=256, blksize=6233
11:21:34 CG2470 mvs_rcvFile: FASTIO pending for store_type = N
11:21:34 CG2473 mvs_rcvFile: ... recfm=VB, lrecl=256, blksize=6233
11:21:34 CG2560 mvs_rcvFile: request FASTIO with recfmU override for record form
at VB
11:21:34 MF2540 seq_open_file: recfm is VB
11:21:34 MF2598 seq_open_file: BSAM O SYS00009 ()
11:21:34 MF2600 seq_open_file: ncp=29 DA=0 K0=0 DF=0
11:21:34 MF2658 seq_open_file: stream 46EE8 has maxreclen 256
11:21:34 SC0531 initDsConnection: entered
>>> PORT 9,67,113,57,4,32
200 Port request OK.
>>> RETR a
125 Sending data set /u/user33/a
11:21:34 SC0783 accDsConnection: entered
11:21:34 TI3053 WrtStreamFastIO: O=2 HGPES=00001 BCTE=1000 RLB=50/256/6233
11:21:34 MF2441 seq_close_file: file closed
11:21:34 GV0150 releaseFile: release ddname - SYS00009
11:21:34 GV0171 releaseFile: dynfree() results- rc=0, errcode=0, infocode=0
11:21:34 SC1128 dataClose: entered
250 Transfer completed successfully.
820 bytes transferred in 0.005 seconds. Transfer rate 164.00 Kbytes/sec.
11:21:34 CU1821 write_smf_record: entered with type 16.
11:21:34 CU1275 write_smf_record_119: entered with type 16.
11:21:34 CU2084 write_smf_record: length of smfrecord: 224
Usage
By default, DEBug is off. When the FTP environment is entered, you can activate
DEBug by any of the following methods:
v Use the TRACE or -d parameter on the FTP command.
v Code one or more DEBUG statements in the client’s FTP.DATA.
v Code the TRACE statement in the client’s FTP.DATA.
Once FTP is started, you can change the DEBug settings with the DEBug
subcommand.
v The trace supports the DEBug parameters 1 and 2 that are used with previous
product releases. Specifying DEBug BAS provides the same tracing as parameter
1 formerly provided. The DUMP subcommand now provides the extended
tracing that parameter 2 formerly provided.
v The state of the traces points is displayed as a response to the DEBug
subcommand. To see the states without making a change, enter DEBUG ?.
v The setting of the traces is additive as shown by the following:
DEBUG NONE CMD
EZA2851I Active traces: CMD
DEBUG PAR
EZA2851I Active traces: CMD PAR
v Entering DEBug with no parameters will toggle the trace on and off. The state of
the traces when the trace is toggled off is remembered so that toggling it on
restores the previous trace settings. If no traces were active previously, then
toggling activates the BAS trace points
DEBUG NONE CMD
EZA2851I Active traces: CMD
DEB
EZA2851I Active traces: NONE
DEB
EZA2851I Active traces: CMD
DEB FSC
EZA2851I Active traces: CMD FSC(1)
DEB
Tip: The DEBug FSC command accepts level values 6–8, but provides only level 5
trace data. Likewise, DEBug SOC accepts level values 4–8, but provides only level
3 trace data.
See Diagnosing FTP client problems with tracing in z/OS Communications Server: IP
Diagnosis Guide for more information about FTP client tracing.
Purpose
Use the DELEte subcommand to delete a file on the remote host.
Format
DELEte foreign_file
Parameters
foreign_file
Specifies the name of the file to be deleted on the remote host.
Context
See Appendix A, “Specifying data sets and files,” on page 429 for information
about file naming conventions.
Purpose
Use the DELImit subcommand to display the character that is used as the delimiter
between the file name and the file type.
Format
DELImit
Parameters
There are no parameters for this subcommand.
Usage
v The DELImit subcommand should be used for information purposes only.
v You cannot change which character is used as the delimiter.
Purpose
Use the DIr subcommand to obtain a list of directory entries or a list of files in a
file group on the remote host, or a list of the members of the partitioned data set,
as well as auxiliary information about the files.
Format
DIr
name ( DISK
Parameters
name
Specifies the name of the directory or file group. The default is the current
directory or file group.
(DISK
Stores the results of the DIr subcommand as data set FTP.DIROUTP in the local
current working directory.
v If the local current working directory is an MVS PDS, the member DIROUTP
is stored.
v If the local current working directory is a z/OS UNIX directory, the results
are stored in a file named diroutp.
Examples
v List the data sets with a common high-level qualifier as the current working
directory:
>>>PORT 9,67,58,227,4,62
200 Port request OK.
>>>LIST
125 List started OK.
Volume Unit Referred Ext UsedRecfm Lrecl BlkSz Dsorg Dsname
WRKLB2 3380 1997/07/02 1 1 F 80 80 PS TEST.A
WRKLB2 3380 1997/07/09 4 7 F 80 80 PO TEST.PDS
WRKLB2 3380 1997/07/09 2 3 VB 60 256 PO TEST.PDSV
WRKLB2 3380 1997/07/01 16 17 VB 200 32000 PS TEST.XYZ1
250 List completed successfully.
Command:
Note: The DIr output for a RECFM=U data set for the FTP display always
shows the same value for lrecl as it shows for blksize.
v List the files for a z/OS UNIX file system directory:
cd ’/u/user121/ftp.example’
>>>CWD ’/u/user121/ftp.example’
250 HFS directory /u/user121/ftp.example is the current working directory
Command:
dir
>>>PORT 9,67,112,25,4,61
200 Port request OK.
>>>NLST
125 List started OK
total 64
-rw-r----- 1 USER121 SYS1 6720 Feb 7 18:48 append02
-rw-r----- 1 USER121 SYS1 3360 Feb 6 18:51 file1
-rw-r----- 1 USER121 SYS1 3883 Feb 6 18:51 file2
-rw-r----- 1 USER121 SYS1 3883 Feb 6 18:51 file3
-rw-r----- 1 USER121 SYS1 7277 Feb 6 18:51 file4
-rw-r----- 1 USER121 SYS1 3360 Feb 6 18:51 file5
250 List completed successfully.
Command:
cd ’tcpv3.tcpip.profiles’
>>>CWD ’tcpv3.tcpip.profiles’
257 "’TCPV3.TCPIP.PROFILES’" partitioned data set is working directory.
Command: dir
>>>PORT 9,67,112,25,4,32
200 Port request OK.
>>>LIST
125 List started OK.
Name VV.MM Created Changed Size Init Mod Id
TST6MV1 01.05 1997/06/26 1996/07/10 06:38 16 16 0 USER34
TST6MV2 01.08 1997/05/23 1996/07/03 12:49 16 17 0 USER34
TST6MV3 01.19 1997/05/23 1996/07/10 06:34 16 17 0 USER34
TST6021 01.04 1997/03/04 1996/07/08 09:17 15 15 0 USER34
TST6121 01.10 1997/05/23 1996/07/10 06:26 16 17 0 USER34
250 List completed successfully.
***
Usage
v To make a file group the current working directory, use the CD command. The
method you use to specify a directory or file group is host-dependent.
v The DIr subcommand provides a complete list of directory entries and gives
additional information about the files.
When using this subcommand to list MVS data sets that have a common
high-level qualifier as the current working directory on a remote host, the
volume names are displayed. However, when displaying a multivolume data set
used in a SMS environment, only the first volume name is displayed. To list all
volume names for a multivolume data set, issue the following TSO command on
the remote host:
LISTC ENT(’dataset_name’) ALL
v You can use special characters for pattern matching when specifying the name.
These characters depend on the host FTP server.
v Special characters you can use for the z/OS FTP server:
* A single asterisk by itself indicates that either a qualifier or one or more
characters within a qualifier can occupy that position. An asterisk can
precede or follow a set of characters. An asterisk as the last qualifier will
indicate that 0 or more qualifiers can occupy that position.
** A double asterisk indicates that 0 or more qualifiers can occupy that
position. A double asterisk cannot precede or follow any characters. It
must be preceded and followed by either a period or a blank.
% A single percent sign by itself indicates that exactly one alphanumeric or
national character can occupy that position.
%...% One to eight percent signs (%) can be specified in each qualifier.
Entry Returns
VSAM.DATA.SET VSAM.DATA.SET only
Entry Returns
VSAM.DATA.SET% VSAM.DATA.SET1
VSAM.DATA.SET2
Context
v See Appendix A, “Specifying data sets and files,” on page 429 for more
information about pattern matching and about specifying data sets and files.
v To get a list containing only the file names in a directory, use the LS
subcommand (see “LS subcommand—Obtain a list of file names” on page 229).
v To make a file group the current working directory, see “CD
subcommand—Change the directory on the remote host” on page 153.
v To change the local directory, see “LCd subcommand—Change the local working
directory” on page 193.
Purpose
Use the DUMP subcommand to enable or disable extended internal tracing.
Note: Extended tracing has the potential to generate a large amount of trace data
and should not be set unless requested to debug a specific problem in the
code.
Format
DUMP
?
n
ALL
FSC
NONE
SOC
SQL
Xyyy
Parameters
One or more of the following options can be specified:
? Displays the status of the traces.
n Specifies the ID number of a specific extended trace point that is to be
activated in the FTP code. The number has a range of 1–99.
ALL
This parameter is used to set all of the trace points.
FSC
Activates all of the extended trace points in the file services code. The ID
numbers for FSC are 20 to 49.
NONE
This parameter is used to turn off all of the traces.
SOC
Activates all of the extended trace points in the network services code. The ID
numbers for SOC are 50 to 59.
SQL
Activates all of the extended trace points in the SQL services code. The ID
numbers for SQL are 70 to 79.
Xyyy
This syntax is used to turn off (reset) a trace that is named by yyy. For
example, DUMP X21 X22 XSQL will reset the extended trace points 21 and 22 and
all of the SQL trace points.
Examples
The following is an example of a dump trace.
dump 21 22
Active client dumpIDs - 21 22
get a ’user33.abc111’ (replace
12:38:31 MV0456 (21) TU_DSN ...:
0A31D1E4 00020001 000DE4E2 C5D9F3F3 4BC1C2C3 *......USER33.ABC*
0A31D1F4 F1F1F100 00000000 00000000 00000000 *111.............*
0A31D204 - 0A31D223 All zeros (0x20 bytes)12:38:31 MV0512 (21) TU_STATS ...:
0A31D150 00040001 00010100 *........ *
12:38:31 MV0521 (21) TU_DISP ...:
0A31D158 00050001 00010800 *........ *
12:38:31 MV2113 (22) RN PA=
0A3296C0 14070000 00000000 0A3296D8 00000000 *..........oQ....*
0A3296D0 00000000 *.... *
12:38:31 MV2115 (22) RN DD=
0A3296B0 00010001 0008E2E8 E2F0F0F0 F0F94B4B *......SYS00009..*
0A3296C0 14070000 0000 *...... *
12:38:31 MV2117 (22) RN DSN=
0A3296EC 00050001 000DE4E2 C5D9F3F3 4BC1C2C3 *......USER33.ABC*
0A3296FC F1F1F14B 60614B4B 4B4B4B4B 4B4B4F6B *111.-/.........,*
0A32970C 6C6D6E6F 4B4B4B4B 4B4B4B4B 4B4B7A7B *%_>?..........:#*
0A32971C 7C7D7E4B *@’=. *
>>> PORT 9,67,113,57,4,59
200 Port request OK.
>>> RETR a
125 Sending data set /u/user33/a
250 Transfer completed successfully.
820 bytes transferred in 0.005 seconds. Transfer rate 164.00 Kbytes/sec
Usage
The setting of the traces is additive. This is demonstrated by the following
example:
dump none 21
EZA2850I Active dumpIDs: 21
dump 22
EZA2850I Active dumpIDs: 21 22
Entering dump with no parameters is the same as entering dump with the ?
parameter.
The range of 99 extended trace points is defined to allow easy extension of the
trace points by the TCP/IP service team. Additional trace points can be added to
the code without any changes to the external mechanism to control the traces.
See Diagnosing FTP client problems with tracing in z/OS Communications Server: IP
Diagnosis Guide for more information about FTP client tracing.
Purpose
The EBcdic subcommand enables you to change the data transfer type to EBCDIC.
Format
EBcdic
Parameters
There are no parameters for this subcommand.
Usage
Use the EBcdic subcommand to direct FTP to transfer data with no translation.
Context
For more information about transfer methods, see Table 13 on page 55.
Purpose
Use the EUckanji subcommand to change the data transfer type to Extended UNIX
Code (EUC) kanji.
MVS FTP uses the same SBCS translate table for single-byte or double-byte data
transfers. If you require an alternate SBCS table for a double-byte transfer, use the
SIte/LOCSIte SBDataconn or SIte XLate subcommand to have the server (or client)
change the SBCS translation for the data connection.
Format
EUckanji
(
Ascii NOSo NOType
Sosi
Ebcdic
Space
Parameters
Sosi
Transferred data contains the shift-out and shift-in characters specified by one
of the following parameters – Ascii, Ebcdic or Space. If no parameter is
specified, ASCII is used as the default.
If Sosi is not specified at all, shift-out or shift-in characters are not used in the
transferred data.
Ascii
When combined with the Sosi parameter, causes shift-out and shift-in
characters X'1E' and X'1F' to be used to delimit DBCS strings in ASCII
data.
Ebcdic
When combined with the Sosi parameter, causes shift-out and shift-in
characters X'0E' and X'0F' to be used to delimit DBCS strings in ASCII
data.
Space
When combined with the Sosi parameter, causes shift-out and shift-in
characters X'20' and X'20' (ASCII spaces) to be used to delimit DBCS
strings in ASCII data.
NOSo
Specifies that the data transferred is pure DBCS (data with no SBCS characters)
and is to be transferred to and from EBCDIC DBCS data that contains no
shift-out or shift-in delimiters.
NOType
Suppresses the sending of the corresponding TYpe command to the server. Use
this parameter when translation is to be done by the FTP client only.
Usage
The EUckanji client subcommand is equivalent to the TYPE B 2 server command.
Context
See “FTP with traditional DBCS support” on page 87 and “Support for MBCS
languages” on page 90 for more information.
Purpose
Ask the FTP server which features it supports. FTP clients use this command to
determine which languages the server supports, and which features the server
supports.
Format
FEature
Parameters
There are no parameters for this subcommand.
Usage
The minimum abbreviation for the feature subcommand is fe.
Purpose
Use the FIle subcommand to set the file structure to File. This is equivalent to
specifying the STRucture F subcommand. See “STRucture subcommand—Set the
file structure” on page 309 for more information.
Format
FIle
Parameters
There are no parameters for this subcommand.
Purpose
Use the Get subcommand to copy a file from the remote host to your local host.
Format
Get foreign_file
local_file ( REPLACE
Parameters
foreign_file
Specifies the name of the file to be retrieved from the remote host.
local_file
Specifies the name of the local file created as a result of the Get subcommand.
If the current local working directory is a PDS, local_file is the name of the
member in the PDS. If the current local working directory is a data set prefix,
the local file is a sequential data set with the local_file name appended to the
current local working directory. If the current local working directory is a z/OS
UNIX file system directory, the local file is a z/OS UNIX file in that directory.
You can override the usage of the current local working directory in the local
file name by specifying local_file as a complete data set name enclosed in single
quotation marks (’). If local_file is not specified, the local_file name is the same
as the foreign_file name.
(REPLACE
Causes a data set on your local host to be overwritten, if it already exists. If the
data set already exists, and you do not use the replace parameter, the existing
data set is not overwritten. A message informing you of this is displayed.
If the data set already exists and you specify REPLACE, the data in the file is
overwritten, but not reallocated. This means the local data set retains its
existing characteristics.
Usage
v FTP uses either the characteristics of the local file, if it exists, or uses the values
specified with the LOCSIte subcommand. Characteristics of the transmitted
(foreign file) data set are unknown.
When you use the Get subcommand, FTP might truncate data records and you
might lose data, if one of the following occurs:
– If you are creating a new data set at the client and the value of LRecl, as
shown by the LOCSTat command, is a value less than the LRecl of a received
data set, then FTP truncates the received data set.
– If the data set name already exists at the receiving site and the logical record
length (LRecl) of the data set at the receiving site is less than the LRecl of the
transmitted data set, then FTP truncates the transmitted data set.
You could also encounter truncated data records or lost data when you use
the Get subcommand with the REPLACE option.
Attention: A Get subcommand issued for an empty or nonexisting foreign file
erases the contents of the existing local data set.
– If FTP does not support directory content transfers in partitioned data sets, it
is not possible to FTP load modules.
– If the data set is migrated, it is replaced regardless of the replace option.
v If the name specified for local_file is not acceptable to your local host, the file is
not transferred.
v To get a file from the remote host, you must have a defined working directory
on that host and you must have read privileges to the files in this working
directory.
v If the data set has been preallocated, you must specify DSORG=PS on the DCB
statement in the JCL.
v When a PDS or PDSE member is transmitted, the user data associated with the
PDS member is also transferred to the directory on the target host if the
following conditions are true;
– Data is in block or compressed data transfer mode
– Data has a representation type of EBCDIC
– Transfer is from one MVS directory to another
No PDS directory information is transferred if the member is null (empty).
Context
v See Appendix A, “Specifying data sets and files,” on page 429 for more
information about naming conventions.
v See “CD subcommand—Change the directory on the remote host” on page 153
and “ACCt subcommand—Supply account information” on page 143 for more
information about working directories.
v Get can be used with the PROXy subcommand to transfer files from a host on a
primary connection to a host on a secondary connection. See “PROXy
subcommand—Execute FTP subcommand on secondary control connections” on
page 252 for more information.
Purpose
Use the GLob subcommand to toggle globbing (the expansion of metacharacters in
file names) for the MDelete, MGet, and MPut subcommands.
Format
GLob
Parameters
There are no parameters for this subcommand.
Examples
Assume that the files m1 and m1* exist in the directory /u/user33/mpp1.
Command:
pwd
>>> PWD
257 "/u/user33/mpp1" is the HFS working directory
Command:
lpwd
Local directory name set to hierarchical file /u/user33
Command:
prompt
Interactive mode is off
Command:
mget m1*
>>> PORT 9,67,113,57,4,43
200 Port request OK.
>>> NLST m1*
125 List started OK
250 List completed successfully.
>>> PORT 9,67,113,57,4,44
200 Port request OK.
>>> RETR m1
125 Sending data set /u/user33/mpp1/m1
250 Transfer completed successfully.
200 bytes transferred in 0.050 seconds. Transfer rate 4.00 ...
Kbytes/sec.
>>> PORT 9,67,113,57,4,45
200 Port request OK.
>>> RETR m1*
125 Sending data set /u/user33/mpp1/m1*
250 Transfer completed successfully.
200 bytes transferred in 0.020 seconds. Transfer rate 10.00 ...
Kbytes/sec.
Command:
delete /u/user33/m1
>>> DELE /u/user33/m1
250 /u/user33/m1 deleted.
Command:
delete /u/user33/m1*
>>> DELE /u/user33/m1*
250 /u/user33/m1* deleted.
Command:
glob
Globbing off
Command:
mget m1*
>>> PORT 9,67,113,57,4,46
200 Port request OK.
>>> RETR m1*
125 Sending data set /u/user33/mpp1/m1*
250 Transfer completed successfully.
200 bytes transferred in 0.010 seconds. Transfer rate 20.00 ...
Kbytes/sec.
With globbing off, at most one file will match the pattern. Also, the NLST
command is not sent to look for pattern matches.
Usage
GLob acts as a toggle that turns metacharacter expansion on or off. By default,
GLob is on.
Context
For more information about globbing, see the z/OS UNIX System Services User’s
Guide.
Purpose
Use the HAngeul subcommand to change the data transfer type to Hangeul.
MVS FTP uses the same SBCS translate table for single-byte or double-byte data
transfers. If you require an alternate SBCS table for a double-byte transfer, use the
SIte/LOCSIte SBDataconn or SIte XLate subcommand to have the server (or client)
change the SBCS translation for the data connection.
Format
HAngeul
(
Ascii NOSo NOType
Sosi
Ebcdic
Space
Parameters
Sosi
Transferred data contains the shift-out and shift-in characters specified by one
of the following parameters – Ascii, Ebcdic or Space. If no parameter is
specified, ASCII is used as the default.
If Sosi is not specified at all, shift-out or shift-in characters are not used in the
transferred data.
Ascii
When combined with the Sosi parameter, causes shift-out and shift-in
characters X'1E' and X'1F' to be used to delimit DBCS strings in ASCII
data.
Ebcdic
When combined with the Sosi parameter, causes shift-out and shift-in
characters X'0E' and X'0F' to be used to delimit DBCS strings in ASCII
data.
Space
When combined with the Sosi parameter, causes shift-out and shift-in
characters X'20' and X'20' (ASCII spaces) to be used to delimit DBCS
strings in ASCII data.
NOSo
Specifies that the data transferred is pure DBCS (data with no SBCS characters)
and is to be transferred to or from EBCDIC DBCS data that contains no
shift-out or shift-in delimiters.
NOType
Suppresses the sending of the corresponding TYpe command to the server. Use
this parameter when translation is to be done by the FTP client only.
Usage
The HAngeul client subcommand is equivalent to the TYPE B 5 server command.
Context
See “FTP with traditional DBCS support” on page 87 for more information.
Purpose
Use the HElp command to get assistance with the FTP subcommands.
Format
HElp
All
PROXY
subcommand
Server
subcommand
Parameters
All
The client displays a description of all the subcommands it implements.
PROXY
When used, displays a description of all subcommands available on the proxy
subcommand.
subcommand
Displays a description of the specified subcommand. The subcommand name
can be abbreviated to its minimum abbreviation.
Server
Displays the help that the foreign host offers for the specified subcommand.
If you do not specify a subcommand, FTP displays a list of the commands that
the foreign host recognizes.
Usage
v If you enter the HElp subcommand without a parameter, you see the HElp FTP
MENU, which lists the subcommands recognized by the FTP client and a
description of the help information available.
v If you enter the ? subcommand by itself, you see introductory information about
FTP.
Purpose
Use the Ibmkanji subcommand to change the data transfer type to IBM kanji.
Format
Ibmkanji
( NOType
Parameters
(NOType
Suppresses sending of the TYpe command for host servers that do not support
this data transfer type.
Usage
This subcommand causes no conversion to be performed on the transferred file. It
has exactly the same effect as the EBcdic TYpe command alias.
Context
See “FTP with traditional DBCS support” on page 87 for more information.
Purpose
Use the JIS78kj subcommand to change the data transfer type to JIS78KJ (1978
edition).
MVS FTP uses the same SBCS translate table for single-byte or double-byte data
transfers. If you require an alternate SBCS table for a double-byte transfer, use the
SIte/LOCSIte SBDataconn or SIte XLate subcommand to have the server (or client)
change the SBCS translation for the data connection.
Format
JIS78kj
Ascii
(
Jisroman NOSo NOType
Parameters
Ascii
Use ASCII shift-in escape sequence ESC ( B in the transferred data.
If neither Ascii nor Jisroman is specified, the ASCII shift-in sequence is used.
Jisroman
Use Jisroman shift-in escape sequence ESC ( J in the transferred data.
NOSo
Specifies that the data transferred is pure DBCS (data with no SBCS characters)
and is to be transferred to or from EBCDIC DBCS data that contains no
shift-out or shift-in delimiters.
NOType
Suppresses the sending of the corresponding TYpe command to the server. Use
this parameter when translation is to be done by the FTP client only.
Usage
v The JIS78kj or JIS78kj (ASCII client subcommands are equivalent to the TYPE B 4
A server command.
v The JIS78kj (JISROMAN client subcommand is equivalent to the TYPE B 4 R
server command.
v The JIS78kj (JISROMAN NOSO client subcommand is equivalent to the TYPE B
4 R N server command.
Context
See “FTP with traditional DBCS support” on page 87 and “Support for MBCS
languages” on page 90 for more information.
Purpose
Use the JIS83kj subcommand to change the data transfer type to JIS83KJ (1983
edition).
MVS FTP uses the same SBCS translate table for single-byte or double-byte data
transfers. If you require an alternate SBCS table for a double-byte transfer, use the
SIte/LOCSIte SBDataconn or SIte XLate subcommand to have the server (or client)
change the SBCS translation for the data connection.
Format
JIS83kj
Ascii
(
Jisroman Noso NOType
Parameters
Ascii
Use ASCII shift-in escape sequence ESC ( B in the transferred data.
If neither Ascii nor Jisroman is specified, the ASCII shift-in sequence is used.
Jisroman
Use Jisroman shift-in escape sequence ESC ( J in the transferred data.
NOSo
Specifies that the data transferred is pure DBCS (data with no SBCS characters)
and is to be transferred to or from EBCDIC DBCS data that contains no
shift-out or shift-in delimiters.
NOType
Suppresses the sending of the corresponding TYpe command to the server. Use
this parameter when translation is to be done by the FTP client only.
Usage
v The JIS83kj or JIS83kj (ASCII client subcommands are equivalent to the TYPE B 3
A server command.
v The JIS78kj (JISROMAN client subcommand is equivalent to the TYPE B 3 R
server command.
Context
See “FTP with traditional DBCS support” on page 87 and “Support for MBCS
languages” on page 90 for more information.
Purpose
Use the Ksc5601 subcommand to change the data transfer type to KSC-5601.
MVS FTP uses the same SBCS translate table for single-byte or double-byte data
transfers. If you require an alternate SBCS table for a double-byte transfer, use the
SIte/LOCSIte SBDataconn or SIte XLate subcommand to have the server (or client)
change the SBCS translation for the data connection.
Format
Ksc5601
(
Ascii NOSo NOType
Sosi
Ebcdic
Space
Parameters
Sosi
Transferred data contains the shift-out and shift-in characters specified by one
of the following parameters — Ascii, Ebcdic or Space. If no parameter is
specified, ASCII is used as the default.
If Sosi is not specified at all, shift-out or shift-in characters are not used in the
transferred data.
Ascii
When combined with the Sosi parameter, causes shift-out and shift-in
characters X'1E' and X'1F' to be used to delimit DBCS strings in ASCII
data.
Ebcdic
When combined with the Sosi parameter, causes shift-out and shift-in
characters X'0E' and X'0F' to be used to delimit DBCS strings in ASCII
data.
Space
When combined with the Sosi parameter, causes shift-out and shift-in
characters X'20' and X'20' (ASCII spaces) to be used to delimit DBCS
strings in ASCII data.
NOSo
Specifies that the data transferred is pure DBCS (data with no SBCS characters)
and is to be transferred to or from EBCDIC DBCS data that contains no
shift-out or shift-in delimiters.
NOType
Suppresses the sending of the corresponding TYpe command to the server. Use
this parameter when translation is to be done by the FTP client only.
Usage
The Ksc5601 client subcommand is equivalent to the TYPE B 6 server command.
See “FTP with traditional DBCS support” on page 87 for more information.
Context
See “Support for MBCS languages” on page 90 for more information.
Purpose
Request the language to be used for FTP server replies, or reset the language in
use to the server’s default language.
Format
LANGuage
language
-subtag
Parameters
language
A 2-character code as specified by RFC 1766 identifying the language to be
used for FTP replies. RFC 1766 defines these codes as those listed in ISO 639.
See Appendix D, “Related protocol specifications,” on page 449 for information
about accessing RFCs.
-subtag
A 2-character code as specified by RFC 1766 identifying a variation of
language. RFC 1766 defines these codes as ISO 3166 alpha-2 country codes. See
Appendix D, “Related protocol specifications,” on page 449 for information
about accessing RFCs.
Usage
v The language subcommand is equivalent to the LANG language -subtag
command.
v LANGuage with no parameters sets the language for FTP replies to the server’s
default language. For most FTP servers, the default is US English encoded in
7-bit ASCII.
v LANGuage with a parameter requests the server to use language for FTP replies.
As specified in RFC 2640, it also directs the server and client to use UTF-8
encoding of path names on the control connection.
v This subcommand is not available unless EXTENSIONS UTF8 is encoded in
FTP.DATA.
v The subcommand is not available if you have disabled UTF-8 encoding with a
LOCSIte command or FTP start option.
Context
The client should use the FEature subcommand to determine which languages the
server offers prior to using the LANGuage subcommand to request a language for
FTP replies. See “FEature subcommand—Query FTP server for features it
supports” on page 178 for information about using the FEature subcommand.
Purpose
Use the LCd subcommand to change the current working directory on the local
host.
Format
v In a TSO Environment:
LCd qualifier
LCd
qualifier
Parameters
qualifier
Specifies either a common prefix for a group of sequential data sets or the
qualifiers of a PDS.
Note: In a z/OS UNIX environment, you can omit the qualifier on the LCd
subcommand. Doing so changes the current working directory to your
home directory. If you do not have a home directory, the working
directory is not changed, and no message is issued.
Examples
v Change the local current working directory:
lcd ftp.test1
v When the LCd subcommand is issued, qualifier is appended to the current local
working directory. For example, if the current local working directory is
TCPUSR14.TEST and you issue the LCd subcommand LCD FILES, the new working
directory becomes TCPUSR14.TEST.FILES.
v To override the existing directory rather than append to the directory, issue the
qualifier in single quotation marks (’). For example, if the current local working
directory is TCPUSR14.TEST and you issued the LCd subcommand LCD
’FTP.FILES’, the new working directory is FTP.FILES.
v If a PDS exists with the exact name of the current local working directory, FTP
considers the working directory to be that PDS. Otherwise, FTP considers the
working directory to be a common prefix qualifier for sequential data sets.
If a PDS exists with the same name as the current local working directory, but
you want the current local working directory to be treated as a common prefix
for sequential data sets, specify the working directory with a period (.) at the
end. For example, if a PDS named TCPUSR14.TEST exists, the subcommand LCD
’TCPUSR14.TEST’ makes the PDS TCPUSR14.TEST the current local working
directory. A subsequent Get command used to copy data set name1 would add
the member name1 to the TCPUSR14.TEST PDS. In contrast, the statement LCD
To use this function, first change the working directory to *DEV.NULL by entering
the following subcommand:
LCD *DEV.NULL
This affects the working directory only for Get commands. You then use the Get
command to copy the file to the client system. The input data set must be valid,
and the output file can either be new or can already exist. In either case, the file is
not actually stored.
The following response shows information such as the number of bytes transferred
and the rate of transfer.
Command:
lcd *dev.null
Working Directory for GET is NULL Device
for PUT is HFS directory /tmp
Command:
get ’user2.junk(junk)’ example
>>> EPSV
229 Entering Extended Passive Mode (|||1034|)
>>> RETR ’user2.junk(junk)’
125 Sending data set USER2.JUNK(JUNK)
250 Transfer completed successfully.
65 bytes transferred in 0.070 seconds. Transfer rate 0.93 Kbytes/sec.
Command:
To end the use of the *dev.null directory for Get commands, issue another change
local working directory subcommand.
Usage
When you enter an FTP session, the working directory on the local host is set
according to the environment in which the FTP client is invoked: $HOME in z/OS
UNIX, your MVS user ID in TSO.
Purpose
Use the LOCSIte subcommand to specify information that is used by the local host
to provide services specific to that host system.
Format
LOCSIte option
options:
ASAtrans
AUTOMount
AUTORecall
BLKsize
= size
BLocks
BLOCKSIze
= size
5
BUfno =
number
0
CHKptint =
number
home
CHKPTrefix userid
local
CHMod ooo filename
symbolic filename
CONDdisp = Catlg
Delete
CTRLConn 7BIT
iconv_ascii
FTP_STANDARD_TABLE
*
CYlinders
DATAClass
= data_class
DATASetmode
DB2 = db2_name
DBSUB
DCbdsn
= data_set_name
Directory
= size
DIRECTORYMode
ENCODING = SBCS
MBCS
EPSV4
FILEtype = type
FWFriendly
ISPFSTATS
LISTSUBdir
LRecl
= length
MBDATACONN = (file_system_codepage,network_transfer_codepage)
MBREQUIRELASTEOL
MBSENDEOL = CRLF
CR
LF
NONE
MGmtclass
= mgmtclass
MIGratevol
= volume_ID
NOASAtrans
NOAUTOMount
NOAUTORecall
NODBSUB
NOEPSV4
NOFWFriendly
NOISPFSTATS
NOLISTSUBdir
NOMBREQUIRELASTEOL
NOQUOtesoverride
NORDW
NORESTGet
NOSBSUB
NOSECUREIMPlicitzos
NOSPRead
NOTRAILingblanks
NOTRUNcate
NOUCSSUB
NOUCSTRUNC
NOWRAPrecord
NOWRTAPEFastio
PDSTYPE =
PDS
PDSE
PRImary
= amount
10
PROGRESS =
number
Qdisk
= volume_serial
QUOtesoverride
RDW
READTAPEFormat
= tape_format
RECfm
= format
RESTGet
RETpd
= days
|
SBDataconn dsname
(file_system_cp,network_transfer_cp)
FTP_STANDARD_TABLE
*
SBSENDEOL = CRLF
CR
LF
NONE
SBSUB
SBSUBCHAR = nn
Space
SECondary
= amount
SECUREIMPlicitzos
SPRead
SQLCol = any
labels
names
STOrclass
= storage_class
TLSRFCLEVEL = DRAFT
RFC4217
TRacks
TRAILingblanks
TRUNcate
UCOUNT
= unit_count | P
UCSHOSTCS
= code_set
UCSSUB
UCSTRUNC
UMask ooo
UNICODEFILESYSTEMBOM = ASIS
ALWAYS
NEVER
Unit
= unit_type
VCOUNT
= volume_count
VOLume =
volume_serial
(volume_serial_list)
WRAPrecord
WRTAPEFastio
Parameters
ASAtrans
Permits the FTP client to interpret characters in the first column of ASA files
being transferred as print control characters.
AUTOMount
Permits automatic mounting of volumes for data sets on volumes that are not
mounted. If AUTOMount is specified and an unmounted volume is needed, a
message is automatically issued to the MVS operator console requesting that
the volume be mounted. The MVS operator must then mount the volume and
reply to the message before FTP can proceed.
AUTORecall
Permits automatic recall of migrated data sets.
BLKsize
Specifies the block size of a newly allocated data set. BLKsize is functionally
equivalent to BLOCKSIze. The BLOCKSIze parameter is obsolete, but it is
accepted to provide compatibility with previous releases of z/OS TCP/IP.
When specified without a size, no block size is used when allocating the new
data set. When specified without a size, the equal sign (=) is optional.
Specify BLKsize with no value if you are also specifying DATAClass=data_class
and you want the SMS data class to provide the BLKsize value, or if you are
specifying DCbdsn=data_set_name and you want to use the block size from the
DCBDSN data set. If BLKsize=size is specified with either the DATAClass or
DCbdsn parameter, the value specified by the LOCSite BLKsize parameter
overrides the DATAClass or DCbdsn block size.
Notes:
1. If you specify BLKsize without a size, FTP does not specify the block size
when allocating new data sets.
2. Be especially careful specifying both BLKsize= and Blocks. While there are
conditions where this is tolerated, if a valid BLKsize cannot be determined,
the data set will not be created when the allocation is attempted.
size
Specifies the block size of a newly allocated data set. The valid range is
0–32 760.
BLKsize=0 is a special case. When BLKsize=0 is specified, the operating
system attempts to determine a block size for the new data set. FTP does
not create the new data set unless the system is able to establish a nonzero
block size.
BLocks
Specifies that primary and secondary space allocations are in blocks.
If both PRImary and SECondary are specified as 0, and an SMS data class has
been specified, the space allocation is determined by the SMS data class and
the BLocks parameter is ignored.
BLOCKSIze
Specifies the block size of a newly allocated data set. BLOCKSIze is
functionally equivalent to BLKsize. BLOCKSIze is obsolete but it is accepted to
provide compatibility with previous releases of z/OS TCP/IP. See the BLKsize
parameter for more information.
BUfno
Specifies the number of access method buffers that is used when data is read
from or written to a data set. The valid range is 1–35. The default value is 5.
CHKptint
Specifies the checkpoint interval for the sending site in a file transfer request. If
the checkpoint interval is 0, no checkpointing occurs and no marker blocks are
transmitted. The default value is 0.
CHKptint must be set by LOCSIte when the client site is the sending site for
the file transfer (PUt command). Do not increase the checkpoint interval above
0 for a PUt unless the receiving site supports the REStart command and is able
to process checkpoint markers in the file transfer data stream.
CHKptint is valid only for block and compressed modes of data transfer.
number
Specifies the checkpoint interval for the sending site in a file transfer
request. This value is used to determine when checkpoint marker blocks
are to be transmitted so that transmission can be restarted based on the
information in the last marker.
A large checkpoint interval means that a large amount of data is sent
between markers and therefore few markers are sent. A smaller checkpoint
interval means that less data is sent in between markers and therefore
more markers are sent.
The costs involved with using a nonzero checkpoint interval are:
v The markers themselves are transmitted, which means more bytes are
being sent across the network (approximately 44 bytes per marker).
v For each marker that is sent by the client, a reply must be sent by the
server on the control connection. The reply acknowledges the marker
and provides the server’s corresponding marker.
Do not execute a CHKptint more often than once every 200KB. For
example, if the file you are transferring has 80-byte records:
CHKPTINT = 200KB / 80 bytes
= 200 * 1024 bytes / 80 bytes
= 2560
CHKPTPrefix
Specifies a key which is used to determine the hlq of the checkpoint data set.
The name will be hlq.FTP.CHKPOINT or hlq.pds_name(CHKPOINT).
home
The default.
userid
Creates the data set ’userid.FTP.CHKPOINT’.
local
Creates a file named current_path.FTP.CHKPOINT or, if the path happens to
be a PDS, then the file name is current_path.pds_name(CHKPOINT).
Note the exceptions for z/OS UNIX and BATCH jobs in the following chart
using ’path’ for current path and ’FN’ for FTP.CHKPOINT:
CHMod
Changes the permission bits for a file.
ooo filename
ooo is an octal mask representing the permissions you want to assign to
filename. Form the octal mask by OR’ing the constants corresponding to
the permission bits you want set:
400
User read
200
User write
100
User execute (or list directory)
040
Group read
020
Group write
010
Group execute
004
Other read
002
Other write
001
Other execute
You cannot use the LOCSITE subcommand CHMod parameter to set the
following permission bits:
v Set-user-ID bit
v Set-group-ID bit
v Sticky bit
See the z/OS UNIX System Services User’s Guide and the z/OS UNIX System
Services Command Reference for more information about file permissions.
symbolic filename
symbolic represents the permissions you want to apply to filename.
If filename does not begin with a slash character (/), it is appended to the
current working directory. If filename does begin with a slash character (/), it is
interpreted as a complete directory name.
The file name specified must be a z/OS UNIX file name for a single file and
cannot contain a wildcard (*) for multiple files. The setting of QUOtesoverride
is ignored and all quotation marks are treated as part of the file name.
CONDdisp
Specifies the disposition of the data set if a retrieve operation for a new data
set ends before all of the data is written.
Catlg
Specifies that a data set is kept and cataloged when an FTP file transfer
ends prematurely.
Delete
Specifies that a data set is deleted when an FTP file transfer ends
prematurely.
Delete is ignored if the file transfer failed as a result of the FTP client being
terminated or if the client has received checkpoint information during data
transfer.
CTRLConn
Specifies the ASCII code page to be used for control connections. The valid
subcommands are:
LOCSITE CTRLConn=7BIT
LOCSITE CTRLConn=iconv_ascii
LOCSITE CTRLConn=FTP_STANDARD_TABLE
LOCSITE CTRLConn=*
Note: Setting the control connection code page using LOCSIte CTRLCONN
disables UTF-8 encoding of the control connection. You must start the
client again to restore UTF-8 encoding.
CYlinders
Specifies that primary and secondary space allocations are in cylinders.
If both PRImary and SECondary are specified as 0, and an SMS data class has
been specified, the space allocation is determined by the SMS data class and
the CYlinders parameter is ignored.
DATAClass
Specifies the SMS data class, as defined by your organization, for the target
host. Specifying DATAClass with no parameter value cancels the dataclass
specification. The equal sign (=) is optional in this case.
See “Specifying values for new data sets” on page 91 for more information
about specifying attributes when allocating new data sets.
data_class
Specifies the SMS data class, as defined by your organization, for the target
host. If values are specified for any of the following LOCSIte parameters,
the values specified by the LOCSIte parameter override the value specified
in the SMS dataclass:
v BLKsize
v Directory
v LRecl
v PRImary
v RECfm
v RETpd
v SECondary
If the DCbdsn parameter is specified on the LOCSIte subcommand, the
LRecl, RECfm, BLOCKSIze, and RETpd (if specified) of the DCBDSN data
set overrides the values specified in the data class.
If the MGmtclass parameter is specified on the LOCSIte subcommand, and
the requested management class specifies a retention period, the retention
period value of the management class can override the retention period
value of the dataclass.
DATASetmode
Specifies that all the data set qualifiers located below the current directory are
treated as entries in the directory (disables DIRECTORYMode).
DB2
Specifies the name of the DB2 subsystem.
db2_name
The name of the DB2 subsystem.
DBSUB
Specifies that substitution is allowed for data bytes that cannot be translated in
a double-byte character translation. The substitution character is selected by
the C/C++ iconv() function; see the z/OS XL C/C++ Programming Guide
information about Internationalization: Locales and Character Sets for more
information.
DCbdsn
Specifies the name of the MVS data set that is to be used as a model for
allocation of new data sets. Specifying DCbdsn with no parameter value
cancels the DCbdsn specification.
data_set_name
Specifies the name of the data set. The file name must be an MVS data set
name. z/OS UNIX file names are not allowed on the DCbdsn parameter.
The setting of QUOtesoverride is ignored. If the file name is enclosed in
single quotation marks, it overrides the current working directory;
otherwise it is appended to the current working directory.
Notes:
1. Specify the LOCSIte parameters RECfm, LRecl, and BLKsize with no
values to allow characteristics from the model DCB to be used.
2. To override the model characteristics of RECfm, LRecL, BLKsize, or
RETpd, specify a value on the LOCSIte command.
3. If MGmtclass is specified, the RETpd value of the MGmtclass can
override the RETpd value.
See “Steps for using a DCBDSN model to create a new data set” on page
93 for more information about DCbdsn.
Directory
Specifies the number of directory blocks to be allocated for the directory of a
PDS.
Specify Directory=0 to allocate without specifying the number of directory
blocks. Specify Directory=0 when you are also specifying DATAClass=dataclass
and you want the SMS dataclass to provide the Directory size.
The size you specify with the Directory parameter overrides the DATAClass
directory specification.
size
Specifies the number of directory blocks to be allocated for the directory of
a PDS. The valid range is 1–16 777 215. A size of 0 indicates that the
directory blocks should be taken from the SMS data class.
DIRECTORYMode
Specifies that only the data set qualifier immediately below the current
directory is treated as an entry in the directory. In directory mode, this data set
qualifier is the only one used by the MPut subcommand.
DIRECTORYMode has no effect on files residing in a z/OS UNIX file system.
ENCODING
Indicates the kind of encoding that is used for conversions between codepages
for data transfers. See “Support for SBCS languages” on page 86and “Support
for MBCS languages” on page 90 for more information.
SBCS
Single Byte encoding. Code pages are specified using the SBDATACONN
statement. This is the default value.
MBCS
Multibyte encoding. Code pages are specified using the MBDATACONN
statement.
EPSV4
Specifies the client is to attempt to use the EPSV command to establish a data
connection on an IPv4 session instead of referring to the FWFRIENDLY setting.
See RFC 2428 for information about the EPSV command. If the server rejects
the EPSV command, the client refers to the FWFRIENDLY setting to determine
how to establish the data connection. When the client is setting up proxy
transfer data connections, it will try the EPSV and EPRT commands on IPv4
sessions; if a server rejects the EPSV or EPRT command, the client will try the
PASV or PORT command instead.
If the server rejects either the EPSV or the EPRT command during the session,
the client won’t send EPSV to the server again, even when EPSV4 is specified.
FILEtype
Specifies the file type of the data set.
type
The file type of the data set can be:
Type Description
SEQ Sequential or partitioned data sets
SQL SQL query function
FWFriendly
Specifies that the FTP client is firewall-friendly. This means that data
connections will be set up from the FTP client to the FTP server.
Note: When the FTP server has an IPv6 address, data connections are always
set up from the FTP client to the FTP server without reference to the
FWFriendly setting.
ISPFSTATS
Allows FTP to create or update ISPF Member statistics when Get or MGet
subcommands are issued.
LISTSUBdir
Use the LISTSUBdir option to indicate that wildcard searches should apply to
the current working directory and should also span one level of its
subdirectories. For the FTP client, this setting applies when issuing an MPut *
subcommand.
Restriction: The LISTSUBdir option applies to z/OS UNIX file operations only;
MVS data set operations are not affected.
Result: If the LISTSUBdir option is not specified on the LOCSITE subcommand
and the LISTSUBDIR statement is not specified in the client FTP.DATA file, the
default is as if the LISTSUBdir option was specified on the LOCSITE
subcommand.
LRecl
Used to specify the logical record length (LRecl) of a newly allocated data set.
Specify LRecl with no value when you are also specifying
DATAClass=data_class and you want the SMS dataclass to provide the LRecl
value, or when you are specifying DCbdsn=data_set_name and you want to use
the LRecl from the DCBDSN data set. If LRecl=length is specified with either
DATAClass or DCbdsn, the length specified by the LOCSIte LRecl parameter
overrides the DATAClass or DCbdsn LRecl.
length
Specifies the logical record length of a newly allocated data set. The valid
range is 0–32 760. A special value of x (LRecl=x) is also supported to
indicate that a logical record length can exceed 32 760 for variable-length
spanned records.
Specifying LRecl=0 has the same effect as specifying LRecl with no
parameters.
MBDATACONN=(file_system_codepage,network_transfer_codepage)
Specifies the codepages for the file system and for the network transfer used
when the client does data conversion during a data transfer. This parameter
affects the conversion of multibyte character set (MBCS) data (including
support for DBCS code pages) and is used when the ENCODING=MBCS is
also specified.
See “Support for MBCS languages” on page 90 for more information.
file_system_codepage
Specifies the name of the file system codepage.
network_transfer_codepage
Specifies the name of the network transfer codepage.
MBREQUIRELASTEOL
Specifies that the FTP client will report an error when a multibyte file or data
set is received from the server with no EOL sequence in the last record
received. FTP will abort the file transfer.
MBSENDEOL
Specifies which end-of-line sequence to use when ENCODING is MBCS, the data
transfer type is ASCII, MODE is Stream, and data is being sent to the server.
The following are possible values:
CRLF
Append both carriage return (X'0D') and line feed (X'0A') end-of-line
sequences to each line of translated text. This is the default and the
standard sequence defined by RFC 959. The z/OS server can receive ASCII
data in this format only.
CR
Append only a carriage return (X'0D') end-of-line sequence to each line of
translated text.
LF Append only a line feed (X'0A') end-of-line sequence to each line of
translated text.
NONE
Do not append an end-of-line sequence to the line of translated text.
Rules:
v Most servers support only the CRLF value for incoming ASCII data. Do not
specify another value for MBSENDEOL unless you have verified that the
server is expecting the end-of-line sequence that you specify.
v Do not use an end-of-line sequence other than CRLF if the server is a z/OS
FTP server. The z/OS FTP server supports only the CRLF value for
incoming ASCII data.
v If you send a file to a server when MBSENDEOL has a value other than
CRLF, a subsequent SIZE command to that server targeting the file you sent
could yield unpredictable results. Any size indicated in the server reply for
such a file might not be reliable.
MGmtclass
Used to specify the SMS management class as defined by your organization for
the target host. Specifying MGmtclass with no mgmtclass cancels the mgmtclass
specification. The equal sign (=) is optional in this case.
mgmtclass
Specifies the SMS management class as defined by your organization for
the target host. If the mgmtclass specified has a setting for RETpd, the
value specified by the mgmtclass can override the setting of the LOCSIte
RETpd parameter, the RETpd value of a model data set if the DCbdsn
parameter is specified, and the RETpd value defined in an SMS data class
if DATAClass is specified. See “Specifying values for new data sets” on
page 91 for more information about specifying attributes when allocating
new data sets.
MIGratevol
Specifies the volume ID for migrated data sets if they do not use IBM storage
management systems. If you do not specify MIGratevol, the default
volume_serial is MIGRAT.
volume_ID
The volume ID for migrated data.
NOASAtrans
Treats ASA file transfers as regular file transfers; that is, the ASA characters are
treated as part of the data and are not converted to print control characters.
NOAUTOMount
Prevents automatic mounting of volumes for data sets on volumes that are not
mounted.
NOAUTORecall
Prevents automatic recall of migrated data sets.
Note: When the FTP server has an IPv6 address, data connections are always
set up from the FTP client to the FTP server without reference to the
FWFriendly setting.
NOISPFSTATS
Does not allow FTP to create or update ISPF Member statistics when Get or
MGet subcommands are issued.
NOLISTSUBdir
Use the NOLISTSUBdir option to indicate that wildcard searches should apply
only to the current working directory and should not span its subdirectories.
For the FTP client, this setting applies when issuing an MPut * subcommand.
Restriction: The NOLISTSUBdir option applies to z/OS UNIX file operations
only; MVS data set operations are not affected.
Result: If the NOLISTSUBdir option is not specified on the LOCSITE
subcommand and the LISTSUBDIR statement is not specified in the client
FTP.DATA file, the default is as if the LISTSUBdir option was specified on the
LOCSITE subcommand.
NOMBREQUIRELASTEOL
Specifies that the FTP client will not report an error when a multibyte file or
data set is received from the network with no EOL sequence in the last record
received. FTP will report the file transfer as completed.
NOQUOtesoverride
A single quote at the beginning of the file name, as well as all other single
quotation marks contained in the file name, is treated as part of the actual file
name. The entire file name, including the leading single quotation mark, is
appended to the current working directory.
NORDW
Specifies that variable record descriptor words (RDWs) are discarded during
FTP transmission of variable format data sets. This applies to transfers in
stream mode only.
NORESTGet
Prevents opening the checkpoint data set for a Get request. Thus, checkpoint
will not be active or recognized. Using this parameter when opening the
checkpoint data set might cause a problem.
NOSBSUB
Specifies that substitution is not allowed for data bytes that cannot be
translated in a single-byte character translation. This causes a data transfer
failure if a character cannot be translated during the transfer.
NOSECUREIMPlicitzos
When the client connects to the server’s TLSPORT, the security handshake and
negotiation are done immediately after the connect and before the 220 reply is
received.
NOSPRead
Specifies that the output is in report format rather than spreadsheet format
when the file type is SQL.
NOTRAILingblanks
Specifies that the FTP client does not preserve the trailing blanks that are in a
fixed format data set when the data is sent to a foreign host.
NOTRUNcate
Specifies that truncation is not permitted. The FTP client will set an error and
fail file transfer if a record that is longer than LRECL of the new file is
detected.
NOWRAPrecord
Indicates that data is truncated if no new line character is encountered before
the logical record length of the receiving file is reached.
Note: If NOTRUNcate is also set, an error will be set and the file transfer will
fail.
NOWRTAPEFastio
Indicates that ASCII stream data that is being written to tape must be written
using the Language Environment® run time library.
PDSTYPE
Specifies whether the FTP client creates local MVS directories as partitioned
data sets or as partitioned data sets extended.
When specified without a value, FTP will not specify to z/OS whether to
allocate a new MVS directory as a PDS or a PDSE. When specified without a
value, the equal sign (=) is optional.
PDS
Allocate directories as partitioned data sets.
PDSE
Allocate directories as partitioned data sets extended.
PROGRESS
Specifies the interval between progress report messages generated by the FTP
client during a file transfer (inbound or outbound).
number
Specifies the interval (in seconds) between progress report messages that
are generated in the FTP client during an inbound or outbound file
| transfer. Valid values are in the range 10-86400, or 0. The value 0 turns off
progress reporting in the FTP client. The default value is 10 seconds.
The messages that are generated as part of progress reporting are
EZA2509I and EZA1485I. These messages are generated automatically at
10-second intervals by the FTP client in releases prior to version V1R6.
Beginning in version V1R6, the default behavior is the same as in prior
releases, but the length of the interval and whether to generate the
messages can be configured by using the PROGRESS parameter setting on
the LOCSITE subcommand or by specifying the PROGRESS statement in
the FTP.DATA file.
PRImary
Used to specify the number of tracks, blocks, or cylinders for primary
allocation. When specified with a value of 0, no primary value is used when
allocating the data set.
Specify a PRImary allocation of 0 when you are also specifying
DATAClass=data_class and when you want the SMS dataclass to provide the
PRImary amount.
To enable the SMS data class to determine the space allocation, both PRImary
and SECondary allocations must be specified as 0. The tracks, blocks, cylinders
setting is ignored in this case. If PRImary with amount not equal to 0 is
specified with DATAClass, the value specified by the LOCSIte PRImary
parameter overrides the DATAClass space allocation.
amount
Specifies the number of tracks, blocks, or cylinders for primary allocation.
For allocating partitioned data sets, this is the amount of space that is
allocated for the primary extent.
For allocating sequential data sets this is the maximum amount of space
that is allocated for the primary extent. If a lesser amount of space is
needed to hold the data being transferred, only the amount of space
actually needed to hold the data is allocated. The valid range is 1–16 777
215.
Qdisk
Used to display statistics about the amount of space available on a volume. If
Qdisk is entered without a specific volume_serial, statistics about available space
are displayed for each volume that is defined with “Use Attribute=storage”.
volume_serial
Displays statistics about available space on a specific volume.
QUOtesoverride
Specifies that a single quotation mark at the beginning and end of a file name
should override the current working directory instead of being appended to
the current working directory. This is the way single quotation marks are used
in all previous MVS FTP servers, and this is the default. Any single quotation
mark inside the beginning and ending quotation marks are treated as part of
the file name.
QUOtesoverride indicates the usage of single quotation marks appearing at the
beginning of, or surrounding, a file name. The setting of this keyword affects
all FTP subcommands that have a path name as a parameter except keywords
on the LOCSIte subcommand.
RDW
Specifies that variable record descriptor words (RDWs) are treated as if they
were part of the record and are not discarded during FTP transmission of
variable format data sets. This applies to transfers in stream mode only.
Code Description
F Fixed record length
V Variable record length
U Undefined record length
B Blocked records
S Spanned records (if variable) / standard records (if fixed)
A Records contain ISO/ANSI control characters
M Records contain machine code control characters
RESTGet
Allows opening the checkpoint data set for the Get request. This is the default
when the RESTGet statement has not been added to the FTP.DATA file.
RETpd
Used to specify the number of days that a newly allocated data set should be
retained.
Specify RETpd with no value when you are also specifying
DATAClass=data_class or MGmtclass=mgmtclass and you want SMS to provide
the RETpd value, or when you are specifying DCbdsn=data_set_name and you
want to use the RETpd from the DCBDSN data set. If more than one of the
LOCSIte parameters (RETpd, MGmtclass, DATAClass, or DCbdsn) are
specified, the order of precedence (highest to lowest) is:
1. MGmtclass
2. RETpd
3. DCbdsn
4. DATAClass
If a retention period is associated with an SMS management or data class, or
with a model DCBDSN data set, the value of the retention period can be
overridden to another nonzero value, but it cannot be overridden to have no
retention period specified for the newly created data sets.
days
Specifies the number of days that a newly allocated data set should be
retained. The valid range is 0–9999. A value of 0 indicates a retention
period of 0 days so that the data set expires the same day as it was
created.
SBDataconn
Specifies the conversions between file system and network code pages to be
used for data transfers.
LOCSITE SBDataconn=dsname
LOCSITE SBDataconn=(file_system_cp,network_transfer_cp)
LOCSITE SBDataconn=FTP_STANDARD_TABLE
LOCSITE SBDataconn=*
FTP_STANDARD_TABLE
Indicates that the FTP internal tables, which are the same as the tables that
are shipped in TCPXLBIN(STANDARD), are to be used on the data
connection.
* Indicates the translate tables set up at initialization for the data connection
must be used.
SBSENDEOL
Specifies which end-of-line sequence to use when ENCODING is SBCS, the data
transfer type is ASCII, and data is being sent to the server. The following are
possible values:
CRLF
Append both carriage return (X'0D') and line feed (X'0A') end-of-line
sequences to each line of translated text. This is the default and the
standard sequence defined by RFC 959. The z/OS server can receive ASCII
data in this format only.
CR
Append only a carriage return (X'0D') end-of-line sequence to each line of
translated text.
LF Append only a line feed (X'0A') end-of-line sequence to each line of
translated text.
NONE
Do not append an end-of-line sequence to the line of translated text.
Rules:
v Most servers support only the CRLF value for incoming ASCII data. Do not
specify another value for SBSENDEOL unless you have verified that the
server is expecting the end-of-line sequence that you specify.
v Do not use an end-of-line sequence other than CRLF if the server is a z/OS
FTP server. The z/OS FTP server supports only the CRLF value for
incoming data.
v If you send a file to a server while SBSENDEOL has a value other than
CRLF, a subsequent SIZE command to that server targeting the file you sent
could yield unpredictable results. Any size indicated in the server reply for
such a file might not be reliable.
SBSUB
Specifies that substitution is allowed for data bytes that cannot be translated in
a single byte character translation. The substitution character is specified by the
SBSUBCHAR parameter.
SBSUBCHAR nn
Specifies the value that is used for substitution when SBSUB is also specified.
The value is one of the following:
SPACE
When the target code set is ASCII, replace untranslatable characters
with X'20' during SBCS data transfers. When the target code set is
EBCDIC, replace untranslatable characters with X'40' during SBCS data
transfers.
code_set
Name of the EBCDIC code set to be used when converting to and from
| UCS-2.
UCSSUB
| In UCS-2-to-EBCDIC conversion, the EBCDIC substitution character is used to
| replace any UCS-2 character that cannot successfully be converted. Data
transfer continues.
UCSTRUNC
| In UCS-2-to-EBCDIC conversion, truncation of EBCDIC data is allowed. The
data transfer continues even if EBCDIC data is truncated.
UMask
Defines the file mode creation mask. The file mode creation mask defines
which permission bits are not to be set on when a file is created. When a file is
created, the permission bits requested by the file creation are compared to the
file mode creation mask, and any bits requested by the file creation which are
not allowed by the file mode creation mask are turned off.
The format of the UMask keyword is UMask ooo.
When a file is created, the specified permission bits for the file are 666
(-rw-rw-rw-). If the file mode creation mask is 027, the requested permissions
and the file mode creation mask are compared:
110110110 - 666
000010111 - 027
---------
11010000 - 640
The actual permission bits set for the file when it is created is 640 (-rw-r-----).
Notes:
1. The default value for UMask is 027.
2. You cannot use FTP to create z/OS UNIX files with execute permissions. If
you require execute permissions, use the LOCSIte CHMod command to
change permissions after the file has been created.
UNICODEFILESYSTEMBOM
Specifies whether the FTP client will store incoming Unicode files with a byte
order mark (BOM).
| Restriction: The only Unicode encoding formats supported for file storage by
| z/OS FTP are UTF-8 and UTF-16. Files are always stored in big endian format.
| Result: The byte order mark (BOM) stored with the file is determined by the
| encoding used to store the file rather than by the format of the BOM sent with
| the file.
ASIS
Store incoming Unicode files with a byte order mark only if the file was
sent with a byte order mark
ALWAYS
Store incoming Unicode files with a byte order mark regardless of whether
the file was sent with a byte order mark.
NEVER
Store incoming Unicode files without a byte order mark regardless of
whether the file was sent with a byte order mark.
Result: The Unicode byte order mark, U+FEFF, can also be interpreted as zero
width nonbreaking space. z/OS FTP considers only the first character of the
file as a possible byte order mark. No other instance of the BOM sequence in
the file is affected by this setting.
Unit
Specifies the unit type for allocation of new data sets.
unit_type
The unit type (for example, 3380) for the allocation of new data sets on
direct access devices. If unit_type is not specified, the unit type used for
allocation is set back to the system default.
VCOUNT
| Specifies the number of tape data set volumes that an allocated data set can
span. When this parameter is specified without a volume_count value, the FTP
| server uses the volume count 50 when it allocates tape data sets.
volume_count
Valid values are in the range 1–255.
VOLume
Specifies the volume serial number for allocation of new data sets.
volume_serial
The serial number of the volume to use for allocation.
volume_serial_list
A list of one or more volume serial numbers for allocation. Delimit each
volume serial number from the previous one with a comma.
Usage
v Because more than one parameter can be specified with the LOCSIte
subcommand, parameter can be repeated many times, with each parameter
separated by a blank space.
v Issue the HElp LOCSIte subcommand to display a list of services available on
the local host.
v The site-dependent information set with the LOCSIte subcommand remains
active until you issue a new LOCSIte subcommand. The new LOCSIte
subcommand adds to or changes the parameters established by previous
LOCSIte subcommands.
v If you specify one or more incorrect parameters with the LOCSIte subcommand,
an error message specifying the incorrect parameter is displayed. All correct
parameters are set, regardless of any incorrect parameters, and do not need to be
reissued.
Context
v See “HElp and ? subcommands—Display help information” on page 186 for
more information about the HElp subcommand.
v To check the effect of the LOCSIte command on the attributes at the local host,
see “LOCSTat subcommand—Display local status information” on page 218.
Purpose
Use the LOCSTat subcommand to display local status information.
Tip: Issuing the LOCSTat subcommand with no parameters causes all local status
to be displayed. To display local status for a single configuration option, issue the
LOCSTat subcommand with at least one parameter.
Format
LOCSTat
option
options:
| ASAtrans
AUTOMount
AUTORecall
BLocks
BLOCKSIze
BUfno
CConntime
CHKptint
CHKPTrefix
CONDdisp
CYlinders
DATAClass
DATACTtime
DATASetmode
DB2
DBSUB
DCbdsn
DCOnntime
Directory
DIRECTORYMode
ENcoding
EPSV4
FILEtype
FTpkeepalive
FWFriendly
INacttime
ISPFStats
LISTSUBdir
LRecl
MBdataconn
MBREQUIRELASTEOL
MBSENDEOL
MGmtclass
MIGratevol
MYopentime
PDSTYPE
PRImary
QUOtesoverride
RDw
READTAPEFormat
RECfm
RESTGet
RETpd
SBDataconn
SBSENDEOL
SBSUB
SBSUBChar
SECondary
SECUREIMPlicitzos
SPRead
SQLCol
STOrclass
TLSRFCLEVEL
TRacks
TRAILingblanks
TRUNcate
UCOUNT
UCSHostcs
UCSSub
UCSTrunc
UMask
UNICODEFILESYSTEMBOM
Unit
VCOUNT
VOLume
WRAPrecord
WRTAPEFastio
Parameters
ASAtrans
Indicates that the FTP client interprets characters in the first column of ASA
files that are being transferred as print control characters.
AUTOMount
Indicates automatic mounting of volumes for data sets that are on unmounted
volumes.
AUTORecall
Indicates automatic recall of migrated data sets.
BLocks
Indicates that primary and secondary space allocations are in blocks.
BLOCKSIze
Indicates the block size of a newly allocated data set.
BUfno
Indicates the number of access method buffers that is used when data is read
from or written to a data set.
CConntime
Indicates the length of time that the FTP client waits after attempting to close a
control connection before terminating it and reporting an error.
CHKptint
Specifies the checkpoint interval for the sending site in a file transfer request.
CHKPTPrefix
Specifies a key that is used to determine the high-level qualifier of the
checkpoint data set.
CONDdisp
Specifies the disposition of the data set if a retrieve operation for a new data
set ends before all of the data is written.
CYlinders
Indicates that primary and secondary space allocations are in cylinders.
DATAClass
Specifies the SMS data class.
DATACTtime
Specifies the length of time that the FTP client waits after attempting to send
or receive data before terminating the connection and reporting an error to the
user.
DATASetmode
Indicates whether DATASetmode or DIRECTORYMode is in effect.
DB2
Specifies the name of the DB2 subsystem.
DBSUB
Indicates that substitution is allowed for data bytes that cannot be translated in
a double-byte character translation.
DCbdsn
Specifies the name of the MVS data set to be used as a model for allocating
new data sets.
DCOnntime
Specifies the amount of time that FTP waits attempting to close a data transfer
before terminating the connection and reporting an error.
Directory
Specifies the number of directory blocks to be allocated for the directory of a
partitioned data set (PDS).
DIRECTORYMode
Indicates whether DATASetmode or DIRECTORYMode is in effect.
ENCODING
Specifies the kind of encoding that is used for conversions between code pages
for data transfers.
EPSV4
Indicates that the client will attempt to use the EPSV command to establish a
data connection on an IPv4 session instead of referring to the FWFRIENDLY
setting.
FILEtype
Specifies the file type of the data set.
FTpkeepalive
Specifies the control connection keepalive timer value in seconds.
FWFriendly
Indicates that the FTP client is firewall-friendly.
INacttime
Specifies the length of time that the FTP client waits for an expected response
from the server, on either the control or the data connection, before closing the
session.
ISPFSTATS
Indicates whether FTP will create or update ISPF Member statistics when Get
or MGet subcommands are issued.
LISTSUBdir
Indicates that wildcard searches should apply to the current working directory
and should also span its subdirectories.
LRecl
Specifies the logical record length (LRecl) of a newly allocated data set.
MBDATACONN
Specifies the code pages for the file system and for the network transfer that
are used when the client does data conversion during a data transfer.
MBREQUIRELASTEOL
Indicates whether the last record of an incoming multibyte transfer is required
to have an EOL sequence.
TRUE
A missing EOL on the last record received is treated as an error.
FALSE
A missing EOL on the last record received is ignored.
MBSENDEOL
Specifies which end-of-line sequence to use when the ENCODING value is
SBCS, the data is ASCII, and data is being sent to the server.
MGmtclass
Specifies the SMS management class.
MIGratevol
Specifies the volume ID for migrated data sets if they do not use IBM storage
management systems.
MYopentime
Specifies the length of time that the FTP client waits for a session to open
before terminating the attempt and reporting an error.
PDSTYPE
Indicates whether the FTP client creates local MVS directories as partitioned
data sets or as partitioned data sets extended.
PRImary
Specifies the number of tracks, blocks, or cylinders for the primary allocation.
QUOtesoverride
Indicates that a single quotation mark at the beginning and end of a file name
should override the current working directory instead of being appended to
the current working directory.
RDW
Indicates that variable record descriptor words (RDWs) are treated as if they
are part of the record and are not discarded during FTP transmission of
variable format data sets.
READTAPEFormat
Specifies information about an input data set on tape.
RECfm
Specifies the data set record format.
RESTGet
Indicates that opening the checkpoint data set for the Get request is allowed.
RETpd
Specifies the number of days that a newly allocated data set should be
retained.
SBDataconn
Specifies the conversions between file system and network code pages to be
used for data transfers.
SBSENDEOL
Specifies which end-of-line sequence to use when ENCODING is SBCS, the
data is ASCII, and data is being sent to the client.
SBSUB
Indicates that substitution is allowed for data bytes that cannot be translated in
a single byte character translation.
SBSUBCHAR
Specifies the value that is used for substitution when SBSUB is also specified.
SECondary
Specifies the number of tracks, blocks, or cylinders for a secondary allocation.
SECUREIMPlicitzos
Specifies that when the client connects using the TLSPORT implicit connection,
the client will wait for the 220 good morning reply before initiating the security
handshake and negotiation.
SPRead
Indicates that the output is in spreadsheet format when the file type is SQL.
SQLCol
Indicates the SQL output file column headings.
STOrclass
Indicates the SMS storage class.
| TLSRFCLEVEL
| Indicates the level of RFC 4217, On Securing FTP with TLS, that is supported by
| the client.
TRacks
Indicates that primary and secondary space allocations are in tracks.
TRAILingblanks
Indicates that the FTP client preserves the trailing blanks in a fixed-format data
set when the data is sent to a foreign host.
TRUNcate
Indicates that truncation is permitted.
UCOUNT
Specifies how many devices to allocate concurrently to support the allocation
request.
UCSHOSTCS
Specifies the EBCDIC code set to be used when converting to and from
Unicode.
UCSSUB
Indicates that in Unicode-to-EBCDIC conversion, the EBCDIC substitution
character is used to replace any Unicode character that cannot be successfully
converted.
UCSTRUNC
Indicates that in Unicode-to-EBCDIC conversion, EBCDIC data truncation is
allowed.
UMask
Specifies the file mode creation mask.
UNICODEFILESYSTEMBOM
Indicates whether the FTP client will store incoming Unicode files that have a
byte order mark.
Unit
Specifies the unit type for allocation of new data sets.
VCOUNT
| Specifies the number of tape data set volumes that an allocated data set can
span.
VOLume
Specifies the volume serial number for allocation of new data sets.
WRAPrecord
Indicates that data is wrapped to the next record if no new-line character is
encountered before the logical record length of the receiving file is reached.
WRTAPEFastio
Indicates that ASCII stream data that is being written to tape can be written
using BSAM I/O.
Examples
The following is an example of the output from the LOCSTat subcommand, issued
with a single parameter:
Command: locstat dconntime
DCONNTIME is 120
Command:
The following example shows part of the output from a LOCSTat subcommand.
Command: locstat
Trace: FALSE, Send Port: TRUE
Send Site with Put command: TRUE
Connected to:9.67.113.57, Port: 6321, logged in
Local Port: 1045
Proxy connection to:9.67.112.25, Port: 6121, logged in
Proxy Local Port: 1046
Data type:a, Transfer mode:s, Structure:f
Automatic recall of migrated data sets.
Automatic mount of direct access volumes.
Data set mode. (Do not treat each qualifier as a directory.)
Primary allocation 2 cylinders, Secondary allocation 3 cylinders
Partitioned data sets will be created with 23 blocks
FileType is SEQ (Sequential - the default).
Number of access method buffers is 1.
Mgmtclass for the new data sets is MGMT1
Storclass for the new data sets is STOR1
Dataclass for the new data sets is DATA1
RDW’s from VB/VBS files are retained as part of data.
Retention period is 2
DB2 subsystem name is DB2
Volid of Migrated Data Sets is MIGRAT
Data sets will be allocated like data set ’USER33.TEST.S.A’
Trailing blanks in records read from RECFM F data sets are discarded.
Record format: FB, Lrecl: 80, Blocksize: 8000.
Data sets will be allocated on CPDLB0
Data sets will be allocated using unit SYSDA
Wrapping data into next record.
Checkpoint interval is 10000
Prompting: ON, Globbing: ON
ASA control characters transferred as C control character sequences
New data sets deleted if a store operation terminates abnormally
Single quotes will override the current working directory
UMASK value is 027
Using ’USER33.FTP.DATA’ for local site configuration parameteres
Command:
Purpose
Use the LMkdir subcommand to create a PDS, PDSE, or z/OS UNIX file system
directory on the local host. This subcommand provides you with an easy way to
create a directory in the local host for data transfer.
Format
LMkdir directory
( like remote_directory
Parameters
directory
Specifies the name of the PDS, PDSE, or z/OS UNIX file system directory to be
created.
remote_directory
Specifies the name of a remote MVS PDS or PDSE that is to be a model for the
directory to be created. This parameter is valid only when directory is a PDS or
PDSE name. If you specify this parameter, the local site variables will change,
and FTP will open and read the remote data set.
Examples
In this example, before LMkdir is issued, the local host had the following data sets:
v MVSUSER.ISPF.ISPPROF
v MVSUSER.JCL.CNTL
v MVSUSER.SMFTEST
v MVSUSER.TCPIP.DATA
User: ftp 1.1.2.3
System: IBM FTP CS/390 V2R10 1997 314 01:11 UTC
220-EZAFTSRV IBM CS/390 V2R10 at EMU.ABC.OZ, 17:04:12 on 08/03/97
220 Connection will close if idle for more than 5 minutes.
NAME (<host>:tsouserid):
User: mvsuser
System: >>>USER mvsuser
331 Send password please.
Password:
>>>PASS ********
230 MVSUSER is logged on.
Command:
User: lpwd
System: Local directory is MVSUSER.
Command:
User: lcd ftp
System: Local directory name set to MVSUSER.FTP.
Command:
User: lmkdir example
System: MVSUSER.FTP.EXAMPLE created.
Command:
MVSUSER.FTP.EXAMPLE has now been created. You can the same result directly with
the LMKDIR ’MVSUSER.FTP.EXAMPLE’ command.
After the LMkdir subcommands were issued, the local host had the following data
sets under MVSUSER:
v MVSUSER.FTP.EXAMPLE
v MVSUSER.ISPF.ISPPROF
v MVSUSER.JCL.CNTL
v MVSUSER.SMFTEST
v MVSUSER.TCPIP.DATA
v MVSUSER.EXAMPLE.LINKLIB
Usage
v FTP provides no subcommand to display a list of local directory entries. You
should use TSO ISPF facility to check whether the directory is created by the
LMkdir subcommand.
v If you are running FTP in a z/OS UNIX environment, you can use the !
subcommand to check the status of z/OS UNIX file system directories.
v The directory value is appended to the local current working directory to form
the name of the created PDS, PDSE, or z/OS UNIX file system directory. To
override the local current working directory, specify an absolute z/OS UNIX file
system path name:
/directory
– Only the 3390 device architecture is supported. If the (like parameter is used
for directories residing on other types of devices, unpredictable results will
occur. Use of the (like parameter when the source or target directories do not
reside on a 3390 architecture device is not recommended.
– If the remote data set is migrated, the server will inspect the AUTORECALL
setting to determine whether to recall the data set or fail the request. If
AUTORECALL is true, FTP will attempt to recall the data set; otherwise it
will fail the request. Similarly, if the remote data set is not mounted, the
server will inspect the AUTOMOUNT setting to determine whether to mount
the data set or fail the request. If AUTOMOUNT is true, the server will
attempt to mount the data set; otherwise, it will fail the request. You can
change the server’s AUTOMOUNT and AUTORECALL settings with the SITE
subcommand. Choosing AUTOMOUNT or AUTORECALL could result in a
long delay as the server waits for the data set to become available.
Context
v See “LOCSIte subcommand—Specify site information to the local host” on page
195 and “LOCSTat subcommand—Display local status information” on page 218
for information about setting and displaying the data set characteristics.
v See “SIte subcommand—Send site-specific information to a host” on page 270
for information about setting the AUTOMOUNT and AUTORECALL values.
Purpose
Use the LPwd subcommand to display the name of the current working directory
on the local host.
Format
LPwd
Parameters
There are no parameters for this subcommand.
Examples
Display the name of the current working directory:
lpwd
Local directory is partitioned data set USER14.FTP.TEST1.
Command:
Purpose
Use the LS subcommand to list only the names of a set of remote files, file group,
or directory.
Format
LS
name ( Disk
Parameters
name
Specifies the set of remote files whose names are to be listed. The default is the
entire current directory or file group.
Disk
Stores the results of the LS subcommand in the user_id.FTP.LSOUTPUT data
set. The results are not displayed on the screen.
Note: If the local current working directory is a z/OS UNIX file system
directory, the results are stored in a file named LSOUTPUT.
Restriction: The LISTSUBdir option applies to z/OS UNIX file operations only;
MVS data set operations are not affected.
Results:
1. If the LISTSUBdir option is not specified on the SITE subcommand and the
LISTSUBDIR statement is not specified in the server FTP.DATA file, the default
is as if the LISTSUBdir option was specified on the SITE subcommand.
2. If the z/OS FTP server has the NOLISTSUBdir option specified on the SITE
subcommand or has LISTSUBDIR FALSE specified in the server FTP.DATA file,
an ls * command will list only the files in the current directory.
Examples
Example 1: The following is a sample response that is displayed as a result of the
LS subcommand.
>>>PORT 9,67,58,227,4,63
200 Port request OK.
>>>NLST
125 List started OK.
A.X
CHR.TXT
OBEY.TCPIP
PROFILE.EXEC
SPF.ISPPROF
USERTRAN.TCPXLBIN
250 List completed successfully.
Command:
The following is a sample entry and the response that is displayed as a result of
the LS subcommand listing z/OS UNIX files.
cd ’/u/user121/ftp.example’
>>>CWD ’/u/user121/ftp.example’
250 HFS directory /u/user121/ftp.example is the current working directory
Command:
ls
>>>PORT 9,67,112,25,4,62
200 Port request OK.
>>>NLST
125 List started OK
append02
file1
file2
file3
file4
file5
250 List completed successfully.
Command:
Usage
v To make a file group the current working directory, use the CD subcommand.
The method you use to specify a directory or file group is host-dependent.
v You can use special characters for pattern matching when specifying the name.
These characters depend on the host FTP server. See “DIr subcommand—Obtain
a list of directory entries” on page 168 for information about using special
characters with the z/OS FTP server.
v If the current local directory is a PDS, only a member named LSOUTPUT is
created. If the current local directory is not a PDS, the local directory, not the
user ID, is used as the high-level qualifier for the data set name.
v If the local current working directory is a z/OS UNIX file system directory, the
results are stored in a file named LSOUTPUT.
v LS lists entries only for data sets and file types that FTP can process (see
Appendix A, “Specifying data sets and files,” on page 429 for a list). GDG base,
VSAM, and ATL library entries are among the types not included in the LS
output. See “DIr subcommand—Obtain a list of directory entries” on page 168 to
list entries for all types of data sets or files.
Context
v See Appendix A, “Specifying data sets and files,” on page 429 for more
information about pattern matching and about specifying data sets and files.
v To make a file group the current working directory, see “CD
subcommand—Change the directory on the remote host” on page 153.
v To a list of complete directory entries with auxiliary information about the files,
see “DIr subcommand—Obtain a list of directory entries” on page 168.
v To change the local directory, see “LCd subcommand—Change the local working
directory” on page 193.
Purpose
Use the MDelete subcommand to delete multiple files.
Format
MDelete foreign_file
Parameters
foreign_file
Specifies the name of the file to be deleted on the remote host.
Because more than one file can be deleted with the MDelete subcommand, the
foreign_file parameter of the MDelete subcommand can be repeated many
times, with each foreign_file separated by a blank space.
Results:
1. At the end of the report, Netstat displays the host name that the resolver used
for the resolution and the list of IP addresses returned from the resolver that it
used as filters.
2. If the LISTSUBdir option is not specified on the SITE subcommand and the
LISTSUBDIR statement is not specified in the server FTP.DATA file, the default
is as if LISTSUBdir option was specified on the SITE subcommand.
3. If the z/OS FTP server has the NOLISTSUBdir option on the SITE
subcommand or LISTSUBDIR FALSE in the server FTP.DATA file, an MDelete *
deletes only the files in the current directory.
Restriction: The LISTSUBdir option applies to z/OS UNIX file operations only;
MVS data set operations are not affected.
Examples
Example 1: Following is a sample entry and the response that is displayed as a
result of the MDelete subcommand for multiple z/OS UNIX files.
cd ’/u/user121/ftp.example’
>>>CWD ’/u/user121/ftp.example’
250 HFS directory /u/user121/ftp.example is the current working directory
Command:
mdelete file1 file2 file3
>>>PORT 9,67,112,25,4,75
200 Port request OK.
>>>NLST file1
125 List started OK
250 List completed successfully.
>>>PORT 9,67,112,25,4,77
200 Port request OK.
>>>NLST file2
125 List started OK
250 List completed successfully.
>>>PORT 9,67,112,25,4,76
200 Port request OK.
>>>NLST file3
125 List started OK
250 List completed successfully.
>>>DELE file1
250 /u/user121/ftp.example/file1 deleted.
>>>DELE file2
250 /u/user121/ftp.example/file2 deleted.
>>>DELE file3
250 /u/user121/ftp.example/file3 deleted.
Command:
site listsubdir
>>> SITE listsubdir
200 SITE command was accepted
prompt
Interactive mode is off
Command:
mdelete *
>>> PORT 127,0,0,1,4,15
200 Port request OK.
>>> NLST *
125 List started OK
250 List completed successfully.
>>> DELE x
250 /tmp/mgetmput/x deleted.
>>> DELE y/x
250 /tmp/mgetmput/y/x deleted.
Command:
Usage
v If you specify one or more incorrect foreign files with the MDelete subcommand,
an error message specifying the incorrect foreign file is displayed. All correct
foreign files are deleted, regardless of any incorrect foreign files, and the
MDelete subcommand does not need to be reissued for these files.
v z/OS UNIX file names require special handling for certain special characters. All
special characters that the operating system requires to be preceded by an escape
character in commands issued to the shell must be preceded by the backslash (\)
escape character, except for the single quote (’), double quote (”), or blank ( ).
Context
See Appendix A, “Specifying data sets and files,” on page 429 for more information
about naming conventions.
Purpose
Use the MGet subcommand to copy multiple files from a remote host to your local
host and create a corresponding number of local files.
Format
MGet foreign_file
( REPLACE
Parameters
foreign_file
Specifies the name of the file to be retrieved from the remote host.
Because more than one file can be copied with the MGet subcommand, the
foreign_file parameter of the MGet subcommand can be repeated many times,
with each foreign_file separated by a blank space. You can use special characters
for pattern matching when specifying the foreign_file with the MGet
subcommand. These characters are dependent on the foreign host FTP server.
REPLACE
Causes a data set on your local host to be overwritten if it already exists. If the
data set already exists, and you do not use the replace parameter, the existing
data set is not overwritten. A message informing you of this is displayed.
If the data set already exists and you specify REPLACE, the data in the file is
overwritten, but not reallocated. This means the local data set retains its
existing characteristics.
Examples
The following is a sample entry and response that is displayed as a result of the
MGet subcommand for multiple z/OS UNIX files.
cd ’/u/user121/ftp.example’
>>>CWD ’/u/user121/ftp.example’
250 HFS directory /u/user121/ftp.example is the current working directory
Command:
mget file1 file2 file3
>>>PORT 9,67,112,25,4,90
200 Port request OK.
>>>NLST file1
125 List started OK
250 List completed successfully.
>>>PORT 9,67,112,25,4,91
200 Port request OK.
>>>NLST file2
125 List started OK
250 List completed successfully.
>>>PORT 9,67,112,25,4,92
200 Port request OK.
>>>NLST file3
125 List started OK
250 List completed successfully.
>>>PORT 9,67,112,25,4,93
200 Port request OK.
>>>RETR file1
125 Sending data set /u/user121/ftp.example/file1
250 Transfer completed successfully.
3464 Bytes transferred in 1.031 seconds. Transfer rate 3.36 kbytes/sec.
>>>PORT 9,67,112,25,4,94
200 Port request OK.
>>>RETR file2
125 Sending data set /u/user121/ftp.example/file2
250 Transfer completed successfully.
3993 Bytes transferred in 0.923 seconds. Transfer rate 4.33 kbytes/sec.
>>>PORT 9,67,112,25,4,95
200 Port request OK.
>>>RETR file3
125 Sending data set /u/user121/ftp.example/file3
250 Transfer completed successfully.
3993 Bytes transferred in 0.791 seconds. Transfer rate 5.05 kbytes/sec.
Command:
The following is a sample entry and response that is displayed as a result of the
MGet subcommand using a wildcard character in the file name.
Command:
mget file*
>>>PORT 9,67,113,57,5,123
200 Port request OK.
>>>NLST file*
125 List started OK
250 List completed successfully.
Mget file1 (Yes|No|Quit|Stop prompting)? s
>>>PORT 9,67,113,57,5,124
200 Port request OK.
>>>RETR file1
125 Sending data set /u/user31/file1
250 Transfer completed successfully.
164 bytes transferred in 0.310 seconds. Transfer rate 0.53 Kbytes/sec.
>>>PORT 9,67,113,57,5,125
200 Port request OK.
>>>RETR file2
125 Sending data set /u/user31/file2
250 Transfer completed successfully.
164 bytes transferred in 0.270 seconds. Transfer rate 0.61 Kbytes/sec.
>>>PORT 9,67,113,57,5,126
200 Port request OK.
>>>RETR file3
125 Sending data set /u/user31/file3
250 Transfer completed successfully.
164 bytes transferred in 0.280 seconds. Transfer rate 0.59 Kbytes/sec.
Command:
Usage
v When you use the MGet subcommand, FTP might truncate data records and you
might lose data if:
– You are creating a new data set at the client and the value of LRecl, as shown
by the LOCSTat command, is a value less than the LRecl of a received data
set, FTP truncates the received data set.
– The data set name already exists at the client and the logical record length
(LRecl) of the data set at the client is less than the LRecl of the transmitted
data set, FTP truncates the transmitted data set.
You can encounter this situation when you use MGet with the REPLACE
option.
v If the name specified for foreign_file is not acceptable to your local host, the file is
not transferred. To a file from the remote host, you must have a defined working
directory on that host, and you must have read privileges to the files in this
working directory.
v If you specify one or more incorrect foreign files with the MGet subcommand,
an error message specifying the incorrect foreign file is displayed. All correct
foreign files are retrieved, regardless of any incorrect foreign files, and do not
need to be reissued.
v z/OS UNIX file names require special handling for certain special characters.
Except for single quote (’), double quote (”), or blank ( ), all special characters
that the operating system requires to be preceded by an escape character in
commands issued to the shell must be preceded by the backslash (\) escape
character.
v The MGet subcommand is not applicable to generation data groups (GDGs).
v The MGet subcommand can be used with the PROXy subcommand to transfer
files from a host on a primary connection to a host on a secondary connection.
See “PROXy subcommand—Execute FTP subcommand on secondary control
connections” on page 252 for more information.
v If the data set is migrated, it will be replaced regardless of the replace option.
v The MGet subcommand removes all directory information from remote file
names. This causes all the files to be saved in the same z/OS UNIX file system
directory when transferring into a z/OS UNIX file system. The directory
structure of the remote host will not be preserved.
v If the LISTSUBdir option is not specified on the SITE subcommand and the
LISTSUBDIR statement is not specified in the server FTP.DATA file, the default
is as if LISTSUBdir option was specified on the SITE subcommand.
v If the z/OS FTP server has the NOLISTSUBdir option specified on the SITE
subcommand or has LISTSUBDIR FALSE specified in the server FTP.DATA file,
an mget * command will get only the files in the current directory.
v The LISTSUBdir option applies to z/OS UNIX file operations only; MVS data set
operations are not affected.
Context
v See “CD subcommand—Change the directory on the remote host” on page 153
for more information about working directories.
v See Appendix A, “Specifying data sets and files,” on page 429 for more
information about naming conventions.
Purpose
Use the MKdir subcommand to create a directory on the remote host.
Format
MKdir directory
( like local_directory
Parameters
directory
Specifies the name of the directory to be created.
local_directory
Specifies the name of a local directory that is to be a model for the remote
directory. local_directory must be an MVS directory. If you specify this
parameter, the remote site variables will change, and local_directory will be
read.
Examples
In this example, a directory is created on the remote host (1.1.2.3 in this example).
Both EXAMPLE and FTP.EXAMPLE are created in the remote host, showing the
difference between specifying and omitting quotation marks in the directory name.
User: ftp 9.67.113.24.621
System: IBM FTP CS V1R5
FTP: using TCPCS
FTP.DATA FILE NOT FOUND. USING HARDCODED DEFAULT VALUES.
Connecting to 1.1.2.3, port 21
220-EZAFTSRV IBM FTP CS V1R2 at EMU.ABC.OZ, 15:34:32 on 2000-08-03.
220 Connection will not timeout.
NAME (<host>:tsouserid):
User: user121
System: >>>USER user121
331 Send password please.
Password:
User:
>>>PASS ********
230 USER121 is logged on. Working directory is ’/u/user121".
Command:
User: dir
System: >>>PORT 9,67,112,25,4,96
200 Port request OK.
>>>LIST
125 List started OK.
total 2768
-rwxr-xr-t 2 USER121 SYS1 389120 Feb 5 16:03 ftpdka
-rwxr-xr-t 2 USER121 SYS1 962560 Feb 5 16:04 ftpsrvka
-rw-r----- 1 USER121 SYS1 11648 Jan 20 14:30 g.s
drwxr-x--- 3 USER121 SYS1 0 Oct 21 17:50 msg
-rw-r----- 1 USER121 SYS1 1458 Jan 10 19:25 s.k
drwxr-x--- 2 USER121 SYS1 0 Feb 6 15:59 tcpip
drwxr-x--- 2 USER121 SYS1 0 Feb 6 17:29 test
250 List completed successfully.
Command:
User: dir
System: >>>PORT 9,67,112,25,4,97
200 Port request OK.
>>>LIST
125 List started OK.
total 2768
drwxr-xr-- 2 USER121 SYS1 0 Feb 7 19:57 example
-rwxr-xr-t 2 USER121 SYS1 389120 Feb 5 16:03 ftpdka
-rwxr-xr-t 2 USER121 SYS1 962560 Feb 5 16:04 ftpsrvka
-rw-r----- 1 USER121 SYS1 11648 Jan 20 14:30 g.s
drwxr-x--- 3 USER121 SYS1 0 Oct 21 17:50 msg
-rw-r----- 1 USER121 SYS1 1458 Jan 10 19:25 s.k
drwxr-x--- 2 USER121 SYS1 0 Feb 6 15:59 tcpip
drwxr-x--- 2 USER121 SYS1 0 Feb 6 17:29 test
250 List completed successfully.
Command:
User: dir
System: >>>PORT 9,67,112,25,4,98
200 Port request OK.
>>>LIST
125 List started OK.
total 2800
drwxr-x--- 2 USER121 SYS1 0 Feb 7 19:57 example
drwxr-x--- 2 USER121 SYS1 0 Feb 7 19:57 ftp.example
-rwxr-xr-t 2 USER121 SYS1 389120 Feb 5 16:03 ftpdka
-rwxr-xr-t 2 USER121 SYS1 962560 Feb 5 16:04 ftpsrvka
-rw-r----- 1 USER121 SYS1 11648 Jan 20 14:30 g.s
drwxr-x--- 3 USER121 SYS1 0 Oct 21 17:50 msg
-rw-r----- 1 USER121 SYS1 1458 Jan 10 19:25 s.k
drwxr-x--- 2 USER121 SYS1 0 Feb 6 15:59 tcpip
drwxr-x--- 2 USER121 SYS1 0 Feb 6 17:29 test
250 List completed successfully.
Command:
Usage
v The MKdir subcommand sends a request to the remote host FTP server to create
a directory with name directory in the current working directory. When the
request is sent to an MVS server, a PDS or PDSE is created if either a fully
qualified MVS data set name is entered (for example, ’USER33.TEST.PDS’), or if
the current working directory is an MVS data set name. For example, if the
current working directory is USER33.TEST, a command MKdir PDS creates a
PDS or PDSE named USER33.TEST.PDS.
v For an MVS server, the data set characteristics used to allocate the new PDS or
PDSE are determined by the settings of the SIte parameters of the server.
v You can use the (like parameter on the MKdir subcommand to specify a local
MVS directory that has characteristics you want the remote directory to have.
– The (like option is valid only if both client and server are z/OS, and the
current working directory for both client and server is an MVS high level
qualifier (HLQ).
– The client will send a SITE command to the server for you so that the new
directory is similar to the local directory. The client, however, can
approximate only certain characteristics of the directory such as space type,
primary, and secondary. For complete control over these characteristics, do
not use the (like parameter. The SITE command will change the remote site
variables to match the characteristics of the existing directory. For complete
control over the remote site variables, do not use the (like parameter.
– Only the 3390 device architecture is supported. Unpredictable results will
occur if the source or target directory reside on devices that use a different
architecture.
– FTP must read the local directory to determine its characteristics. Do not use
the (like parameter if this is not acceptable.
– The sendsite setting is ignored when the (like parameter is specified. The
client will send a SITE command to the server to change the remote site
variables.
– The (like option is recommended for interactive use only.
– If the local data set is migrated, FTP will check the local AUTORECALL
setting to determine whether to recall the data set or fail the request. If
AUTORECALL is true, FTP will try to recall the migrated data set. If
AUTORECALL is false, FTP will fail the mkdir request. You can change the
current AUTORECALL setting with the locsite subcommand. Choosing
AUTORECALL might result in a long delay as the server waits for the data
set to become available.
– If the local data set is not mounted, FTP checks the local AUTOMOUNT
setting to determine whether to mount the data set or fail the request. If
AUTOMOUNT is true, FTP tries to mount the data set. If AUTOMOUNT is
false, FTP fails the mkdir request. You can change the current AUTOMOUNT
setting with the locsite subcommand. Choosing AUTOMOUNT might result
in a long delay as the server waits for the data set to become available.
Context
v See “SIte subcommand—Send site-specific information to a host” on page 270
for information about setting the SIte parameters.
v See “STAtus subcommand—Retrieve status information from a remote host” on
page 301 for information about displaying the SIte parameters.
v See “SENDSite subcommand—Toggle the sending of site information” on page
269 for information about SENDSite subcommand.
v See “LOCSIte subcommand—Specify site information to the local host” on page
195 for information about changing the AUTORECALL and AUTOMOUNT
settings.
Purpose
Use the MOde subcommand to define how bits of data are to be transmitted.
Format
MOde B
C
S
Parameters
B Sets the block mode. In block mode, data is transmitted as a series of data
blocks, preceded by one or more header bytes. Block mode preserves the
logical record boundaries of the data set or file. When MOde is set to B, the
data transfer type must be EBCDIC.
Specifying MOde B is equivalent to specifying the BLock subcommand.
C Sets the compressed mode. In compressed mode, data is transmitted as a series
of data blocks, preceded by one or more header bytes. Compressed mode
preserves the logical record boundaries of the data set or file. In compressed
mode, data is transmitted without repetitive characters and blanks. When
MOde is set to C, the data transfer type must be EBCDIC.
Note: Because additional processing time is required for both the sender and
receiver to compress or decompress the data, evaluate the time factor
before you compress a file.
Specifying MOde C is equivalent to specifying the COMpress subcommand.
S Sets the stream mode. In stream mode, data is transmitted as a stream of bytes.
Any data transfer type can be used with stream mode. Stream mode is efficient
because data block information is not transferred.
Specifying MOde S is equivalent to specifying the STREam subcommand.
Usage
v To use MOde C, the receiving host must support the compressed data mode.
v Data compression increases CPU processing costs even if the amount of data
transferred is not large.
Context
v For the syntax of the BLock, COMpress, and STREam subcommands, see “BLock
subcommand—Set the block data transfer mode” on page 151, “COMpress
subcommand—Set the compressed data transfer mode” on page 160, or
“STREam subcommand—Set the stream data transfer mode” on page 308.
v For more information about transfer methods, see Table 13 on page 55.
Purpose
Use the MPut subcommand to copy multiple data sets from your local host to the
remote host.
Format
MPut local_data_set
Parameters
local_data_set
Specifies the name of the file on your local host being sent to the remote host.
Because more than one data set can be copied with the MPut subcommand,
the local_data_set parameter of this subcommand can be repeated many times,
with each local_data_set separated by a blank space. You can use the asterisk (*)
character for pattern matching when specifying the local_data_set with the
MPut subcommand.
When the wildcard symbol (*) is used in the filename parameter, and the
GLOB subcommand is set to expand metacharacters in file names, the
LISTSUBdir option affects the result of MPut. For more information about the
LISTSUBdir option, see “LOCSIte subcommand—Specify site information to
the local host” on page 195, or the LISTSUBDIR statement (FTP client and
server) in z/OS Communications Server: IP Configuration Reference.
Examples
The following is a sample entry and response that is displayed as a result of the
MPut subcommand to send selected files.
Command:
mput file*
Mput FILE1 (Yes|No|Quit|Stop prompting)? yes
>>>PORT 9,67,113,57,5,128
200 Port request OK.
>>>STOR FILE1
125 Storing data set /u/user31/temp/FILE1
250 Transfer completed successfully.
164 bytes transferred in 0.010 seconds. Transfer rate 16.40 Kbytes/sec.
Mput FILE2 (Yes|No|Quit|Stop prompting)? no
Mput FILE3 (Yes|No|Quit|Stop prompting)? yes
>>>PORT 9,67,113,57,5,129
200 Port request OK.
>>>STOR FILE3
125 Storing data set /u/user31/temp/FILE3
250 Transfer completed successfully.
164 bytes transferred in 0.010 seconds. Transfer rate 16.40 Kbytes/sec.
Command:
dir
>>>PORT 9,67,113,57,5,130
200 Port request OK.
>>>LIST
125 List started OK
total 16
-rw-r----- 1 USER31 SYS1 162 Aug 14 13:20 FILE1
-rw-r----- 1 USER31 SYS1 162 Aug 14 13:21 FILE3
250 List completed successfully.
Command:
Usage
v FTP maintains the attributes of a data set that is transmitted between a client
and a server. However, when you use the MPut subcommand, FTP might
truncate data records and you might lose data, if:
– You are creating a new file at the server and the value of LRecl, as shown by
the STAtus subcommand, is a value less than the LRecl of the transmitted
data set and SENDSite has been set to OFF, FTP truncates the transmitted
data set.
– The data set name already exists at the receiving site and the logical record
length (LRecl) of the data set at the receiving site is less than the LRecl of the
transmitted data set, FTP truncates the transmitted data set.
v By default, if you use the MPut subcommand, the remote host creates files with
the same names as those specified in local_data_set and overwrites any existing
files with those names.
To put files on the remote host with unique file names, you must have set
unique storage on before issuing the MPut command. Use the SUnique
subcommand to change the storage method.
v To send a data set to the remote host, you must have a defined working
directory on the remote host and write privileges to the files in this working
directory.
v If you specify one or more incorrect parameters with the MPut subcommand, an
error message specifying the incorrect parameter is displayed. All correct files
are transferred, regardless of any incorrect parameters, and do not need to be
reissued.
v The MPut command is not applicable to GDGs.
Context
v See “SUnique subcommand—Changes the storage method” on page 310 for
information about changing the storage method on the remote host.
v See Appendix A, “Specifying data sets and files,” on page 429 for more
information about naming conventions.
v MPut can be used with the PROXy subcommand to transfer files from a host on
a secondary connection to a host on a primary connection. See “PROXy
subcommand—Execute FTP subcommand on secondary control connections” on
page 252 for more information.
Purpose
Use the NOop subcommand to determine whether the foreign host is still
responding.
Format
NOop
Parameters
There are no parameters for this subcommand.
Examples
v If the foreign host is responding, you receive one of the following responses:
Usage
You can use the NOop command to keep a connection alive that would otherwise
be disconnected if it were idle for longer than the system timeout period.
Purpose
Use the Open subcommand to open a connection to the remote host FTP server in
the following situations:
v If, after closing a connection, you want to open another connection without
leaving the FTP environment.
v If you were unable to open a connection when you specified a foreign_host value
with the FTP command.
Format
21
Open host_name
port_number
Parameters
host_name
| Specifies the host name or IP address of the foreign host. When using IPv6
| link-local addresses, you can provide scope information along with the host
| name or IP address, as described in the support for scope information in the
| z/OS Communications Server: IPv6 Network and Application Design Guide.
port_number
Identifies a port on the foreign host. The default is well-known port 21.
Usage
If you are already connected to a host, you must disconnect from the host before
you can connect to a different host with the Open subcommand. The only
exception to this is if you are using the PROXy Open command. See “PROXy
subcommand—Execute FTP subcommand on secondary control connections” on
page 252 for more information.
Context
See “CLose subcommand—Disconnect from a remote host” on page 159 for more
information about closing a connection.
Purpose
Use the PAss subcommand to supply a password to a host.
Format
PAss password
/newpass/newpass :userdata
account_information
Parameters
password
Specifies your password on the remote host.
/newpass/newpass
Resets a password.
:userdata
The optional user data must be separated from the password information by a
colon (:) and can be any combination of up to 200 nonblank characters and
numbers except the colon. Care should be taken when using the backslash
character (\) in combination with other characters which might be interpreted
as an escape sequence by the C compiler.
account_information
An optional parameter that will be supplied to the remote FTP server if the
server requests account information after receiving the password.
Usage
v The PAss subcommand must be preceded by the User subcommand. For some
sites, the password completes your identification for access control on the
remote host.
v On z/OS hosts, a PAss command is automatically generated by the user
command. If you do not enter the password as part of the user command, you
| are prompted for the password if the host requires it.
v The optional user data is used by the z/OS FTP server as a character string that
is passed to the server’s FTCHKPWD user exit routine.
Context
See “User subcommand—Identify yourself to a host or change your TSO user ID
password” on page 320 for more information.
Purpose
Use the PRIvate subcommand to set the protection level for data transfers on the
data connections to private. This subcommand is equivalent to specifying the
PROTect PRIvate subcommand.
Format
PRIvate
Parameters
There are no parameters for this subcommand.
Examples
To set the protection level to private, enter:
private
Usage
v This subcommand is not valid when there is no active security mechanism.
v Data transmissions are confidentiality and integrity protected by encryption.
Purpose
Use the PROMpt subcommand to toggle interactive prompting for MDelete, MGet,
and MPut commands. Prompting is the default action unless the FTP session was
started with the -i option, which turns off interactive prompting.
Format
PROMpt
Parameters
There are no parameters for this subcommand.
Examples
The following example shows using the MPut command with interactive
prompting on.
Command:
mput file*
Mput FILE1 (Yes|No|Quit|Stop prompting)? yes
>>>PORT 9,67,113,57,5,128
200 Port request OK.
>>>STOR FILE1
125 Storing data set /u/user31/temp/FILE1
250 Transfer completed successfully.
164 bytes transferred in 0.010 seconds. Transfer rate 16.40 Kbytes/sec.
Mput FILE2 (Yes|No|Quit|Stop prompting)? no
Mput FILE3 (Yes|No|Quit|Stop prompting)? yes
>>>PORT 9,67,113,57,5,129
200 Port request OK.
>>>STOR FILE3
125 Storing data set /u/user31/temp/FILE3
250 Transfer completed successfully.
164 bytes transferred in 0.010 seconds. Transfer rate 16.40 Kbytes/sec.
Command:
Context
See “Using FTP” on page 29 for more information about the -i option.
Purpose
Use the PROTect subcommand to set the protection level for data transfers on the
data connections.
Format
PROTect CLEAR
PRIVATE
SAFE
Parameters
CLEAR
Data transmissions are not protected. Specifying PROTect CLEAR is equivalent
to specifying the CLEar subcommand.
PRIVATE
Data transmissions are confidentially and integrity protected. Specifying
PROTect PRIVATE is equivalent to specifying the PRIvate subcommand.
SAFE
Data transmissions integrity are protected by cryptographic checksum.
Examples
To set the protection level to private, enter:
prot private
Usage
This subcommand is not valid when there is no active security mechanism.
Purpose
Use the PROXy subcommand to execute an FTP subcommand on secondary
control connections. PROXy enables the FTP client to connect simultaneously to
two remote FTP servers and then to establish a data connection between the two
servers for the purpose of transferring files between those servers.
Format
PROXy subcommand
Parameters
subcommand
The name of any FTP subcommand except those listed in the first note in
“Usage” on page 253. The first PROXy subcommand should be Open, which
establishes the secondary server connection.
The following subcommands behave differently when prefaced by the PROXy
subcommand:
v Open establishes the secondary server connection.
v CLose closes the secondary server connection.
v Get and MGet transfer files from the host on the primary connection to the
host on the secondary connection.
v PUt, MPut, and APpend transfer files from the host on the secondary
connection to the host on the primary connection.
Examples
The following example shows a proxy open to establish connection to a secondary
server.
Command:
proxy open 9.67.113.57 6321
Connecting to: 9.67.113.57 port: 6321.
220-FTPDJG1 IBM FTP CS V1R4 at MVS164, 13:06:23 on 2003-01-14.
220 Connection will not timeout.
NAME (9.67.113.57:USER33): user34
>>>USER user34
331 Send password please.
PASSWORD:
>>>PASS
230 USER34 is logged on. Working directory is "USER34.".
The following example shows the commands for a proxy between IPv4 nodes:
v PASV to the secondary server
v PORT to the primary server
v RETR to the primary server
v STOR to the secondary server
Two 250 replies are received by the client, one from each server.
Command:
proxy m1 mx
>>>PASV
227 Entering Passive Mode (9,67,113,57,5,121)
>>>PORT 9,67,113,57,5,121
200 Port request OK.
>>>RETR m1
125 Sending data set /u/user33/mpp1/m1
>>>STOR mx
125 Storing data set USER34.MX
250 Transfer completed successfully.
250 Transfer completed successfully.
Command:
>>> PASS
230 USER2 is logged on. Working directory is "/".
This example shows the commands for a proxy PUt between IPv6 nodes:
v EPSV to the secondary server
v EPRT to the primary server
v STOR to the primary server
v RETR to the secondary server
As in the first example, two 250 replies are received by the client.
Command:
proxy put bob testfile
Load module transfer does not support load module rename
>>> EPSV
229 Entering Extended Passive Mode (|||1027|)
>>> EPRT |2|2001:0DB8:c2d4::9:67:115:12|1027|
200 EPRT request OK
>>> STOR testfile
125 Storing data set /tmp/myTest/testfile
>>> RETR bob
125 Sending data set /tmp/myTest/bob
250 Transfer completed successfully.
250 Transfer completed successfully.
Command:
Usage
v The following subcommands are not valid proxy subcommands:
– DEBug
– DUMP
– DELImit
– GLob
– LANGuage
– LCd
– LMkdir
– LOCSIte
– LOCSTat
– LPwd
– PROMpt
– QUIt
– REStart
– SENDPort
– SENDSite
– SRestart
– SUnique
– TSO
– Verbose
v To receive help from a server on a secondary control connection, enter PROXy
HElp SERVER.
v Data transfer in PROXy mode can be restricted if the server is set up to reject
PORT and EPRT commands with certain parameters. See the z/OS
Communications Server: IP Configuration Guide for more details.
v If an open subcommand is entered as a proxy subcommand by the client and
the session is currently protected by a security mechanism (for example, TLS),
then the subcommand is rejected with the following message:
Proxy open is not supported with security mechanisms
v If the connection to one server is IPv4 and the connection to the other is IPv6,
proxy transfers might not be possible. The two servers must have the ability to
connect to each other as well as to the client. A z/OS FTP server cannot be the
primary server in a proxy transfer unless the connection from the client to each
of the servers is of the same protocol.
v Data transfer in PROXy mode can be restricted if the server is set up to reject
the redirection of the passive (PASV) data connection using
PASSIVEDATACONN NOREDIRECT. See the z/OS Communications Server: IP
Configuration Reference for more details.
Purpose
Use the PUt subcommand to copy data sets from your local host to the remote
host.
Format
PUt local_file
foreign_file
Parameters
local_file
Specifies the name of the file on your local host being sent to the remote host.
foreign_file
Specifies the name that the delivered data set is given on the remote host. If
the foreign_file name is not specified, the foreign_file name is the same as the
local_file name.
Usage
v FTP maintains the attributes of a data set that is transmitted between a client
and a server. However, when you use the PUt subcommand, FTP might truncate
data records and you might lose data, if one of the following occurs:
– If you are creating a new file at the server and the value of LRecl, as shown
by the STAtus subcommand, is a value less than the LRecl of the transmitted
data set and SENDSite subcommand has been set to OFF, then FTP truncates
the transmitted data set.
– If the data set name already exists at the receiving site and the logical record
length (LRecl) of the data set at the receiving site is less than the LRecl of the
transmitted data set, then FTP truncates the transmitted data set.
v If FTP does not support directory content transfers in partitioned data sets, it is
not possible to FTP load modules.
v When a PUt is issued, FTP automatically sends a SIte subcommand containing
record format information for the file or data set. To toggle this off, you must
first issue a SENDSite subcommand. See “SENDSite subcommand—Toggle the
sending of site information” on page 269 for more detailed information.
v If the remote host already has a file with the name specified by foreign_file, the
remote host overwrites the existing file. If the remote host does not have a file
with the same name specified by foreign_file, the remote host creates a new file.
v To put files on the remote host with unique file names, you must have set
unique storage on before issuing the PUt command. Use the SUnique
subcommand to change the storage method.
v To send a data set to the remote host, you must have a defined working
directory on the remote host and write privileges to the files in this working
directory.
UPDATE authority is the minimum required for write access. To ensure that the
newly created data set can be written to before the data set has been allocated
and opened, FTP validates that the user ID has at least UPDATE authority. If
this fails, then FTP will be able to issue a reply to the client which is indicative
of the failure. If open is allowed to continue and it fails due to lack of authority,
then the reply will not be as definitive.
v When a PDS or PDSE member is transmitted, the user data associated with the
PDS member is also transferred to the directory on the target host if the
following are true:
– Data is in block or compressed data transfer mode
– Data has a representation type of EBCDIC
– Transfer is from one MVS directory to another
No PDS directory information is transferred if the member is null (empty).
Context
v See “SUnique subcommand—Changes the storage method” on page 310 for
information about changing the storage method on the remote host.
v See Appendix A, “Specifying data sets and files,” on page 429 for more
information about naming conventions.
v PUt can be used with the PROXy subcommand to transfer files from a host on a
secondary connection to a host on a primary connection. See “PROXy
subcommand—Execute FTP subcommand on secondary control connections” on
page 252 for more information.
Purpose
Use the PWd subcommand to display the name of the current working directory
on the remote host.
Format
PWd
Parameters
There are no parameters for this subcommand.
Examples
Display the name of the current working directory:
pwd
>>>PWD
257 "’USER17.HSMTEST.’" is working directory
Command:
Display the name of the current z/OS UNIX file system working directory:
pwd
>>>PWD
257 "/u/user121/example" is the HFS working directory.
Command:
Purpose
Use the QUIt subcommand to disconnect from the foreign host and end the FTP
session.
Format
QUIt
Parameters
There are no parameters for this subcommand.
Usage
v The QUIt subcommand ends the FTP session with the remote host and exits FTP
on the local host. To establish a new session, use the FTP command.
v In a z/OS UNIX environment, you can also press Ctrl-C to end an FTP session.
v When running with both a primary and a secondary server (by using the
PROXy subcommand), the QUIt subcommand disconnects both sessions.
Context
See “Using FTP” on page 29 for information about the FTP command.
Purpose
Use the QUOte subcommand to send an uninterpreted string of data to the server
port on the foreign host.
The QUOte subcommand bypasses the FTP interface of your local host. You can
use the QUOte subcommand to send commands that the remote server
understands, but that the local host does not understand.
Format
QUOte string
Parameters
string
Specifies the data to be sent verbatim to the remote host FTP server.
Examples
v For example, QUOTE TYPE B 1 causes the FTP server to change its transfer type to
Shift JIS kanji, without changing the transfer type in the FTP client. The client in
this example should be set to the ASCII transfer type before the QUOte
subcommand is issued.
v The following example shows the screen display when setting the DBCS transfer
type to JIS78KJ, shift-in JISROMAN, and then setting it to HANGEUL using
EBCDIC SO/SI characters. The example shows an MVS TCP/IP FTP client
connected to an MVS TCP/IP FTP server. All three methods of setting the DBCS
transfer type are shown.
Usage
v No parsing or validity checking is performed on the character string you enter
by FTP on your local host. If the character string you send to the FTP server is
part of a required sequence of commands, you are required to provide this
sequence correctly, or the results are unpredictable.
v The QUOte subcommand can be used to generate any of the DBCS TYpe
commands supported by the server. This subcommand is used when the FTP
server supports the DBCS TYpe command, but the FTP client does not.
Purpose
Use the RECord subcommand to set the file structure to record. This is equivalent
to specifying the STRucture R subcommand. See “STRucture subcommand—Set the
file structure” on page 309 for more information.
Format
RECord
Parameters
There are no parameters for this subcommand.
Purpose
Use the REName subcommand to rename a file on the remote host.
Format
REName original_name new_name
Parameters
original_name
Specifies the current name of the file.
new_name
Specifies the new name of the file.
Usage
v For MVS data sets, if the file specified by the new_name value already exists, the
existing file is not replaced by the new file.
v For z/OS UNIX files, if the file specified by the new_name value already exists,
the existing file is replaced.
| Restriction: When you use the FTP RENAME subcommand with a generation data
| group (GDG), for example, RENAME SOURCE.FILE MY.GDG(+1), serialization of the
| GDG data set is not assured. To avoid this, instead use the FTP PUT subcommand.
| For more information about GDG processing, see Information APAR II08285.
Purpose
Use the REStart subcommand to restart a checkpointed data transfer.
Format
REStart
Parameters
There are no parameters for this subcommand.
Usage
v The REStart subcommand restarts the last checkpoint file transfer request at the
point of the last valid checkpoint stored in the checkpoint data set. See
FTP.DATA CHKPTPREFIX statement to determine the check point data set name.
The file transfer environment (such as file transfer mode, type, and the hlq of the
checkpoint data set name) which was in effect at the time of the last checkpoint
file transfer request must be reestablished before issuing the REStart
subcommand.
v The LOCSIte NORESTGet subcommand and parameter prevent opening the
checkpoint data set for a Get request.
v The REStart subcommand can be used when a checkpointed file transfer request
fails because of some temporary condition such as the loss of the connection
between the client and the server.
v The checkpoint file name is formed using the CHKPTPrefix value and the
current working directory. See the description of CHKPTPrefix under the
“LOCSIte subcommand—Specify site information to the local host” on page 195
or “Changing local site defaults using FTP.DATA” on page 70.
Context
For more information about checkpointing a file transfer request, see “CHKptint”
on page 275 (SIte subcommand) or “CHKptint” on page 198 (LOCSIte
subcommand).
Purpose
Use the RMdir subcommand to remove a directory on the remote host.
Format
RMdir directory
Parameters
directory
Specifies the name of the directory to be removed.
Usage
v The RMdir subcommand sends a request to the remote host FTP server to
remove a directory with name directory from the current remote directory.
v The RMdir subcommand can be used to delete a PDS.
Purpose
Set the protection level on data transfers to ″safe″. Data transmissions are
integrity-protected by cryptographic checksum.
Format
SAfe
Parameters
There are no parameters for this subcommand.
Purpose
Use the SChinese subcommand to change the data transfer type to Simplified
Chinese.
MVS FTP uses the same SBCS translate table for single-byte or double-byte data
transfers. If you require an alternate SBCS table for a double-byte transfer, use the
SIte/LOCSIte SBDataconn or SIte XLate subcommand to have the server (or client)
change the SBCS translation for the data connection.
Format
SChinese
(
Ascii NOSo NOType
Sosi
Ebcdic
Space
Parameters
Sosi
Transferred data contains the shift-out and shift-in characters specified by the
one of the following parameters — Ascii, Ebcdic, or Space. If no parameter is
specified, ASCII is used as the default.
If Sosi is not specified at all, shift-out or shift-in characters are not used in the
transferred data.
Ascii
When combined with the Sosi parameter, causes shift-out and shift-in
characters X'1E' and X'1F' to be used to delimit DBCS strings in ASCII
data.
Ebcdic
When combined with the Sosi parameter, causes shift-out and shift-in
characters X'0E' and X'0F' to be used to delimit DBCS strings in ASCII
data.
Space
When combined with the Sosi parameter, causes shift-out and shift-in
characters X'20' and X'20' (ASCII spaces) to be used to delimit DBCS
strings in ASCII data.
NOSo
Specifies that the data transferred is pure DBCS (data with no SBCS characters)
and is to be transferred to or from EBCDIC DBCS data that contains no
shift-out or shift-in delimiters.
NOType
Suppresses the sending of the corresponding TYpe command to the server. Use
this parameter when translation is to be done by the FTP client only.
Usage
The SChinese client subcommand is equivalent to the TYPE B 9 server command.
Context
See “FTP with traditional DBCS support” on page 87 and “Support for MBCS
languages” on page 90 for more information.
Purpose
Use the SENDPort subcommand to toggle the automatic sending of the PORT
command.
Format
SENDPort
Parameters
There are no parameters for this subcommand.
Usage
v By default, the SENDPort subcommand is turned on when you start an FTP
session. Each time you use the SENDPort subcommand, it is turned alternately
on and off.
v FTP does not send PORT commands for data transfer when you disable PORT
commands by toggling the function off.
v SENDPort is useful for communication with those FTP implementations that
ignore PORT commands, but show (incorrectly) that the PORT command has
been accepted.
v To determine if the sending of port information is enabled or disabled on your
local host, use the LOCSTat subcommand.
v The sendport setting is ignored during proxy transfer.
Context
See “LOCSTat subcommand—Display local status information” on page 218 for
more information about LOCSTat subcommand.
Purpose
Use the SENDSite subcommand to toggle the automatic sending of the SIte
subcommands when sending a data set to a foreign host.
Format
SENDSite
Parameters
There are no parameters for this subcommand.
Usage
v By default, the SENDSite subcommand is turned on when you start an FTP
session. Each time you use the SENDSite subcommand, it is turned alternately
on and off.
When turned on, FTP sends a SIte subcommand containing record format
information for the file or data set when you issue the PUt or MPut
subcommand.
v SENDSite is useful when you want to PUt a file to the remote host and have the
file created with the same characteristics as defined at the local host.
v If you are using either an SMS data class or a model DCB at your MVS server to
provide the logical record length or record format, you must toggle the
SENDSite setting off at the client. Otherwise, the SIte information that is sent
automatically by the client overrides the values provided by the SMS dataclass
or model DCB.
v To determine if the sending of site information is enabled or disabled on your
local host, use the LOCSTat subcommand.
v The sendsite setting is always ignored if you issue a mkdir subcommand with
the (like parameter. The client must send a SITE command to the server to set
the server’s site variables before allocating the directory.
Context
v See “LOCSTat subcommand—Display local status information” on page 218 for
information about the LOCSTat subcommand.
v See “MKdir subcommand—Create a directory on the remote host” on page 239
for information about the MKdir subcommand.
Purpose
Use the SIte subcommand to send information that is used by the remote host to
provide services specific to that host system.
Format
SIte options
options:
ASAtrans
AUTOMount
AUTORecall
BLKsize
= size
BLocks
BLOCKSIze
= size
5
BUfno =
number
0
CHKptint =
number
CHMod ooo filename
symbolic filename
CONDdisp = Catlg
Delete
CTRLConn 7BIT
iconv_ascii
FTP_STANDARD_TABLE
*
CYlinders
DATAClass
= data_class
DATASetmode
DB2 = db2_name
DBSUB
DCbdsn
= data_set_name
DEBug =
?
ACC
ALL
BAS
CMD
FLO
FSC(n)
INT
JES
NONE
PAR
SEC
SOC(n)
SQL
UTL
Xyyy
DESt
= destination
Directory
= size
DIRECTORYMode
DUmp =
?
n
ALL
FSC
JES
NONE
SOC
SQL
Xyyy
ENCODING = SBCS
MBCS
FILEtype = type
ISPFSTATS
200
JESENTRYLimit =
number
loginuserid*
JESJOBName =
jobname
JESLrecl = length
*
loginuserid
JESOwner =
userid
JESRecfm = F
V
*
ALL
JESSTatus =
INPUT
ACTIVE
OUTPUT
LISTSUBdir
LRecl
= length
MBDATACONN = (file_system_codepage,network_transfer_codepage)
MBREQUIRELASTEOL
MBSENDEOL = CRLF
CR
LF
NONE
MGmtclass
= mgmtclass
MIGratevol
= volume_ID
NOASAtrans
NOAUTOMount
NOAUTORecall
NODBSUB
NOISPFSTATS
NOLISTSUBdir
NOMBREQUIRELASTEOL
NOQUOtesoverride
NORDW
NOSBSUB
NOSPRead
NOTRAILingblanks
NOTRUNcate
NOUCSSUB
NOUCSTRUNC
NOWRAPrecord
NOWRTAPEFastio
PDSTYPE =
PDS
PDSE
PRImary
= amount
Qdisk
= volume_serial
QUOtesoverride
RDW
READTAPEFormat
= tape_format
RECfm
= format
RETpd
= days
SBDataconn dsname
(file_system_cp,network_transfer_cp)
FTP_STANDARD_TABLE
*
SBSENDEOL = CRLF
CR
LF
NONE
SBSUB
SBSUBCHAR = nn
Space
SECondary
= amount
SPRead
SQLCol = any
labels
names
STOrclass
= storage_class
TRacks
TRAILingblanks
TRUNcate
UCOUNT
= unit_count | P
UCSHOSTCS
= code_set
UCSSUB
UCSTRUNC
UMask ooo
UNICODEFILESYSTEMBOM = ASIS
ALWAYS
NEVER
Unit
= unit_type
VCOUNT
= volume_count
VOLume =
volume_serial
(volume_serial_list)
WRAPrecord
WRTAPEFastio
XLate = name
Parameters
ASAtrans
Permits the FTP server to interpret the characters in the first column of ASA
files being transferred as print control characters.
AUTOMount
Permits automatic mounting of volumes for data sets on volumes that are not
mounted. If AUTOMount is specified and an unmounted volume is needed, a
message is automatically issued to the MVS operator console requesting that
the volume be mounted. The MVS operator must then mount the volume and
reply to the message before FTP can proceed.
AUTORecall
Permits automatic recall of migrated data sets.
BLKsize
Specifies the block size of a newly allocated data set. BLKsize is functionally
equivalent to BLOCKSIze. The BLOCKSIze parameter is obsolete, but it is
accepted to provide compatibility with previous releases of z/OS TCP/IP.
When specified without a size, no block size is used when allocating the new
data set. When specified without a size, the equal sign (=) is optional.
Specify BLKsize with no value if you are also specifying DATAClass=data_class
and you want the SMS data class to provide the BLKsize value, or if you are
specifying DCbdsn=data_set_name and you want to use the block size from the
DCBDSN data set. If BLKsize=size is specified with either the DATAClass or
DCbdsn parameters, the value specified by the SIte BLKsize parameter
overrides the DATAClass or DCbdsn block size.
Notes:
1. If you specify BLKsize without a size or with a size of 0, FTP does not
specify the block size when allocating new data sets.
2. Be especially careful specifying both BLKsize= and BLocks. While there are
conditions where this is tolerated, if a valid BLKsize cannot be determined,
the data set will not be created when the allocation is attempted.
size
Specifies the block size of a newly allocated data set. The valid range is
0–32 760.
BLKsize=0 is a special case. When BLKsize=0 is specified, the operating
system attempts to determine a block size for the new data set. FTP does
not create the new data set unless the system is able to establish a nonzero
block size.
BLocks
Specifies that primary and secondary space allocations are in blocks.
If both PRImary and SECondary are unspecified, and an SMS data class has
been specified, the space allocation is determined by the SMS data class and
the BLocks parameter is ignored.
BLOCKSIze
Specifies the block size of a newly allocated data set. BLOCKSIze is
functionally equivalent to BLKsize. BLOCKSIze is obsolete but it is accepted to
provide compatibility with previous releases of z/OS TCP/IP. See the BLKsize
parameter for more information.
BUfno
Specifies the number of access method buffers that is used when data is read
from or written to a data set. The default value is 5.
number
The number of buffers used. The valid range is 1–35.
CHKptint
Specifies the checkpoint interval for the sending site in a file transfer request. If
the checkpoint interval is 0, no checkpointing occurs and no marker blocks are
transmitted. The default value is 0.
Use SIte to set CHKptint when the FTP server is the sending site (Get
command). It will not be useful to change the checkpoint interval to more than
0 in a Get unless the receiving site is able to process checkpoint markers in the
file transfer data stream.
CHKptint is valid only for block and compressed modes of data transfer.
number
The checkpoint interval for the sending site in a file transfer request. This
value is used to determine when checkpoint marker blocks are to be
transmitted so that transmission can be restarted based on the information
in the last marker.
A large checkpoint interval means that a large amount of data is sent in
between markers and therefore few markers are sent. A smaller checkpoint
interval means that less data is sent between markers and therefore more
markers are sent.
The cost involved with using a nonzero checkpoint interval is the markers
themselves are transmitted, which means more bytes are being sent across
the network (approximately 44 bytes per marker).
To estimate the appropriate checkpoint interval, use the following formula.
You need to know the record length of the file you are transferring and
how much data you think can be transmitted reliably.
amount of data in interval
CHKPTINT = --------------------------
record length of the file
Do not execute a CHKptint more often than once every 200KB. The
following are examples of a file you are transferring with 80-byte records.
CHKPTINT = 200KB / 80 bytes
= 200 * 1024 bytes / 80 bytes
= 2560
CHMod
Changes the permission bits for a file.
ooo filename
ooo is an octal mask representing the permissions you want to assign to
filename. Form the octal mask by OR’ing the constants corresponding to
the permission bits you want set:
400
User read
200
User write
100
User execute (or list directory)
040
Group read
020
Group write
010
Group execute
004
Other read
002
Other write
001
Other execute
You cannot use the SITE subcommand CHMod parameter to set the
following permission bits:
v Set-user-ID bit
v Set-group-ID bit
v Sticky bit
See the z/OS UNIX System Services User’s Guide and the z/OS UNIX System
Services Command Reference for more information about file permissions.
symbolic filename
symbolic represents the permissions you want to apply to filename.
If filename does not begin with a slash character (/), it is appended to the
current working directory. If filename does begin with a slash character (/), it is
interpreted as a complete directory name.
The file name specified must be a z/OS UNIX file name for a single file and
cannot contain a wildcard (*) for multiple files. The setting of QUOtesoverride
is ignored and all quotation marks are treated as part of the file name.
The CHMOD keyword must be the only keyword or last keyword on a SITE
subcommand.
CONDdisp
Specifies the disposition of the data set if a store operation for a new data set
ends before all of the data is written.
Catlg
Specifies that a data set is kept and cataloged when an FTP file transfer
ends prematurely.
Delete
Specifies that a data set is deleted when an FTP file transfer ends
prematurely.
Delete is ignored if the file transfer failed as a result of the FTP server
being terminated or if the server has received checkpoint information
during data transfer.
CTRLConn
Specifies the ASCII code page to be used for control connections. The valid
subcommands are:
SITE CTRLConn=7BIT
SITE CTRLConn=iconv_ascii
SITE CTRLConn=FTP_STANDARD_TABLE
SITE CTRLConn=*
Note: Setting the control connection code page with SIte CTRLCONN disables
UTF-8 encoding. You must start a new session to restore UTF-8
encoding.
CYlinders
Specifies that primary and secondary space allocations are in cylinders.
If both PRImary and SECondary are unspecified, and an SMS data class has
been specified, the space allocation is determined by the SMS data class and
the CYlinders parameter is ignored.
DATAClass
Used to specify the SMS data class, as defined by your organization, for the
target host. Specifying DATAClass with no parameter value cancels the data
class specification. The equal sign (=) is optional in this case.
See “Specifying values for new data sets” on page 91 for more information
about specifying attributes when allocating new data sets.
data_class
Specifies the SMS data class, as defined by your organization, for the target
host. If values are specified for any of the following SIte parameters, the
values specified by the SIte parameter overrides the value specified in the
SMS data class:
v BLKsize
v Directory
v LRecl
v PRImary
v RECfm
v RETpd
v SECondary
Chapter 5. FTP subcommands 277
SIte subcommand
See “Steps for using a DCBDSN model to create a new data set” on page
93 for more information about DCbdsn.
DEBug
Activates or disables general tracing at the FTP server. One or more traces can
be activated with a single debug parameter with the following options:
? Displays the status of the traces.
ACC
The ACC trace shows the details of the login process.
ALL
This parameter is used to set all of the trace points.
Note: Both the FSC and the SOC traces will be set to level 1 when the ALL
parameter is processed.
BAS
This parameter is used to set a select group of traces that offer the best
overall details without the intense tracing of some of the traces. Specifying
this parameter is the same as SITE DEBUG=(CMD,INT,FSC, SOC).
CMD
The CMD trace shows each command and the parsing of the parameters
for the command.
FLO
The FLO trace shows the flow of control within FTP. It is useful to show
which services of FTP are used for an FTP request.
FSC(n)
The FSC trace shows details of the processing of the file services
subcommands APPE, STOR, STOU, RETR, DELE, RNFR, and RNTO.
This trace can generate very detailed information and therefore allows you
to specify levels of detail for the trace points. The level (n) can be a
number from 1 to 5.
INT
The INT trace shows the details of the initialization and termination of the
FTP session with the server.
JES
The JES trace shows details of the processing for JES requests (that is,
requests when SIte FILETYPE=JES is in effect).
NONE
This parameter is used to turn off all of the traces.
PAR
The PAR trace shows details of the FTP command parser. It is useful in
debugging problems in the handling of the command parameters.
SEC
The SEC trace shows the processing of security functions such as TLS and
GSSAPI negotiations.
SOC(n)
The SOC trace shows details of the processing during the setup of the
interface between the FTP application and the network as well as details of
the actual amounts of data that is processed. This trace can generate very
detailed information and therefore allows you to specify levels of detail for
the trace points.
The level 1 tracing that is specified by entering SOC or SOC(1) is the level
normally used unless more data is requested by the TCP/IP service group.
The level (n) can be a number from 1 to 8.
SQL
The SQL trace shows details of the processing for SQL requests, such as
requests when SITE FILETYPE=SQL is in effect.
UTL
The UTL trace shows the processing of utility functions such as CD and
SIte.
Xyyy
This syntax is used to turn off (reset) a trace that is named by yyy. For
example, SITE DEBUG=(XPAR, XACC) will turn off the PAR and the ACC
traces.
Note: The FSC command accepts level values 6–8, but provides only level 5
trace data. Likewise, the SOC trace option accepts level values 4–8,
but provides only level 3 trace data.
v See the Diagnosing FTP server problems with traces section in z/OS
Communications Server: IP Diagnosis Guide for more information about FTP
server tracing.
DESt
Indicates the Network Job Entry (NJE) destination to which the files are routed
when you enter a PUt command. If specified without a destination parameter,
the destination resets and files are stored at the host system rather than sent to
a remote network.
The SIte DESt subcommand enables you to send data sets (rather than storing
them at the server) to other users on machines that are connected on an NJE
network.
destination
Indicates the NJE destination to which the files are routed when you enter
a PUt command. The value specified for destination can be:
v userID@nodeID
v nodeID.userID
v nodeID
v DestID
The file is sent over the NJE network to the specified destination.
This parameter is ignored if FILEtype=JES is set.
Directory
Specifies the number of directory blocks to be allocated for the directory of a
PDS. When specified without the size, no directory value is used when
allocating the data set. The equal sign (=) is optional in this case.
Specify Directory without a size when you are also specifying
DATAClass=dataclass and you want the SMS data class to provide the
Directory size. If Directory=size is specified with DATAClass, the value
specified by the SIte Directory parameter overrides the DATAClass directory
specification.
size
Specifies the number of directory blocks to be allocated for the directory of
a PDS. The valid range is 1—16 777 215.
DIRECTORYMode
Specifies that only the data set qualifier immediately below the current
directory is treated as an entry in the directory. In directory mode, this data set
qualifier is the only one used by the MGet, LS, and DIr subcommands.
DIRECTORYMode has no effect on files residing in a z/OS UNIX file system.
DUMP
Activates or disables extended tracing at the FTP server.
Note: Extended tracing has the potential to generate a large amount of trace
data and should not be set unless requested to debug a specific problem
in the code.
One or more traces can be activated with a single dump parameter with the
following options:
? Displays the status of the traces.
MBCS
Multibyte encoding. Code pages are specified using the MBDATACONN
statement.
FILEtype
Specifies the file type of the data set.
type
The file type of the data set can be:
Type Description
SEQ Sequential or partitioned data sets
SQL SQL query function
JES Remote job submission
ISPFSTATS
Allows FTP to create or update ISPF Member statistics when PUt, MPut or
APpend subcommands are issued.
JESENTRYLimit
JESENTRYLimit specifies how many entries can be displayed at once using a
LIST or NLSTcommand. JESENTRYLIMIT is only valid if
JESINTERFACELVEL=2.
number
Fixed number of entries to display. The default for JESENTRYLimit is 200,
if not specified in the server FTP.DATA file.
JESJOBName
Specifies that any command (Get, LIST, DIr or MGet) should be limited to
those jobs, started tasks, APPC/MVS, or TSO output that match the specified
value. JESJOBName is only accepted if JESINTERFACELevel is set to 2.
jobname
Specified job name. Can be or can contain a wildcard (* or ?).
loginuserid*
The logged in user ID appended with an asterisk (*). Default value.
Note: JESJOBName matches the first job name that a job is assigned. Jobs that
change job names during execution time are matched only by their
initial job name.
JESLrecl
Specifies the logical record length (LRecl) for the Job Entry System (JES)
internal reader at the foreign host.
length
The logical record length for the JES internal reader at the foreign host. The
valid range is 1–254.
* Indicates that the logical record length should be taken from the site LRecl
parameter setting.
JESOwner
Specifies that any command (Get, LIST, DIr or MGet) should be limited to
those jobs, started tasks, APPC/MVS, or TSO output which are owned by the
user ID specified. JESOWNER cannot be modified unless
JESINTERFACELEVEL is set to 2.
userid
Specified user ID. The userid can be or contain a wild card (* or ?).
loginuserid
The logged in user ID. Default value.
JESRecfm
Specifies the record format for the JES internal reader at the foreign host.
F Fixed record format
V Variable record format
* Indicates that the record format should be taken from the SIte RECfm
parameter setting.
JESSTatus
Specifies what type of information should be returned on LIST and NLST
commands. Acceptable values are INPUT, ACTIVE, OUTPUT or ALL. The
default value for JESSTATUS is ALL. JESSTATUS can be modified only if
JESINTERFACELEVEL=2.
LISTSUBdir
Use the LISTSUBdir option to indicate that wildcard searches should apply to
the current working directory and should also span one level of its
subdirectories. This setting affects processing of the NLST command. The z/OS
FTP client sends an NLST command to the server as part of LS*, MDelete *,
and MGet * subcommand processing.
Restrictions:
1. The LISTSUBdir option applies to z/OS UNIX file operations only; MVS
data set operations are not affected.
2. The FTP client must be communicating with a z/OS V1R7 or later FTP
server or an unrecognized parameter response will be received.
Result: If the LISTSUBdir option is not specified on the SITE subcommand and
the LISTSUBDIR statement is not specified in the client FTP.DATA file, the
default is as if the LISTSUBdir option was specified on the SITE subcommand.
LRecl
Specifies the logical record length (LRecl) of a newly allocated data set. When
specified without a length, no LRecl is used when allocating the data set. The
equal sign (=) is optional in this case.
Specify LRecl with no value when you are also specifying DATAC&=data_class
and you want the SMS data class to provide the LRecl value, or when you are
specifying DCbdsn=data_set_name and you want to use the LRecl from the
DCBDSN data set. If LRecl=length is specified with either DATAClass or
DCbdsn, the length specified by the SIte LRecl parameter overrides the
DATAClass or DCbdsn LRecl.
length
Specifies the logical record length of a newly allocated data set. The valid
range is 0—32760. A special value of x (LRecl=x) is also supported to
indicate that a logical record length can exceed 32760 for variable-length
spanned records.
Specifying LRecl=0 has the same effect as specifying LRecl with no
parameters.
MBDATACONN=(file_system_codepage,network_transfer_codepage)
Specifies the codepages for the file system and for the network transfer used
when the server does data conversion during a data transfer. This parameter
affects the conversion of multibyte character set (MBCS) data (including
support for DBCS code pages) and is used when the ENCODING=MBCS is
also specified.
See “Support for MBCS languages” on page 90 for more information.
file_system_codepage
Specifies the name of the file system codepage.
network_transfer_codepage
Specifies the name of the network transfer codepage.
MBREQUIRELASTEOL
Specifies that the FTP server will report an error when a multibyte file or data
set is received from the network with no EOL sequence in the last record
received. FTP will abort the file transfer.
MBSENDEOL
Specifies which end-of-line sequence to use when ENCODING is MBCS and
data is being sent to the client and translated to ASCII.
CRLF
Append both carriage return (X'0D') and line feed (X'0A') end-of-line
sequences to each line of translated text. This is the default and the
standard sequence defined by RFC 959.
CR
Append only a carriage return (X'0D') end-of-line sequence to each line of
translated text.
LF Append only a line feed (X'0A') end-of-line sequence to each line of
translated text.
NONE
Do not append an end-of-line sequence to the line of translated text.
Requirements:
v Most FTP clients support only the CRLF value for incoming ASCII data. Do
not specify another value for MBSENDEOL unless you have verified that the
client is expecting the end-of-line sequence that you specify.
v Do not use an end-of-line sequence other than CRLF if the client is a z/OS
FTP client. The z/OS FTP client supports only the CRLF value for incoming
type ASCII data.
v Do not attempt to stream mode restart a multibyte file retrieve that
originated while the FTP server MBSENDEOL value was not CRLF.
MGmtclass
Specifies the SMS management class as defined by your organization for the
target host. Specifying MGmtclass with no mgmtclass cancels the management
class specification. The equal sign (=) is optional in this case.
mgmtclass
Specifies the SMS management class as defined by your organization for
the target host. If the mgmtclass specified has a setting for RETpd, the
value specified by the mgmtclass can override the setting of the RETpd site
parameter, the RETpd value of a model data set if the DCbdsn parameter
is specified, and the RETpd value defined in an SMS data class if
DATAClass is specified. See “Specifying values for new data sets” on page
91 for more information about specifying attributes when allocating new
data sets.
MIGratevol
Specifies the volume ID for migrated data sets if they do not use IBM Storage
Management Subsystems. If you do not specify MIGratevol, the default
volume_serial is MIGRAT.
volume_ID
The volume ID for migrated data.
NOASAtrans
Treats ASA file transfers as regular file transfers; that is, the ASA characters are
treated as part of the data and are not converted to print control characters.
NOAUTOMount
Prevents automatic mounting of volumes for data sets on volumes that are not
mounted.
NOAUTORecall
Prevents automatic recall of migrated data sets.
NORDW
Specifies that Record Descriptor Words (RDWs) are not treated as if they were
part of the record and are discarded during FTP transmission of variable
format data sets.
NOSBSUB
Specifies that substitution is not allowed for data bytes that cannot be
translated in a single-byte character translation. This causes a data transfer
failure if a character cannot be translated during the transfer.
NOSPRead
Specifies that the output is in report format rather than spreadsheet format
when the file type is SQL.
NOTRAILingblanks
Specifies that the FTP server does not preserve the trailing blanks that are in a
fixed format data set when the data is sent to the foreign host.
NOTRUNcate
Specifies that truncation is not permitted. The FTP server will set an error and
fail file transfer if a record that is longer than the LRECL of the new file is
detected.
Note: If NOWRAPrecord and NOTRUNcate are set, then an error will be set
and the file transfer will fail.
NOWRTAPEFastio
Indicates that ASCII Stream data that is being written to tape must be written
using the Language Environment runtime library.
PDSTYPE
Specifies whether the FTP server creates MVS directories as partitioned data
sets or as partitioned data sets extended.
When specified without a value, FTP will not specify to z/OS whether to
allocate a new MVS directory as a PDS or a PDSE. When specified without a
value, the equal sign (=) is optional.
PDS
Allocate directories as partitioned data sets.
PDSE
Allocate directories as partitioned data sets extended.
PRImary
Specifies the number of tracks, blocks, or cylinders for primary allocation.
When specified without an amount, no primary value is used when allocating
the data set. The equal sign (=) is optional in this case.
Specify PRImary with no value when you are also specifying
DATAClass=data_class and you want the SMS data class to provide the
PRImary amount.
To allow the SMS data class to determine the space allocation, both PRImary
and SECondary must be specified with no value. The tracks, blocks, and
cylinders setting is ignored in this case. If PRImary=amount is specified with
DATAClass, the value specified by the SIte PRImary parameter overrides the
DATAClass space allocation.
amount
Specifies the number of tracks, blocks, or cylinders for primary allocation.
For allocating partitioned data sets, this is the amount of space that is
allocated for the primary extent.
For allocating sequential data sets this is the maximum amount of space
that is allocated for the primary extent. If a smaller amount of space is
needed to hold the data being transferred, only the amount actually
needed to hold the data is allocated. The valid range is 1 - 16 777 215.
Qdisk
Used to display statistics about available space on a volume. If the Qdisk
parameter is entered without a specific volume_serial, statistics about available
space are displayed for each volume that is defined with “Use
Attribute=storage.”
volume_serial
Displays statistics about available space on a specific volume.
QUOtesoverride
Specifies that single quotation marks at the beginning and end of a file name
should override the current working directory instead of being appended to
the current working directory. This is the way single quotation marks are used
in all previous MVS FTP servers and is the default. Any single quotation mark
inside the beginning and ending quotation marks is treated as part of the file
name.
QUOtesoverride indicates the usage of single quotation mark appearing at the
beginning of, or surrounding, a file name. The setting of this keyword affects
all FTP subcommands that have a path name as a parameter except keywords
on the SIte subcommand.
RDW
Specifies that Record Descriptor Words (RDWs) are treated as if they were part
of the record and are not discarded during FTP transmission of variable format
data sets in stream mode.
Code Description
F Fixed record length
V Variable record length
U Undefined record length
B Blocked records
S Spanned records (if variable) / standard records (if fixed)
Code Description
A Records contain ISO/ANSI control characters
M Records contain machine code control characters
RETpd
Specifies the number of days that a newly allocated data set should be
retained. When specified without the number of days, a retention period will
not be specified when allocating new data sets. The equal sign (=) is optional
in this case.
Specify RETpd with no value when you are also specifying
DATAClass=data_class or MGmtclass=mgmtclass and you want SMS to provide
the RETpd value, or when you are specifying DCbdsn=data_set_name and you
want to use the RETpd from the DCBDSN data set. If more than one of the
SIte parameters (RETpd, MGmtclass, DATAClass, or DCbdsn) are specified, the
order of precedence (highest to lowest) is:
1. MGmtclass
2. RETpd
3. DCbdsn
4. DATAClass
If a retention period is associated with an SMS management or data class, or
with a model DCBDSN data set, the value of the retention period can be
overridden to another retention period, but it cannot be overridden to have no
retention period specified for the newly created data sets.
days
Specifies the number of days that a newly allocated data set should be
retained. The valid range is 0—9999. A value of 0 indicates a retention
period of 0 days so that the data set expires the same day it was created.
Tips:
1. The SIZE command is disabled if you configure a SBSENDEOL value other
than CRLF.
2. The REST command in Mode Stream is disabled if you configure a
SBSENDEOL value other than CRLF. A mode block REST command is not
affected by the SBSENDEOL setting.
3. SIZE and REST commands are sent by clients as part of a stream mode
restart of an interrupted file transfer. Because these commands are disabled
by changing the SBSENDEOL value from the RFC 959 standard, stream
mode restarts are effectively disabled. Block mode restart is not affected by
the SBSENDEOL setting.
Rules:
1. Most clients support only the CRLF value for incoming type ASCII data.
Do not specify another value for SBSENDEOL unless you have verified that
the client is expecting the EOL sequence that you specify.
2. Do not use an EOL sequence value other than CRLF if the client is a z/OS
FTP client. The z/OS FTP client supports only the CRLF value for incoming
ASCII data.
SBSUB
Specifies that substitution is allowed for data bytes that cannot be translated in
a single byte character translation. The substitution character is specified by the
SBSUBCHAR parameter.
SBSUBCHAR nn
Specifies the value that is used for substitution when SBSUB is also specified.
The value is one of the following:
SPACE
When the target code set is ASCII, replace untranslatable characters
with X'20' during SBCS data transfers. When the target code set is
EBCDIC, replace untranslatable characters with X'40' during SBCS data
transfers.
nn Replace untranslatable characters with nn during SBCS data transfers
where nn is a hexadecimal value from 00 to FF.
SECondary
Specifies the number of tracks, blocks, or cylinders for secondary allocation.
When specified without the amount for the C server, no secondary value is
used when allocating the data set. The equal sign (=) is optional in this case.
Specify SECondary with no value when you are also specifying
DATAClass=dataclass and you want the SMS data class to provide the
SECondary value. To allow the SMS data class to determine the space
allocation, both PRImary and SECondary must be specified with no value. The
tracks, blocks, or cylinders setting is ignored in this case. If SECondary=amount
is specified with DATAClass, the value specified by the SIte SECondary
parameter overrides the DATAClass space allocation.
amount
Specifies the amount of tracks, blocks, or cylinders for secondary
allocation. The valid range is 0—16 777 215.
SPRead
Specifies that the output is in spreadsheet format when the file type is SQL.
SQLCol
Specifies the column headings of the SQL output file.
any
The label of the DB2 SQL table column heading is the first choice for
column heading, but if there is no label, the name becomes the column
heading.
labels
Labels are the DB2 SQL table column headings. If any of the columns do
not have labels, FTP supplies a column heading in the form of COLnnn.
names
Uses the names of the DB2 SQL table column headings. The labels are
ignored.
STOrclass
Specifies the SMS storage class for the target host, as defined by your
organization. Cancels the storage class specification when specified without a
storage_class parameter value. The equal sign (=) is optional in this case.
See “Specifying values for new data sets” on page 91 for more information
about specifying attributes when allocating new data sets.
storage_class
Specifies the SMS storage class as defined by your organization for the
target host.
When an SMS storage class is in use, any of the attributes specified there
can be overridden bye the user by a different specification. To avoid
overriding the setting in the SMS storage class, specify BLKSize, LRecl,
PDSTYPE, PRImary, RECfm, SECondary, UCOUNT, Unit, VCOUNT, or
VOLume with no associated value. This removes any value specified on a
prior SITE command or in FTP.DATA, and the affected attributes are not
included on the allocation. To override a setting in the SMS storage class,
specify the desired value with the appropriate keyword.
TRacks
Specifies that primary and secondary space allocations are in tracks. If both
PRImary and SECondary values are unspecified, and an SMS data class value
has been specified, the space allocation is determined by the SMS data class
value and the TRacks parameter value is ignored.
TRAILingblanks
Specifies that the FTP server preserves the trailing blanks that are in a fixed
format data set when the data is retrieved from a foreign host.
TRUNcate
Specifies that truncation is permitted. The FTP server does not set an error
when a truncated record is detected and file transfer continues.
UCOUNT
Specifies how many devices to allocate concurrently to support the allocation
request.
unit_count
Specifies number of devices to allocate. Valid values are in the range 1–59.
When specified without a value, the FTP server does not specify a unit
count when allocating data sets.
P Parallel mount request.
UCSTRUNC
| In UCS-2-to-EBCDIC conversion, truncation of EBCDIC data is allowed. The
data transfer continues even if EBCDIC data is truncated.
Note: If the EBCDIC data contains any double-byte data, truncation might not
honor character boundaries and EBCDIC records might not end in
Shift-in state.
UMask
Defines the file mode creation mask. The file mode creation mask defines
which permission bits are not to be set on when a file is created. When a file is
created, the permission bits requested by the file creation are compared to the
file mode creation mask, and any bits requested by the file creation which are
disallowed by the file mode creation mask are turned off.
The format of the UMask keyword is UMASK ooo.
When a file is created, the specified permission bits for the file are 666
(-rw-rw-rw-). If the file mode creation mask is 027, the requested permissions
and the file mode creation mask are compared:
110110110 - 666
000010111 - 027
---------
11010000 - 640
The actual permission bits set for the file when it is created is 640 (-rw-r-----).
Notes:
1. The default value for UMask is 027.
2. You cannot use FTP to create z/OS UNIX files with execute permissions. If
you require execute permissions, use the SITE CHMod command to change
permissions after the file has been created.
UNICODEFILESYSTEMBOM
Specifies whether the FTP server will store incoming Unicode files with a byte
order mark (BOM).
| Restriction: The only Unicode encoding formats supported for file storage by
| z/OS FTP are UTF-8 and UTF-16. Files are always stored in big endian format.
| Result: The byte order mark (BOM) stored with the file is determined by the
| encoding used to store the file rather than by the format of the BOM sent with
| the file.
ASIS
Store incoming Unicode files with a byte order mark only if the file was
sent with a byte order mark.
ALWAYS
Store incoming Unicode files with a byte order mark regardless of whether
the file was sent with a byte order mark.
NEVER
Store incoming Unicode files without a byte order mark regardless of
whether the file was sent with a byte order mark.
Results:
v The Unicode byte order mark, U+FEFF, can also be interpreted as
zero-width nonbreaking space. z/OS FTP considers only the first character
of the file as a possible byte order mark (BOM). No other instance of the
BOM sequence in the file is affected by this setting.
The MVS FTP server identifies multiple commands issued with a single-site
command by the white space. For example (note the white space in the two
commands): site vol=fffff is a single-site command; however, site vol =
fffff is treated by the server as three different commands.
WRAPrecord
Indicates that data is wrapped to the next record if no new line character is
encountered before the logical record length of the receiving file is reached.
WRTAPEFastio
Indicates that ASCII Stream data that is being written to tape is allowed to be
written using BSAM I/O.
XLate
Indicates the desired translate table to be used for the data connection. Valid
subcommands are:
SITE XLate=name
SITE XLate=*
name
Specifies the name that corresponds to the desired translate table data set.
The corresponding data set name is hlq.name.TCPXLBIN unless
environment variable _FTPXLATE_name = dsn was defined for the FTP
server to override the data set name. In that case, dsn is the data set used.
* Indicates that the translate tables set up at initialization for the data
connection are to be used.
Notes:
1. The translate tables being used for the data connection can also be changed
by an SBDataconn subcommand.
2. SIte XLate and SIte SBDataconn are mutually exclusive.
Usage
v Because more than one parameter can be specified with the SIte subcommand,
parameter can be repeated many times, with each parameter separated by a blank
space.
v If the remote host is using TCP/IP, use the SIte subcommand to set data set
routing and send data set allocation attributes to the host. The site-dependent
information sent with the SIte subcommand remains active until you issue a
new SIte subcommand. The new SIte subcommand adds to or changes the
attributes established by previous SIte subcommands.
v If you specify one or more incorrect parameters with the SIte subcommand, an
error message specifying the incorrect parameter is displayed. All correct
parameters are set, regardless of any incorrect parameters, and do not need to be
reissued.
v If the data sets are sent from an MVS host, use the SENDSite subcommand to
automatically invoke the SIte subcommand.
If the local host does not support the SIte subcommand, site information can be
sent to the MVS FTP server from the client using the QUOte subcommand.
v Use the HElp SERVER SIte command to information about the SIte parameters
supported by a server.
Context
v To check the effect of the SIte subcommand on the attributes at the foreign host,
see “STAtus subcommand—Retrieve status information from a remote host” on
page 301.
v See “SENDSite subcommand—Toggle the sending of site information” on page
269 for more information about the SENDSite subcommand.
v See “QUOte subcommand—Send an uninterpreted string of data” on page 259
for more information about the QUOte subcommand.
v See the z/OS MVS JCL Reference for more information about some of the SIte and
LOCSIte parameters.
Purpose
Use the SJiskanji subcommand to change the data transfer type to SJISKANJI.
MVS FTP uses the same SBCS translate table for single-byte or double-byte data
transfers. If you require an alternate SBCS table for a double-byte transfer, use the
SIte/LOCSIte SBDataconn or SIte XLate subcommand to have the server (or client)
change the SBCS translation for the data connection.
Format
SJiskanji
(
Ascii NOSo NOType
Sosi
Ebcdic
Space
Parameters
Sosi
Transferred data contains the shift-out and shift-in characters specified by one
of the following parameters — Ascii, Ebcdic or Space. If no parameter is
specified, ASCII is used as the default.
If Sosi is not specified at all, shift-out or shift-in characters are not used in the
transferred data.
Ascii
When combined with the Sosi parameter, causes shift-out and shift-in
characters X'1E' and X'1F' to be used to delimit DBCS strings in ASCII
data.
Ebcdic
When combined with the Sosi parameter, causes shift-out and shift-in
characters X'0E' and X'0F' to be used to delimit DBCS strings in ASCII
data.
Space
When combined with the Sosi parameter, causes shift-out and shift-in
characters X'20' and X'20' (ASCII spaces) to be used to delimit DBCS
strings in ASCII data.
NOSo
Specifies that the data transferred is pure DBCS (data with no SBCS characters)
and is to be transferred to or from EBCDIC DBCS data that contains no
shift-out or shift-in delimiters.
NOType
Suppresses the sending of the corresponding TYpe command to the server. Use
this parameter when translation is to be done by the FTP client only.
Examples
To cause the FTP client to change its transfer type to Shift JIS kanji, without
sending a TYpe command to the FTP server, use:
SJISKANJI (NOTYPE
The server in this example should be set to the ASCII transfer type before the
(NOTYPE subcommand is issued.
Usage
v The SJiskanji client subcommand is equivalent to the TYPE B 1 server command.
v The SJiskanji (Sosi or SJiskanji (Sosi ASCII client subcommands are equivalent to
the TYPE B 1 S A server command.
v The SJiskanji (Sosi EBcdic client subcommand is equivalent to the TYPE B 1 S E
server command.
v The SJiskanji (Sosi SPACE client subcommand is equivalent to the TYPE B 1 S S
server command.
v The SJiskanji (NOSO client subcommand is equivalent to the TYPE B 1 N server
command.
Context
See “FTP with traditional DBCS support” on page 87 and “Support for MBCS
languages” on page 90 for more information.
Purpose
Use the SRestart subcommand to restart an interrupted stream mode data transfer.
Format
SRestart
Get foreign_file
local_file
PUt local_file
foreign_file
Parameters
Get
Resume a subcommand.
foreign_file
Specifies the name of the file to be retrieved from the remote host.
local_file
Specifies the name of the local file created as a result of the Get
subcommand.
Enter the same names for foreign_file and local_file as you used in the
interrupted subcommand.
You can override the usage of the current local working directory in the
local file name by specifying local_file as a complete data set name enclosed
in single quotation marks (’). If local_file is not specified, the local_file name
is the same as the foreign_file name.
PUt
Resume a put subcommand.
local_file
Specifies the name of the file on your local host being sent to the remote
host.
foreign_file
Specifies the name that the delivered file is given on the remote host. If the
foreign_file name is not specified, the foreign_file name is the same as the
local_file name.
Enter the same names for foreign_file and local_file as you used in the
interrupted put subcommand.
You can override the usage of the current local working directory in the
local file name by specifying local_file as a complete data set name enclosed
in single quotation marks (’). If local_file is not specified, the local_file name
is the same as the foreign_file name.
Usage
v Do not use SRestart to resume an interrupted file transfer unless you can
recreate the start options, FTP.DATA statements, SIte, and LOCSIte options in
effect at the time of the failed file transfer. Unpredictable results can occur if the
file transfer environment cannot be recreated. If you cannot recreate the file
transfer environment, issue Get or PUt to transfer the file again.
v Not all file transfers can be resumed in STREam mode. Observe these
restrictions during the original file transfer as well as the SRestart transfer.
– Mode must be STREam.
– Filetype must be SEQ.
– Structure must be FILE.
– SUnique option must be disabled.
– Data type must be ASCII, EBCDIC, or Image.
– SITE and LOCSITE ENcoding must be SBCS (SRestart does not support DBCS
or MBCS ENcoding).
– The session cannot be protected with an active security mechanism (such as
TLS or Kerberos).
– For SRestart PUt, LOCSITE SBSENDEOL=CRLF must be set. If the original
transfer used a setting other than CRLF, the transfer cannot be restarted.
Using a setting other than CRLF will cause the SRestart to fail. Setting
SBSENDEOL to CRLF when the original transfer used a different setting will
corrupt the remote file.
– For SRestart Get, SITE SBSENDEOL=CRLF must be set. If the original transfer
used a setting other than CRLF, the transfer cannot be restarted. Using a
setting other than CRLF will cause the SRestart to fail. Setting SBSENDEOL to
CRLF when the original transfer used a different setting will corrupt the local
file.
– The local file must reside in the z/OS UNIX file system.
| – For SRestart PUt, a server that is z/OS Communications Server V1R2 or later
| will reject the restart if the foreign_file value is not a z/OS UNIX file system
| file.
v For SRestart PUt, if the server cannot calculate an appropriate point to restart
the file transfer, SRestart will fail.
v For SRestart Get, if the client cannot calculate an appropriate point to restart the
file transfer, SRestart will fail.
v If SRestart fails, use Get or PUt and start the file transfer again.
Context
v See “SUnique subcommand—Changes the storage method” on page 310 for
information about changing the storage method on the remote host.
v See “STRucture subcommand—Set the file structure” on page 309 for more
information.
v See “LOCSIte subcommand—Specify site information to the local host” on page
195 for a description of the SBSENDEOL and ENcoding parameters.
Purpose
Use the STAtus subcommand to retrieve current configuration information from
the FTP server. This information includes the current settings of the configuration
variables, which can be initialized in the FTP.DATA data set or changed using
various FTP subcommands. For information about the parameters of the FTP.DATA
data set, see the z/OS Communications Server: IP Configuration Reference.
Format
STAtus
name (option
options:
| ASAtrans
AUTOMount
AUTORecall
BLKsize
BLocks
BLOCKSIze
BUfno
CHKptint
CONDdisp
CYlinders
DATAClass
DATASetmode
DB2
DBSUB
DCbdsn
DESt
Directory
DIRECTORYMode
ENcoding
FILEtype
FTpkeepalive
INactivetime
ISPFStats
JESENTRYLimit
JESJOBName
JESLrecl
JESOwner
JESRecfm
JESSTatus
LISTSUBdir
LRecl
MBDATACONN
MBREQUIRELASTEOL
MBSENDEOL
MGmtclass
MIGratevol
PDSTYPE
PRImary
QUOtesoverride
RDw
READTAPEFormat
RECfm
RETpd
SBDataconn
SBSENDEOL
SBSUB
SBSUBChar
SECondary
SPRead
SQLCol
STOrclass
TLSRFCLEVEL
TRacks
TRAILingblanks
TRUNcate
UCOUNT
UCSHostcs
UCSSub
UCSTrunc
UMask
UNICODEFILESYSTEMBOM
Unit
VCOUNT
VOLume
WRAPrecord
WRTAPEFastio
XLate
Parameters
ASAtrans
Indicates that the FTP client interprets characters in the first column of ASA
files being transferred as print control characters.
AUTOMount
Indicates automatic mounting of volumes for data sets that are on unmounted
volumes.
AUTORecall
Indicates automatic recall of migrated data sets.
BLocks
Indicates that primary and secondary space allocations are in blocks.
BLOCKSIze
Specifies the block size of a newly allocated data set.
BUfno
Indicates the number of access method buffers that are to be used when data is
read from or written to a data set.
CHKptint
Specifies the checkpoint interval for the sending site in a file transfer request.
CONDdisp
Specifies the disposition of the data set if a retrieve operation for a new data
set ends before all of the data is written.
CYlinders
Indicates that primary and secondary space allocations are in cylinders.
DATAClass
Specifies the SMS data class.
DATASetmode
Indicates whether DATASetmode or DIRECTORYMode is in effect.
DB2
Specifies the DB2 subsystem name.
DBSUB
Indicates whether substitution is allowed for data bytes that cannot be
translated in a double-byte character translation.
DCbdsn
Specifies the name of the MVS data set to be used as a model for allocating
new data sets.
DESt
Specifies the Network Job Entry (NJE) destination to which the files are routed
when you enter a PUt command.
Directory
Specifies the number of directory blocks to be allocated for the directory of a
PDS.
DIRECTORYMode
Indicates whether DATASetmode or DIRECTORYMode is in effect.
ENCODING
Specifies the encoding type that is used for conversions between code pages
for data transfers.
FILEtype
Indicates the data set file type.
FTpkeepalive
Specifies the control connection keepalive timer value in seconds.
INactivetime
Specifies the inactivity timer to a specified number of seconds.
ISPFSTATS
Indicates that FTP will create or update ISPF Member statistics when PUt,
MPut, or APpend subcommands are issued.
JESENTRYLimit
Indicates the number of entries that can be displayed concurrently using a
LIST or NLST command.
JESJOBName
Indicates that any command (Get, LIST, DIr, or MGet) should be limited to
those jobs, started tasks, APPC/MVS, or TSO output that match the specified
value.
JESLrecl
Specifies the logical record length (LRecl) for the Job Entry System (JES)
internal reader at the foreign host.
JESOwner
Indicates that any command (Get, LIST, DIr, or MGet) should be limited to
those jobs, started tasks, APPC/MVS, or TSO output which are owned by the
user ID specified.
JESRecfm
Specifies the record format for the JES internal reader at the foreign host.
JESSTatus
Specifies what type of information should be returned on LIST and NLST
commands.
LISTSUBdir
Indicates that wildcard searches should apply to the current working directory
and should also span its subdirectories.
LRecl
Specifies the logical record length (LRecl) of a newly allocated data set.
MBDATACONN
Specifies the code pages for the file system and for the network transfer that
are used when the client does data conversion during a data transfer.
MBREQUIRELASTEOL
Indicates whether the FTP client reports an error when a multibyte file or data
set is received from the server with no EOL sequence in the last record
received.
MBSENDEOL
Indicates which end-of-line sequence to use when the ENCODING value is
SBCS, the data is ASCII, and data is being sent to the server.
MGmtclass
Specifies the SMS management class as defined for the target host by your
organization.
MIGratevol
Specifies the volume ID for migrated data sets if they do not use IBM storage
management systems.
PDSTYPE
Indicates whether the FTP client creates local MVS directories as partitioned
data sets or as partitioned data sets extended.
PRImary
Specifies the number of tracks, blocks, or cylinders for the primary allocation.
QUOtesoverride
Indicates that a single quotation mark at the beginning and end of a file name
should override the current working directory instead of being appended to
the current working directory.
RDW
Indicates that variable record descriptor words (RDWs) are treated as if they
are part of the record and are not discarded during FTP transmission of
variable format data sets in stream mode.
READTAPEFormat
Displays information about an input data set on tape.
RECfm
Displays the data set record format.
RETpd
Specifies the number of days that a newly allocated data set should be
retained.
SBDataconn
Specifies the conversions between file system and network code pages to be
used for data transfers.
SBSENDEOL
Specifies which end-of-line sequence to use when ENCODING is SBCS, the
data is ASCII, and data is being sent to the client.
SBSUB
Indicates that substitution is allowed for data bytes that cannot be translated in
a single-byte-character translation.
SBSUBCHAR
Specifies the value that is used for substitution when SBSUB is also specified.
SECondary
Specifies the number of tracks, blocks, or cylinders for the secondary
allocation.
SPRead
Indicates that the output is in spreadsheet format when the file type is SQL.
SQLCol
Specifies the SQL output file column headings.
STOrclass
Specifies the SMS storage class as defined by your organization for the target
host.
| TLSRFCLEVEL
| Specifies the level of RFC 4217, On Securing FTP with TLS, that is supported by
| the server.
TRacks
Indicates that primary and secondary space allocations are in tracks.
TRAILingblanks
Indicates that the FTP client preserves the trailing blanks in a fixed-format data
set when the data is sent to a foreign host.
TRUNcate
Indicates that truncation is permitted.
UCOUNT
Indicates the number of devices to allocate concurrently to support the
allocation request.
UCSHOSTCS
Indicates the EBCDIC code set to be used when converting to and from
Unicode.
UCSSUB
Indicates that in Unicode-to-EBCDIC conversion, the EBCDIC substitution
character is used to replace any Unicode character that cannot be successfully
converted.
UCSTRUNC
Indicates that in Unicode-to-EBCDIC conversion, EBCDIC data truncation is
allowed.
UMask
Specifies the file mode creation mask.
UNICODEFILESYSTEMBOM
Indicates whether the FTP client will store incoming Unicode files that have a
byte order mark.
Unit
Specifies the unit type for allocation of new data sets.
VCOUNT
| Specifies the number of tape data set volumes that an allocated data set can
span.
VOLume
Specifies the volume serial number for allocation of new data sets.
WRAPrecord
Indicates that data is wrapped to the next record if no new-line character is
encountered before the logical record length of the receiving file is reached.
WRTAPEFastio
Indicates that ASCII stream data that is being written to tape can be written
using BSAM I/O.
XLate
Specifies the translate table to be used for the data connection.
Examples
The following is an example of the STAtus subcommand using a single parameter:
status (asatrans
>>> XSTA (asatrans
211-ASA control characters in ASA files opened for text processing
211-will be transferred as ASA control characters.
211 *** end of status ***
Usage
The retrieved status information can be a directory, a file, or general status
information, such as a summary of activity. If name is omitted, general status
information is retrieved.
For further information about setting values for server initialization in the
FTP.DATA data set, see the z/OS Communications Server: IP Configuration Reference.
Purpose
Use the STREam subcommand to set the data transfer mode to stream mode. This
is equivalent to specifying the MOde S subcommand. See “MOde
subcommand—Set the data transfer mode” on page 242 for more information.
Format
STREam
Parameters
There are no parameters for this subcommand.
Purpose
Use the STRucture subcommand to set the file structure.
Format
STRucture File
Record
Parameters
File
Sets the file structure to File. When the STRucture value is File, the file is sent
as a continuous sequence of data bytes.
Record
Sets the file structure to Record. When the STRucture value is Record, the file
is sent as a series of records.
Purpose
The SUnique subcommand changes the method of storing files on the foreign host.
Format
SUnique
Parameters
On
Turns on store unique.
Off
Turns off store unique.
NAME
When specified with ON or OFF, instructs the client to include a name when
sending a store-unique command to the server.
NONAME
When specified with ON or OFF, instructs the client to omit a name when
sending the store-unique command to the server.
Usage
v By default, the SUnique setting is OFF NAME and FTP uses a store command
(STOR) with the PUt and MPut subcommands. If the foreign host already has a
data set or file with the name specified by the foreign_file value, the foreign host
overwrites the existing data set or file.
v If SUnique is set to ON, FTP uses a store-unique command (STOU) with the PUt
and MPut subcommands and prevents you from overwriting or erasing the
existing data set or file on the foreign host. If the default setting of NAME is in
effect, a name string is sent to the server with the store-unique command. The
created foreign data set or file is stored with a unique name. FTP sends the
unique name of the created foreign data set or file to the local host, where the
data set or file name is displayed on your terminal.
v SUnique with no parameters toggles the ON/OFF setting. If ON or OFF is
specified, SUnique is set to that value, regardless of its current setting. The
NAME/NONAME setting can be changed as SUnique is turned ON or OFF. It is
in effect when SUnique is ON and does not change for the session until another
NAME or NONAME setting is specified.
Purpose
Use the SYstem subcommand to display the name of the remote host operating
system. The remote host must have also implemented the SYST subcommand.
Format
SYstem
Parameters
There are no parameters for this subcommand.
Usage
Use this subcommand to determine the operating system at the server. The reply
from the server has as its first word one of the system names from the Protocol
Numbers and Assignment Services list for Operating System Names. The names
are maintained by the Internet Assigned Numbers Authority (http://
www.iana.org). For the z/OS server, the reply is determined by the current
working directory at the server.
v If the current working directory is a z/OS UNIX file system directory, the reply
is:
215 UNIX is the operating system of this server. FTP Server is running on z/OS.
v Otherwise, the reply is:
215 MVS is the operating system of this server. FTP Server is running on z/OS.
Purpose
Use the TChinese subcommand to change the data transfer type to Traditional
Chinese (5550).
MVS FTP uses the same SBCS translate table for single-byte or double-byte data
transfers. If you require an alternate SBCS table for a double-byte transfer, use the
SIte/LOCSIte SBDataconn or SIte XLate subcommand to have the server (or client)
change the SBCS translation for the data connection.
Format
TChinese
(
Ascii NOSo NOType
Sosi
Ebcdic
Space
Parameters
Sosi
Transferred data contains the shift-out and shift-in characters specified by one
of the following parameters — Ascii, Ebcdic, or Space. If no parameter is
specified, ASCII is used as the default.
If the S parameter is not specified, shift-out or shift-in characters are not used
in the transferred data.
Ascii
When combined with the Sosi parameter, causes shift-out and shift-in
characters X'1E' and X'1F' to be used to delimit DBCS strings in ASCII
data.
Ebcdic
When combined with the Sosi parameter, causes shift-out and shift-in
characters X'0E' and X'0F' to be used to delimit DBCS strings in ASCII
data.
Space
When combined with the Sosi parameter, causes shift-out and shift-in
characters X'20' and X'20' (ASCII spaces) to be used to delimit DBCS
strings in ASCII data.
NOSo
Specifies that the data transferred is pure DBCS (data with no SBCS characters)
and is to be transferred to or from EBCDIC DBCS data that contains no
shift-out or shift-in delimiters.
NOType
Suppresses the sending of the corresponding TYpe command to the server. Use
this parameter when translation is to be done by the FTP client only.
Usage
The TChinese client subcommand is equivalent to the TYPE B 7 server command.
Context
See “FTP with traditional DBCS support” on page 87 and “Support for MBCS
languages” on page 90 for more information.
Purpose
Use the TSO subcommand to pass a Time Sharing Option (TSO) command to a
local host TSO environment.
Format
TSO command_line
Parameters
command_line
Specifies a TSO command. Do not use synonyms.
Usage
The TSO subcommand is not available from batch.
Purpose
Use the TYpe subcommand to set the data transfer type for the client and server
simultaneously with one command. FTP supports the ASCII, EBCDIC, image
| (binary), UCS-2, and two DBCS data transfer types.
Format
A
TYpe B
1
2
5 A N
6 S
7 E
8 S
9
A
3
4 R N
E
F
1
I
B
U 2
L
Parameters
A Sets the transfer type as ASCII. Specifying the ASCII transfer type has the same
effect as using the AScii subcommand. When the data transfer type is ASCII,
FTP translates outgoing files to ASCII before sending them, and translates
incoming files from ASCII to the file system code page before storing them.
ASCII is the default transfer type.
B Sets the transfer type as DBCS. Specifying the B transfer type with the
appropriate options has the same effect as using the BIG5, EUckanji, HAngeul,
JIS78kj, JIS83kj, Ksc5601, SJiskanji, SChinese, or TChinese subcommands. If B is
specified alone, the second type parameter defaults to 1 and current transfer
type is changed to Shift JIS kanji.
When you transfer double-byte data, the currently active SBCS translation table
is used for SBCS characters in the data set. If necessary, use the SIte/LOCSIte
SBDataconn or SIte XLate FTP subcommand to select an alternate SBCS
translation table that is appropriate for your data before transferring your
double-byte data.
B1
Changes current transfer type to Shift JIS kanji.
B2
Changes current transfer type to Extended UNIX Code kanji.
B3
Changes current transfer type to JIS 1983 kanji.
B4
Changes current transfer type to JIS 1978 kanji.
B5
Changes current transfer type to Hangeul.
B6
Changes current transfer type to Korean Standard Code KSC-5601, 1989
version.
B7
Changes current transfer type to Traditional Chinese (5550).
B8
Changes current transfer type to Big-5.
B9
Changes current transfer type to Simplified Chinese.
S Transferred data contains shift-out and shift-in delimeters.
If S is specified alone, the second parameter defaults to A. Shift-out and
shift-in characters X'1E' and X'1F' are used.
The S parameter can be used to control the use of shift-out (SO) and shift-in
(SI) characters during DBCS data transfer for Big5, SChinese, Shift-JIS kanji,
EUC kanji, Hangeul, KSC-5601, and TChinese.
If Sosi is not specified at all, shift-out or shift-in characters are not used in the
transferred data.
SA
Use shift-out and shift-in characters X'1E' and X'1F' to delimit DBCS strings
in the transferred data.
SE
Use shift-out and shift-in characters X'0E'and X'0F' to delimit DBCS strings
in the transferred data.
SS
Use ASCII spaces (X'20') as shift-out and shift-in characters to delimit
DBCS strings in the transferred data.
A Use ASCII shift-in escape sequence ESC ( B. This is the default. (Used for
DBCS data types JIS 1983 kanji and JIS 1978 kanji only.)
R Use JISROMAN shift-in escape sequence ESC ( J. (Used for DBCS data types
JIS 1983 kanji and JIS 1978 kanji only.)
N Indicates that the transfer is to be pure DBCS data (data with no SBCS
characters) and that the data is to be transferred to or from EBCDIC DBCS
data that contains no shift-out or shift-in delimiters.
When data is transferred from the EBCDIC host, the entire data set is assumed
to be EBCDIC DBCS with no SO/SI characters in the data. The data is then
converted to the required ASCII type and if any SO/SI option has been
specified for the transferred data then the corresponding SO/SI characters are
used to delimit the ASCII DBCS strings.
When transferring data to the EBCDIC host, no SO/SI characters are inserted,
and if any SO/SI option is specified for the transferred data, the corresponding
SO/SI characters are removed from the ASCII data and not replaced at the
host. The length of data might change during transfer to and from the EBCDIC
host when pure DBCS is specified with any SO/SI option. When pure DBCS is
specified by itself, the length of data does not change. If N is not specified, the
shift-out or/shift-in characters X'0E' and X'0F' are used at the host.
E Sets the transfer type as EBCDIC. Specifying the EBCDIC transfer type has the
same effect as using the EBcdic subcommand. The EBCDIC transfer type is
intended for efficient transfer between hosts that use EBCDIC for their internal
character representation.
F Sets the transfer type as EBCDIC IBM kanji. Specifying the IBM kanji transfer
type has the same effect as using the Ibmkanji subcommand.
F1
Change current transfer type to IBM (EBCDIC) kanji.
I Sets the transfer type as image (binary). Specifying the image transfer type has
the same effect as using the BINary subcommand. With the image transfer
type, data is sent as contiguous bits, packed into 8-bit bytes. The image
transfer type is used for the efficient storage and retrieval of data sets or files,
and for the transfer of binary data.
U2
Sets the transfer type to Unicode UCS-2. TYpe U 2 has optional parameters:
B Specifies big-endian byte order for Unicode encoding. This is the
default.
L Specifies little-endian byte order for Unicode encoding.
Examples
v Transfer text data to another host:
User: ascii
System: >>>TYPE A
200 Representation type is ASCII.
Command:
v Set the transfer type to JIS 1983 kanji using the JISROMAN shift-in escape
sequence ESC ( J:
TYPE B 3 R
v Set the transfer type to Shift-JIS kanji using the EBCDIC SO/SI characters
X'0E'/X'0F' in the transferred date:
TYPE B 1 S E
Usage
v If no Sosi option is specified by the TYpe command for BIG5, SChinese,
EUckanji, HAngeul, Ksc5601, SJiskanji, or TChinese, standard DBCS control is
used for the data transfer. This means that no SO/SI characters are placed in the
ASCII data when transferring from the (EBCDIC) host to ASCII and the value of
each ASCII character is used to determine if it is a single-byte character or part
of a double-byte character when transferring to the host. For JIS 1983 kanji and
JIS 1978 kanji, three-character escape sequences are always used to delimit DBCS
strings in mixed SBCS/DBCS ASCII data. These escape sequences cannot be
altered by using the S, S A, S E, or S S parameters.
v If no Sosi option is specified, the length of data might change as it is transferred
to or from the EBCDIC host since EBCDIC DBCS types on the host contain
SO/SI characters in mixed SBCS/DBCS data to determine which characters are
part of a DBCS string. Any of the above SO/SI options (S, S A, S E or S S) can
be used for mixed SBCS/DBCS data so that the length of data does not change
when transferred to or from the EBCDIC host. Use of three-character escape
sequences for JIS 1983 kanji and JIS 1978 kanji means that the length of data for
these types always change when transferring mixed SBCS/DBCS data to or from
the EBCDIC host.
v Use ASCII spaces as SO/SI characters in the transferred data only for transfer
from the EBCDIC host. Data can be transferred to the host when using this
option but care must be taken as each ASCII space is interpreted as a shift-out or
shift-in character and is replaced with the corresponding SO/SI character on the
host.
Context
For more information about transfer methods, see Table 13 on page 55.
Purpose
Use the UCs2 subcommand to change the data transfer type to Unicode UCS-2.
Format
UCs2
Big
(
Little NOType
Parameters
Big
Specifies big-endian byte order for the Unicode encoding. This is the default.
Little
Specifies little-endian byte order for the Unicode encoding.
NOType
Suppresses the sending of the corresponding TYpe command to the server. Use
this parameter when you want translation to be done by the FTP client only.
Usage
The UCs2 client subcommand is equivalent to the TYpe U 2 subcommand.
Purpose
Use the User subcommand to identify yourself to the host after opening a
connection or, if the foreign host is a z/OS FTP server, you can change your TSO
user ID password.
Format
User user_id
Password
Password:
password
/ new_password / new_password : userdata
account_information
Parameters
user_id
Specifies your logon name on the host.
password
Specifies your current password on the host. If you do not supply a password
when invoking the User subcommand, you are prompted to enter a password
if the host requires a logon password.
new_password / new_password
Specifies your new password on the host. You must enter the password twice.
:userdata
The optional user data must be separated from the password information by a
colon (:) and can be any combination of up to 200 nonblank characters and
numbers—except the colon. Care should be taken when using the backslash
character (\) in combination with other characters, which might be interpreted
as an escape sequence by the C compiler.
account_information
An optional parameter that will be supplied to the remote FTP server if the
server requests account information after receiving the password.
Usage
v Not all FTP servers support the userdata parameter. The z/OS FTP server
interprets userdata as a character string and passes it to the server FTCHKPWD
user exit routine.
v If you enter your password incorrectly, you are not prompted to enter the
password again. You must reissue the User subcommand to enter the correct
password.
v If you do not specify password/new_password/new_password on the User
subcommand, you can specify it when you are prompted for the password after
entering the User subcommand. You can specify the User subcommand to
change your TSO user_id password at any time during the FTP session.
v To avoid having your password print when issuing your user ID and password
as part of a CLIST or batch job, enter your user ID and password on separate
lines.
v Do not place any spaces between the passwords and the slashes (/), and the
user data.
v You can use the NETRC data set to automatically log on to a remote host.
v You can pass multiple strings as one parameter by enclosing them in single
quotation marks. For example, if USER MYNAME1 MYNAME2 were passed,
MYNAME1 would be parsed and sent to the server as the user ID, and
MYNAME2 would be parsed as the password and sent when prompted by the
server. However, sending the command USER ’MYNAME1 MYNAME2’ would cause
MYNAME1 MYNAME2 to be sent as the user ID. Typically, this is used when
using FTP through a proxy that requires two user IDs (one for the firewall and
one for the remote system). It is also used with servers that allow blank
characters to be imbedded within a user ID.
This same technique also works with the password. If the following statement is
issued: USER ’MYNAME1 MYNAME2’ ’PASSWD1 PASSWD2’, FTP replies to the USERID
prompt with ’MYNAME1 MYNAME2’ and to the PASSWORD prompt with ’PASSWD1
PASSWD2’.
Context
For information about using NETRC, see “NETRC data set” on page 40.
Purpose
Use the Verbose subcommand to toggle verbose mode. When in verbose mode the
client displays message IDs. This subcommand is effective only when the client is
running in a z/OS UNIX environment.
Format
Verbose
Parameters
There are no parameters for this subcommand.
Examples
verbose
Message IDs are not displayed when running in z/OS UNIX
Command:
lpw
Local directory name set to hierarchical file /u/user33
Command:
verbose
EZA2859I Message IDs are displayed when running in OS/390 UNIX
EZA1460I Command:
lpw
EZA2578I Local directory name set to hierarchical file /u/user33
EZA1460I Command:
Usage
Verbose is normally toggled off when the client starts. If you want it toggled on
when the client starts, use the -v parameter on the FTP command. If the FTP client
is running in a TSO environment, the display of message IDs is controlled by the
profile options MSGID and NOMSGID.
XMIT
TSO
JESx or
RECEIVE Batch
NJE
Network
Format
SMTPNOTE
To ( recipient ) Cc ( recipient )
NOCc
Subject ( subject ) Dataset ( data_set_name )
Batch
Reuse
Parameters
To (recipient)
Specifies a single recipient for the mail. If you do not specify the To parameter,
you are prompted to enter a list of recipients. Enter the name of each recipient
on a separate line and end the list with a blank line. You must specify at least
one mail recipient.
Cc (recipient)
Specifies a single copy recipient for the mail. If you do not specify the Cc
parameter and you do not specify the NOCc or Batch parameters, you are
prompted to enter a list of copy recipients.
If there are no recipients, press Enter. Otherwise, enter the name of each
recipient on a separate line and end the list with a blank line.
NOCc
Specifies that no prompting for Cc takes place.
recipient
Specifies the path address of the mail recipient. The format of recipient is
equivalent to the path syntax, as described in RFC 821, without the (<) and (>)
delimiters. See Appendix D, “Related protocol specifications,” on page 449 for
information about obtaining RFCs. This recipient parameter has one of the
following formats:
user_id@host_name
User on a host in your domain, possibly on your local node.
user_id@host_name .domain
User on a host in a specified domain.
user_id%nje_host_name@ gateway_name.domain
User on an NJE or RSCS node connected to a TCP network at
gateway_name. See “Electronic mail gateway” on page 336 for more
information.
Usage
v When the To(), Cc(), Subject(), or Dataset() parameters are specified more than
once, the last value specified is the one used by SMTPNOTE. No error messages
are generated for duplicate parameters on the command line.
v SMTPNOTE no longer requires quotation marks around blanks, single quotation
marks, semicolons, or commas, or triple quotation marks around data set names.
v You cannot use data sets with the extended attribute (PDSE and PSE) with
SMTPNOTE. SMTPNOTE uses TSO TRANSMIT, which does not support PDSE
and PSE data sets.
After you answer the prompts, SMTPNOTE invokes the TSO EDIT command to
enable you to prepare your note. Typically, the editor starts in INPUT mode. Enter
the text of your note line by line. When your note is complete, enter a null line
(that is, do not type anything when prompted), and press Enter. The editor
switches to EDIT mode.
In EDIT mode, you can use all the functions of the editor. You can also return to
INPUT mode, send the note, or cancel the note. For a complete description of the
EDIT command, see the z/OS TSO/E Command Reference.
If you invoke the SMTPNOTE command with the REUSE or DATASET parameter,
you are immediately placed in EDIT mode. The contents of the previously canceled
note, or the data set that you specify, are already part of the note. You can add to
or change the data that is already present.
To send the note, enter END SAVE in EDIT mode, and then enter SEND. To cancel
the note, enter END SAVE or END NOSAVE in EDIT mode, and then enter
CANCEL. If you cancel a note, you can recover what you entered by invoking the
SMTPNOTE command with the REUSE parameter. The recipients and subject of
the note are not saved, and must be reentered.
READY
smtpnote
TO:
irvine@mvs2.accounting
bekker@mvs2.accounting
mcgregr@mvs1.accounting
CC:
SUBJECT:
Travel Expenses
EDIT
end save
ENTER "SEND" TO SEND THE NOTE.
ENTER "CANCEL" TO TERMINATE WITHOUT SENDING THE NOTE.
send
READY
System: READY
User: receive
System: Dataset ** MESSAGE ** from SMTP on MVSXA2
Received: from MVSXA2 by TREEFROG.ABC.OZ (IBM MVS SMTP V3R2)
with BSMTP id 3088
;
***
******************************************************************
INMR000I No more files remain for the receive command to process.
For more information, see the z/OS TSO/E User’s Guide, z/OS TSO/E Command
Reference, or z/OS TSO/E Customization.
Undelivered notes
When SMTP cannot deliver a piece of mail, a nondelivery note explaining the
reason for nondelivery is sent to the sender. Nondelivery can occur for several
reasons, such as the destination host is unreachable, or the recipient does not have
a user ID on the destination host. If a note cannot be delivered, the body of the
original piece of mail is returned as part of the nondelivery notification. For an
example of a nondelivery note, see Figure 16 on page 329. The nondelivery note is
shown in bold.
Matt,
The shipment of ACME iron birdseed was shipped last Thursday. Please
advise me if you have not received it, and I’ll try to track it down.
Also, your ACME giant rock catapult is on back order; another customer
bought the last one yesterday.
Daniel
If a recipient is unknown at the destination host, the destination host does not
accept the mail for delivery, and a nondelivery note is forwarded to the sender. For
an example of an unknown recipient note, see Figure 17. The unknown recipient
note is shown in bold.
George,
Daniel
The SMTP component contains the SMTPPROC application which is the mail to
mail interface used on the Internet. This component is responsible for routing mail
between the sender and receiver. A user exit can be used to reject mail (spam)
based on criteria determined by the user. This exit examines the data sent by the
remote SMTP client application and determines what action to take based on the
contents of that mail item or mail command.
Responses to commands are sent back to the originator of the command using
MSG commands (or MSGNOH commands if SMTP is running with privilege class
B).
SMSG SMTP is not supported in batch. It uses VMCF and the PASCAL interface to
queue up information and will not print the information to a DD card.
Format
| SMSG SMTP HElp
NUMQueue
QUeues
STats
Parameters
HElp
Provides a list of valid SMTP SMSG commands.
| NUMQueue
| Provides the number of mail messages currently queued in SMTP.
QUeues
| Provides a list of mail queued on the various SMTP mail processing queues.
STats
Provides operating statistics about the SMTP server since the SMTP server was
started.
Examples
| System: READY
| User: smsg smtp numqueue
| System: Msg from SMTP: * Current Number of Mail Messages Queued is 50
|
The following example shows the output from the SMTP QUEUES command.
R Retry
A Active
Q Pending - waiting for TCP/IP connection
v xxx.xxx.xxx.xxx is the IP address
v 1 is the number of pieces of mail
v HostName.DomainName is the symbolic name
Msg from SMTP: * ----- Mail Queues -----
Msg from SMTP: * Spool Queue: 0
Msg from SMTP: * R: xxx.xxx.xxx.xxx : 1 HostName.DomainName
Msg from SMTP: * Undeliverable Queue: 0
Msg from SMTP: * --- Resolver Queues ---
Msg from SMTP: * Process Queue: 0
Msg from SMTP: * Send Queue: 0
Msg from SMTP: * Wait Queue: 0
Msg from SMTP: * Retry Queue: 0
Msg from SMTP: * Completed Queue: 0
Msg from SMTP: * Error Queue: 0
| Field descriptions:
Format
SMSG SMTP DEbug
EXpire IP_address
NODebug
NOTrace
SHutdown
STOPEXIT
STARTEXIT
TRace
Parameters
| DEbug
| Enables connection debugging and tracing information to the SMTP DEBUG
| data set. Specifying this parameter is the same as adding the DEBUG statement
| to the SMTP configuration data set (SMTPCONF).
EXpire IP_address
Causes the domain name resolution for mail queued for delivery to this IP
address to expire. SMTP will again try to resolve the IP addresses for this mail
if it is still within the retry time window.
NODebug
Disables connection debugging and tracing.
NOTrace
Disables resolver tracing.
SHutdown
Causes the SMTP server to shut down.
STARTEXIT
Causes SMTP to enable a user exit program by issuing the initialization call to
the user exit program if one exists. For more information regarding user exit
programs, see the z/OS Communications Server: IP Configuration Guide.
STOPEXIT
Causes SMTP to disable a currently running user exit program by issuing the
termination call to the user exit program if one exists. For more information
regarding user exit programs, see the z/OS Communications Server: IP
Configuration Guide.
TRace
Enables resolver tracing. The output of the resolver trace is sent to the SMTP
console. This is the same as adding TRACE RESOLVER to the TCPIP.DATA
data set.
Usage
| SMSG commands from authorized users are accepted only from users that are
specified in the SMSGAUTHLIST statement.
Context
| See the z/OS Communications Server: IP Configuration Reference for information about
| the SMTP configuration data set (SMTPCONF) and for a description of how to
| assign authorized users with the SMSGAUTHLIST configuration statement.
A The local MVS host running both the TCP/IP program and NJE.
B and C Hosts attached to host A through an NJE network.
D and E Hosts attached to host A through a TCP network.
NJE
B D
A TCP/IP Network
C E
NJE
Users on hosts A, B, and C can send mail to users on TCP hosts D and E using the
SMTPNOTE command. This method is described in “Using the SMTPNOTE
command from your terminal” on page 324.
Users on TCP hosts D and E can send mail to the users on host A using addresses
in the following format:
user_id@A.domain
Where:
The users on TCP hosts D and E can send mail to users on NJE hosts B and C
using addresses in the following format:
user_id%NJEHost@A.domain
Where:
Path address
Path addresses are rewritten according to the following rules:
v If the local part of a mailbox name includes a percent sign (%) and the domain
of the mailbox is the host system, SMTP rewrites the address, treating the
portion of the local part to the right of the percent sign (%) as the real
destination host. For example, the path address:
John%yourhost@ourhost.our.edu
SMTP commands
This topic describes the SMTP commands as listed in Table 21.
Table 21. SMTP commands
Subcommand Description See
DATA Define the following “DATA command—Define the
information as data. following information as data” on
page 339
EXPN Verify if a mailbox exists on “EXPN command—Verify whether
the local host. a mailbox exists on the local host”
on page 341
HELO Identify the domain name “HELO command—Identify the
of the sending host to domain name of the sending host to
SMTP. SMTP” on page 342
HELP Get help with SMTP “HELP command—Get help with
commands. SMTP commands” on page 343
MAIL FROM Specify the sender of the “MAIL FROM command—Specify
mail. the sender of the mail” on page 344
NOOP Return a 250 OK return “NOOP command—Return a 250
code when SMTP is OK return code when SMTP is
responding. responding” on page 345
QUEU Get information about mail “QUEU command—Get information
queued at SMTP for about mail queued at SMTP for
delivery. delivery” on page 346
QUIT End an SMTP connection. “QUIT command—End an SMTP
connection” on page 348
RCPT TO Specify the recipients of the “RCPT TO command—Specify the
mail. recipients of the mail” on page 349
RSET Reset the SMTP connection “RSET command—Reset the SMTP
to the initial state. connection to the initial state” on
page 350
TICK Insert an identifier into the “TICK command—Insert an
batch SMTP response data identifier into the batch SMTP
set. response data set” on page 351
Note: If the DISALLOWCMD statement was used, the server will not support the
EXPN, HELP, QUEU,VERB and VRFY commands.
Data sets containing SMTP commands can be written to the JES spool as SYSOUT
data sets. These SYSOUT data sets contain either punch or NETDATA records.
Data sets originate from users on the same system as the SMTP address space or
from users on any system connected to the host system through an NJE network.
Format
DATA
Parameters
There are no parameters for this command.
Examples
After entering the DATA command, you receive the following message (response
code 354) when you can transmit the body of your mail:
354 Enter mail body. End new line with just a ’.’
You end transmitting the body of your mail by entering a single ASCII period (.)
on a line by itself.
Usage
v Use the DATA command after a HELO command, a MAIL FROM command,
and at least one RCPT TO command have been accepted.
v When receiving mail over a TCP connection, the ASCII period should be
followed by the ASCII <carriage return> <line feed> character sequence. If any
record in the body of the mail begins with a period, the sending SMTP program
must convert the period into a pair of periods (..). When the receiving SMTP
encounters a record that begins with two periods in the body of the mail, it
discards the leading period. This convention permits the body of mail to contain
records that would otherwise be interpreted as signaling the end of the body of
mail. These rules must be followed over both TCP and batch SMTP connections.
The SMTPNOTE command performs this period doubling on all mail spooled to
SMTP. If the body of the mail in a batch SMTP command is not explicitly ended
by a record with a single period, SMTP adds one.
After a period has been received, the SMTP connection is reset to the initial state
(the state before any sender or recipients have been specified). Additional MAIL
FROM, RCPT TO, DATA, and other commands can now be sent.
If no more mail is to be delivered, end the connection with the QUIT command.
If a QUIT command is not found at the end of a batch SMTP command data set,
it is implied.
v If SMTP runs out of local mail storage space, it sends a reply with a 451 code. If
the length of the body of the mail exceeds MAXMAILBYTES (defined in SMTP
configuration data sets to be 512KB), SMTP sends a reply with a 552 code. For
more information about MAXMAILBYTES, see the z/OS Communications Server:
IP Configuration Reference.
v When mail arrives over a batch SMTP connection from a Remote Spooling
Communications Subsystem (RSCS) network host, and 822 header rewriting is
enabled (with the REWRITE822HEADER configuration option), then header
Format
EXPN mailbox
Parameters
mailbox
Specifies a user-defined identifier for a mailbox. This name can specify a single
mailbox or a mailing list.
Examples
Verify whether mike is a mailbox on host abc.com:
SMTP client: EXPN mike
SMTP server: 250 mike@abc.com
The hyphen (-) as the fourth character of a response indicates that the response is
continued on the next line.
Usage
v The EXPN command operates exactly the same as the VRFY command.
v The EXPN command can verify the existence of one or more mailboxes on the
system. The mailboxes are defined by configuration statements in the
SMTP.SMTP.CONFIG data set.
v The MVS SMTP server verifies only TSO user IDs if RACF is installed on the
local system. TSO user IDs that are verified as valid are accepted with a reply
code of 250. If RACF is not installed, any character string up to eight characters
is accepted with a reply code of 250.
Format
HELO domain_name
Parameters
domain_name
Specifies the domain name of the sending host.
Usage
v The HELO command is sent once before a MAIL FROM command.
v If domain_name is not known, you can send messages, but the message never
heard of you is returned. This message indicates that the HELO command is
accepted, but that the host name could not be resolved either through the name
server or through the host tables.
v HELO commands received over a TCP connection that has a domain_name IP
address that does not match the IP address of the ForeignSocket field of the
connection information record are accepted. However, the reply text indicates
the mismatch. HELO commands received over a batch SMTP connection with a
domain_name that does not match the host name of the origination point of the
spool data set are accepted, but the reply text indicates the mismatch.
Format
HELP
command_name
Parameters
command_name
Indicates any of the SMTP commands.
Format
MAIL FROM : < sender_path_address >
Parameters
sender_path_address
Specifies the full path address of the sender of the mail.
Note: The angle brackets (< >) surrounding the sender_path_address in the syntax
diagram are required.
Usage
v The MAIL FROM command is used once after a HELO command.
v If the host system has never heard of the sender host, a positive reply is sent,
but a message is logged in the SMTP console.
Format
NOOP
Parameters
There are no parameters for this command.
Format
QUEU
DATE
Parameters
DATE
Causes information about the age of the mail to be returned. The default is to
not return age information.
Usage
QUEU returns a multiline reply with information about mail queued at SMTP for
delivery. The following information is returned about mail:
Spool Queue Contains mail that is destined for recipients on the local MVS
system, or for recipients on an NJE system attached to the local
MVS system. This queue is generally empty, because SMTP can
deliver this mail quickly by spooling it to the local recipient or to
the NJE address space for delivery to an NJE network recipient.
Active Indicates that if SMTP is currently transmitting to a TCP network
destination, all the mail queued for that destination is shown to be
active.
Queued All mail that arrives over a batch SMTP connection, and mail from
TCP connections that is to be forwarded to another TCP network
destination through source routing, is placed on the queued list. As
soon as SMTP receives resources from the TCPIP address space,
mail that is queued is promoted to active.
Retry Queue Mail is placed here after SMTP tries to transmit mail to each of the
TCP network hosts, but was unable to either open a connection or
complete delivery over the connection. After the number of
minutes specified by RETRYINT, mail is promoted from the retry
queue to the QUEUED state. For more information about the
RETRYINT variable, see the z/OS Communications Server: IP
Configuration Reference.
Undeliverable Queue
Mail is placed here if SMTP cannot deliver mail to a local MVS
recipient, or to a recipient on the NJE network attached to the local
MVS system, because spool space on the local MVS system is full.
After spool space has been increased and SMTP has been restarted,
delivery is attempted again.
Resolution Queues
SMTP uses the following queues for processing queries to the
name server. If the SMTP server is configured to use the site tables
rather than the name server, these queues are not used.
Format
QUIT
Parameters
There are no parameters for this command.
Format
RCPT TO : < recipient_path_address >
Parameters
recipient_path_address
Specifies the full path address of the mail recipient.
Note: The angle brackets (< >) surrounding recipient_path_address in the syntax
diagram are required.
Usage
v There is a limit on the number of RCPT TO commands that can be processed
successfully on a single note. If you have more than 2000 RCPT commands you
will receive a failure reply code
552 Too many recipients
. In this situation an abend B37 still might occur if no more space is available on
the volume or if the volume table of contents (VTOC) is full.
v You can use the RCPT TO command only after a MAIL FROM command has
been issued.
v If the host system has never heard of the recipient host, the RCPT TO command
receives a negative reply.
v If a name server is used for domain name resolution, MX records are used to
resolve the recipient IP address before trying A records.
Context
For more information about MX and A records, see the z/OS Communications Server:
IP Configuration Guide.
Format
RSET
Parameters
There are no parameters for this command.
Format
TICK identifier
Parameters
identifier
Specifies a string used to identify the origin of batch SMTP responses.
Usage
The TICK command has no effect when it is issued over a TCP connection to
SMTP.
Format
OFF
VERB
ON
Parameters
ON
Enables verbose mode. When enabled, the batch SMTP commands and
associated replies are recorded in the batch SMTP response data set. Also, the
batch SMTP response data set is sent back to the origination point of the batch
SMTP command data set.
To avoid receiving spool errors, ensure that the origination point is a valid JES
user and node on the SMTP sending system. The origination point information
is taken from the TSO transmit (XMIT) command headers.
OFF
Disables verbose mode. When disabled, only the replies (not the commands)
are recorded in the batch SMTP response data set. This is the default.
Usage
The VERB command has no effect when issued over a TCP connection to SMTP.
Format
VRFY mailbox
Parameters
mailbox
Specifies a user-defined identifier for a mailbox. This name can specify a single
mailbox or a mailing list.
Examples
Verify whether mike is a mailbox on host abc.com:
SMTP client: VRFY mike
SMTP server: 250 mike@abc.com
The hyphen (-) as the fourth character of a response indicates that the response is
continued on the next line.
Usage
v The VRFY command operates exactly the same as the EXPN command.
v The VRFY command can verify the existence of one or more mailboxes on the
system. The mailboxes are defined by configuration statements in the
SMTP.SMTP.CONFIG data set.
v The MVS SMTP server verifies only TSO user IDs if RACF is installed on the
local system. TSO user IDs that are verified as valid are accepted with a reply
code of 250. If RACF is not installed, any character string up to eight characters
is accepted with a reply code of 250.
If verbose mode is enabled for a batch SMTP connection, SMTP returns the batch
SMTP response data set to the origination point of the spool data set. The
origination point is determined from the NETDATA header if the data set arrives
in NETDATA format, or the MAIL FROM command if the data set arrives in
punch format. If the batch SMTP connection is not in verbose mode, the batch
SMTP response data set is not returned to the point of origin, and is discarded.
| All SMTP commands and data that arrive over TCP or batch SMTP connections are
| subject to the restrictions imposed by constants that are defined in the SMTPGLOB
| object. A reference copy of this object is included in the SEZACMAC library; the
| object lists constant value declarations that are used by SMTP.
Note: If an incoming note has data lines between 251 and 1024 characters long,
these notes are not processed by the TSO RECEIVE command like
conventional notes. The recipient user is prompted to enter a new data set
name for the RECEIVE command to temporarily store the note text. When
the prompt has been responded to, the text is presented to the user along
with any other notes that are to be processed.
v Path addresses must not exceed the MaxPathLength value (256 characters).
v Domain names must not exceed the MaxDomainName value (256 characters).
The limit on the number of RCPT commands in a single SMTP job is 2000. If you
have more than 2000 RCPT commands, the excessive RCPT commands receive a
failure reply code 552 Too many recipients. Abend B37 can still occur for either of
the following reasons:
v No more space is available on volume.
v The volume table of contents (VTOC) is full.
Note: The date header must contain the time and the correct time zone. If the time
zone is not present, then the time the e-mail is received on the remote side
defaults to a time zone of GMT. See RFC 822 for the required syntax of this
information.
SMTP rewrites the From: line to reflect that the mail has been transferred from an
NJE network (in this case, BITNET) to a TCP network. The TCP network recipients
receive:
From: carol <CAROL%YOURMVS.
BITNET@ourhost.our.edu>
Note: JES spool files created by TSO transmit will retain trailing blanks. JES spool
files created by IEGNEGER and other utilities will have the trailing blanks
truncated.
Use the TSO transmit (XMIT) command to spool a batch SMTP command
sequential data set to SMTP. After you create the batch SMTP command sequential
data set, use the following command to spool the data set to SMTP:
XMIT jesnode-name.smtp DA(batsmtp.text)
Where:
jesnode
The JES nodename or hostname.
smtp Is the SMTP address space name. This is the default.
batsmtp.text
Is the batch SMTP commands data set.
Note: If sending a member of a partitioned data set (PDS) using the TSO transmit
command, the member must be converted to a SEQuential file. Use the SEQ
option on the TSO transmit (XMIT) command to accomplish this as shown
in the following example.
XMIT jesnod-name.smtp DA(pds(member)) SEQ
Where pds is the name of the partitioned data set and member is the name of
the member to be sent to SMTP.
To code the batch SMTP commands as inline input for SYSUT1 and SYSUT2, create
the following JCL using the IEBGENER utility on the TSO/ISPF application.
Note: The date header must contain the time and the correct time zone. If the time
zone is not present, then the time the e-mail is received on the remote side
defaults to a time zone of GMT. See RFC 822 for the required syntax of this
information.
//BATSMTP JOB (userid,nn),MSGCLASS=B,PRTY=12,MSGLEVEL=(2,1)
//IEBGENER EXEC PGM=IEBGENER
//SYSIN DD DUMMY
//SYSUT1 DD *
HELO YOURMVS
MAIL FROM:<CAROL@YOURMVS>
RCPT TO:<msgs@rsch.our.edu>
RCPT TO:<alice@ai.our.edu>
DATA
Date: Thur, 26 Mar 92 21:48:57 EST
From: Carol <CAROL@YOURMVS>
To: <msgs@rsch.your.edu>
Cc: <alice@ai.your.edu> Subject: update
The blocksize limit for files placed on the JES spool is 32760. If necessary, code the
DCB attributes on the SYSUT2 DD statement. Do not place spanning record files
on the JES spool for SMTP to pick up, because SMTP does not support these files.
The following shows how to code the DCB attributes:
//SYSUT2 DD SYSOUT=(B,SMTP),DCB=(LRECL=133,BLKSIZE=27930),FREE=CLOSE
Both SBCS and DBCS translation tables are required for the transmission of DBCS
mail, as the mail can contain mixed-mode strings. A mixed-mode string contains
both SBCS and DBCS data, delimited by shift-out and shift-in characters.
DBCS conversion is performed only on outgoing and incoming mail to and from
other hosts. Mail spooled to SMTP by SMTPNOTE for the local host is delivered
directly, without any DBCS code conversion.
You can also find more information about sendmail on Web site
http://www.sendmail.org.For the features added after version 8.8.7, see SENDMAIL
INSTALLATION AND OPERATION GUIDE, that can be found on Web site
http://www.sendmail.org/~ca/email/doc8.12/op.html.
Purpose
Use the sendmail command to send the contents of a file.
Format
sendmail
user_name command_line_switch
Parameters
user_name
The user_name of the person you want to receive the mail.
command_line_switch
See the z/OS Communications Server: IP System Administrator’s Commands for
information about sendmail command line arguments or switches.
Examples
To test run sendmail by hand, complete the following steps:
1. Create a file named sendstuff with the following contents:
This is a one line message.
2. Mail this file to yourself with the following command line, where you is your
login name:
sendmail you <sendstuff
When you run sendmail, any command-line arguments that do not begin with a
hyphen (-) are considered to be the names of the people to whom you are sending
the mail message.
Note: The full path name might differ on your system. If so, simply specify the
full sendmail path name as it is configured on your system.
The <sendstuff sequence causes the contents of the file that you have created
(sendstuff) to be redirected into the sendmail program. The sendmail program treats
everything it reads from its standard input (up to the end of the file) as the mail
message to transmit.
Results
There are several ways to view the message that you just sent, depending on how
your system is configured. You can type MAIL to view your mail, or use the mh
package and type INC to receive and SHOW to view your mail. After viewing
your mail, save the mail message to a file. The file will look something like this:
This file begins with nine lines of text that were not in your original message.
Those lines were added by sendmail and your local delivery program and are
called the header.
The last line of the file is the original line from your sendstuff file. It is separated
from the header by one blank line. The body of a mail message comes after the
header and consists of everything that follows the first blank line.
Ordinarily, when you send mail with your MAILUSERAGENT (MUA), the MUA
adds a header and feeds both the header and the body to sendmail. This time,
however, you ran sendmail directly and supplied only a body; the header was
added by sendmail.
This topic describes the remote printing commands listed in Table 22.
Note: Although this information describes the commands and parameters that are
valid for the MVS LPR client, you might not get the same results from
non-MVS servers, because those servers might not support the same
commands and parameters.
Table 22. Remote printing commands
Command Description See
LPQ Request a list of the printer “LPQ command—Request a list of the printer
queue on a remote printer. queue on a remote printer” on page 364
LPR Print to a remote printer. “LPR command—Print to a remote printer”
on page 366
LPRM Remove a job from the “LPRM command—Remove a job from the
printer queue on a remote printer queue on a remote host” on page 379
host.
LPRSET Set the default printer and “LPRSET command—Set the default printer
host name. and host name” on page 381
Purpose
Use the LPQ command to request a list of the printer queue on a remote printer
from the LPD server controlling that printer.
Notes:
1. Do not use the forward slash character (/) in any parameter value for this
command.
2. The TSO LPQ command uses the Pascal socket API, so VMCF must be started
for the command to be successful. If VMCF is not started, an ABEND0D6 can
occur.
Format
LPQ
job_id ( Opt Parms 1: Opt Parms 2:
Opt Parms 1:
Opt Parms 2:
Parameters
job_id
Specifies either a user ID (this cannot start with a digit), or a job number in the
remote printer queue. If you do not specify job_id with the LPQ command, all
the jobs in the remote printer queue are listed.
Examples
v Query the printer lp0 on the system os2sys1 and print a short listing of the jobs
that are queued for the lp0 printer:
LPQ (PRINTER lp0 HOST os2sys1
v If the LPRSET command was previously issued (LPRSET lp0@os2sys1), using the
following LPQ command has the same effect as issuing the command in the
previous example.
LPQ
v Get a long listing of the jobs queued, including the name of the host that created
the jobs:
LPQ (PRINTER lp0 HOST os2sys1 ALL
v List the jobs for a user named smith:
LPQ smith (PRINTER lp0 HOST os2sys1
v Get information only about job 123:
LPQ 123 (PRINTER lp0 HOST os2sys1
Usage
v If the printer or host name are not specified in the LPQ command, the last
LASTING.GLOBALV variables for PRINTER and PRTHOST in the
user_id.LASTING.GLOBALV data set are used as the defaults. You can specify
these variables with the LPRSET command. You can use these variables to set up
a default printer and host to be used if you do not specify a printer or host.
v User names in a query are case-sensitive. For example, smith and SMITH are not
the same names. Also for example, on UNIX systems, lp0 and LP0 can refer to
different printers.
v Some systems do not answer with the job information when you use a job
number for a job that was not produced by the querying system.
v You would not normally use the LPQ command to query an MVS system,
because the LPD queue on MVS processes so quickly.
Purpose
Use the LPR command to print to a remote printer.
Notes:
1. Do not use the forward slash character (/) in any parameter value for this
command.
2. The TSO LPR command uses the Pascal socket API, so VMCF must be started
for the command to be successful. If VMCF is not started, an ABEND0D6 can
occur.
Format
LPR data_set_name
( Optional parameters
Optional parameters:
COpies copies
EOFlf
NOEOFlf
Euckanji
Filter filter
HAngeul
HEader
NOHeader
IBmkanji
Indent number
JIS78kj
ASCII
JISROMAN
JIS83kj
ASCII
JISROMAN
JNum number
Job jobname
Ksc5601
LAndscape
LANDNOcz
LATEconn
LNcz
55
LInecount count
NOLincount
Mail
NAme name
POstscript
NOPostscript
Printer name
filter:
f
l
p
r
jobname:
DEST
FOR
FORM
IDENTIFIER
LINECOUNT
OTHERS
PASS
PRIORITY
Parameters
data_set_name
Specifies the name of the data set to be printed. This cannot be the name of a
z/OS UNIX file.
AT host
Specifies the name or IPv4 IP address of the printer host machine. If host is a
name, it must resolve to an IPv4 address. Host is a synonym for this option.
BIG5
Converts data from Traditional Chinese host DBCS to Big-5 DBCS when
transferring data to a remote system. LPR loads the BIG5 DBCS translation
table from TCPCHBIN binary table data set.
Note: The MVS LPD server always converts data sets in ASCII to EBCDIC,
and there is no option to disable this conversion.
BUrst
Causes a burst (banner) page to be printed on the remote printer. This is the
default.
NOBUrst
Prevents a burst (banner) page from being printed on the remote printer.
CC
Causes the remote system to interpret the first character of each line as carriage
control.
Records containing control characters that are not valid are deleted. If all
records in the file are deleted, LPR processes the empty file.
CC is the default if the record format is FA, FBA, FBM, FM, VA, VBA, VBM, or
VM. The characters used to specify these record formats have the following
meanings:
NOCc
Prevents the remote system from interpreting the first character of each line as
an ASA carriage control.
CFfirst
Specifies that LPR will send the ControlFile describing the data before it sends
the DataFile that contains the data. This option enables some LPD servers to
print larger jobs since the data can be printed as it is received.
Specify this option when small jobs print, but large jobs do not.
Note: Even when this option is specified, the print job might still be too
complex to print.
CLass class
Specifies the class name to the remote system. The class name is printed on the
banner pages. The default is the sending host name.
To override the SYSOUT CLASS of a job, the CLASS value must be only a
single alphanumeric character . For example, CLASS c.
COpies copies
Specifies the number of copies to be printed. The default is one copy.
EOFlf
Causes an ASCII line feed after the last line of data of a file formatted by ANSI
carriage control. Since ANSI carriage control positions the paper before the line
Note: The filter values must also be defined in the SERVICE statement of the
configuration data set for the MVS LPD server. See the z/OS
Communications Server: IP Configuration Reference for more information on
the LPD server configuration data set.
In addition to the following list of filter codes, there are filters supported by
other servers described in RFC 1179. [For a list of Requests for Comments
(RFCs), see Appendix D, “Related protocol specifications,” on page 449.]
When using the MVS LPD server to print files with filter code r, the
PAGESIZE parameter on the SERVICE statement for the printer you
are printing to also affects pagination.
HAngeul
Causes the data to be converted from EBCDIC DBCS to Hangeul ASCII DBCS
when it is sent to the remote system. LPR loads the HANGEUL DBCS
translation table from the TCPHGBIN binary translate table data set.
HEader
Causes a page header to be inserted by the client at the top of every printed
page if the NOCc and NOBInary options are in effect. To cause the server to
insert page headers, use p as the value of filter and specify the NOHeader
option.
NOHeader
Prevents the client from inserting page headers.
IBmkanji
Causes the data to be sent without translation as IBM (EBCDIC) kanji. This
parameter performs the same function as the BINary parameter.
Indent number
Specifies the number of columns the remote system indents the output when f
or p is specified as the value of filter.
JIS78kj ASCII
Causes the data to be converted from EBCDIC DBCS to JIS 1978 kanji ASCII
DBCS, using the ASCII shift-in escape sequence ESC ( B, when it is sent to the
remote system. LPR loads the JIS78KJ DBCS translation table from the
TCPKJBIN binary translate table data set.
JIS78kj JISROMAN
Causes the data to be converted from EBCDIC DBCS to JIS 1978 kanji ASCII
DBCS, using the JISROMAN shift-in escape sequence ESC ( J, when it is sent
to the remote system. LPR loads the JIS78KJ DBCS translation table from the
TCPKJBIN binary translate table data set.
JIS83kj ASCII
Causes the data to be converted from EBCDIC DBCS to JIS 1983 kanji ASCII
DBCS, using the ASCII shift-in escape sequence ESC ( B, when it is sent to the
remote system. LPR loads the JIS83KJ DBCS translation table from the
TCPKJBIN binary translate table data set.
JIS83kj JISROMAN
Causes the data to be converted from EBCDIC DBCS to JIS 1983 kanji ASCII
DBCS, using the JISROMAN shift-in escape sequence ESC ( J, when it is sent
to the remote system. LPR loads the JIS83KJ DBCS translation table from the
TCPKJBIN binary translate table data set.
JNum number
Specifies a specific job number for the print request, where number is a unique,
3-digit number in the range 000–999. This job number is used by LPR to name
the temporary data and control files, such as:
The JNum parameter is not valid from NPF; do not specify JNum in the NPF
OPTIONS file.
If JNum is not specified for LPR, the three-digit number is randomly generated
by LPR.
Job jobname
Specifies the job name to the remote system. The default name is the full data
set name. The job name is printed on the banner pages.
The following parameters are available with the Job parameter and are entered
as PARAMETER=value. When you use these parameters, you must separate them
from Job or jobname by a blank and from other options by a comma and no
blank. For example,
Job PASS=password,FOR=userid
DEST Sets the destination node. The default is the node on which the
LPR client is running.
FOR Specifies a user ID other than the sending user ID for which
the output is to be spooled. The default is the sender’s ID.
FORM Identifies the form on which the data is printed. This is the
equivalent of the form-name subparameter in the MVS
SYSOUT parameter on the DD card. Therefore, the form name
specified can be 1 through 4 alphanumeric or national ($, #, @)
characters.
IDENTIFIER Sets the destination ID. The default is SYSTEM.
LINECOUNT Specifies a numeric field indicating the number of lines on a
page. This option overrides the PAGESIZE parameter of LPD.
OTHERS Causes all subsequent options to be ignored. This option is
ignored by the MVS LPD server.
PASS Specifies the password. The default is no password, which
causes the job to fail if the RACF option is specified for the
service.
PRIORITY Specifies the transmission priority. The default is 50.
Ksc5601
Causes the data to be converted from EBCDIC DBCS to Korean Standard Code
KSC-5601 ASCII DBCS when it is sent to the remote system. LPR loads the
KSC5601 DBCS translation table from the TCPHGBIN binary translate table
data set.
LAndscape
Converts a non-PostScript data set to a PostScript® data set for printing with
print lines parallel to the long edge of the paper. If the remote printer can
process PostScript output, the data set is printed in landscape format (rotated
90 degrees). Some nonprinting EBCDIC characters below X'3F' are changed to
blanks.
Note: An ASCII cntl-Z X'1A' is sent after the data. If this dos-EOF character
causes problems, use the LANDNOcz option instead.
LANDNOcz/LNcz
Converts a non-PostScript data set to a PostScript data set for printing with
Note: Normally, you should use the LAndscape option, unless the dos-EOF
character (X'1A') sent after the file causes problems. LN and LNcz are
abbreviations for LANDNOcz.
LATEconn
Causes LPR to process the input data file before making any TCPIP connection
with the printer. When this option is not specified, the TCPIP connection is
made before the data file processing begins. This option can be specified when
the initial processing of very large files causes the connection with a printer to
be dropped because of a timeout.
LInecount count
Determines the number of lines to be printed before a new heading is printed.
This option is meaningful only for a data set that does not have the CC option
specified either explicitly or by default.
The valid range for LInecount is 0 to the Pascal integer MAX number 2 147 483
647. The default value is 55. To suppress printing a header before each new
page, specify LInecount 0. Specifying LInecount 0 has the same effect as
specifying the NOLinecount option.
NOLinecount
Prevents a header being printed before each new page. Specifying
NOLinecount has the same effect as specifying LInecount 0.
Mail
Causes mail to be sent to the user when the printing operation ends (for those
servers that support this).
NAme name
Specifies the job information to be provided by the remote system in response
to a query. Only the name or files portion of the query is displayed. This option
is not honored by all remote printing servers.
POstscript
Inserts the header required by some systems to recognize a PostScript data set.
NOPostscript
Prevents a PostScript data set from being recognized as a PostScript data set.
Printer name
Specifies the name of the printer on which you want the data set printed. The
printer name is case sensitive.
Host host
Specifies the name or IPv4 IP address of the printer host machine. If host is a
name, it must resolve to an IPv4 address. AT is a synonym for this option.
SChinese
Converts data from Simplified Chinese host DBCS to Simplified Chinese PC
DBCS when transferring data to a remote system. LPR loads the SCHINESE
DBCS translation table from TCPSCBIN binary table data set.
SJiskanji
Causes the data to be converted from EBCDIC DBCS to Shift JIS kanji ASCII
DBCS when it is sent to the remote system. LPR loads the SJISKANJI DBCS
translation table from the TCPKJBIN binary translate table data set.
IBM Print Services for AIX (S544-3878-03) contains detailed descriptions of the
-o options for PSF/6000.
Examples
v Print the data set TEST.LISTING on a printer named lp0 on the system mvs1:
LPR TEST.LISTING (PRINTER lp0 HOST mvs1
v If TEST.LISTING has a record format that contains carriage control such as VBA,
the first character of each line is interpreted as carriage control. To prevent the
first character of each line from being interpreted as carriage control, use the
following command:
LPR TEST.LISTING (PRINTER lp0 HOST mvs1 NOCC
v If this LPRSET command was issued:
LPRSET lp0@mvs1
the following LPR command would also print the data set on printer LP0 on the
host MVS1 and prevent the first character of each line from being interpreted as
carriage control:
LPR TEST.LISTING (NOCC
v Print the data set TEST.LISTING in landscape mode:
LPR TEST.LISTING (LANDSCAPE
The following example shows the PostScript attributes used in the LAndscape
option:
614 25 translate 90 rotate .88 .76 scale
/n 1 def
/fs 10 def
/ls 11.2 def
/ld ls 2 mul def
/lt ls 3 mul def
/t 740 fs sub def
/y t def /ff t def /os 20 def
Usage
v When sending a print job to a printer that has RACF in its definition in the
LPD.CONFIG data set, you must specify the password. If it is for a different
user ID, you must specify that password and user ID as follows:
Job PASS=password,FOR=userid
v If the printer or host name are not specified in the LPR command, the last
LASTING.GLOBALV variables for PRINTER and PRTHOST in the
user_id.LASTING.GLOBALV data set are used as the defaults. You can specify
these variables with the LPRSET command.
v LPR normally issues messages only if there is an error. If you want to track the
progress of the command, use the TYpe or TRACe parameter.
v You can use the LPR command to send PostScript data sets to a printer that can
print documents in that language. LPR checks that no incompatible options were
given, if it is a PostScript data set. You can override this check, if you want to
print a PostScript program with the NOPostscript option. UNIX systems
examine the first few characters of a data set (looking for %!) to determine if a
data set is a PostScript data set. If you have PostScript data sets that do not
contain the characters %!, use the POstscript parameter to add them.
v Carriage control is interpreted line by line. A data set can mix ASA and machine
carriage control. Interpretation is done by converting the controls to the
appropriate ASCII sequences, before the data set is sent to the remote system.
Lines that have incorrect carriage control are not printed.
v When a data set is printed without carriage control, LPR adds a heading line
that shows the name of the data set, the title of the system on which the LPR
command is running, and a page number. You can specify the number of lines to
be printed (excluding the 3 heading lines) with the LInecount parameter.
v When you specify a filter code, LPR ignores CC, HEader, NOCc, NOHeader, and
TOpmargin. When a filter code of f, l, p, or r is specified, LPR stops paginating
the data set it is printing. Instead, it sends the data in the data set as plain lines.
The following list provides a description of these filter codes:
Chapter 8. Using remote printing 377
Filter code Description
f Print as a sequence of lines.
l Print, passing through all control characters.
p Print with pagination.
r Print, interpreting the first column as FORTRAN carriage control
characters. The supported IBM FORTRAN carriage control
characters are 1, 0, +, and −.
When using the MVS LPD server to print files with filter code r, the PAGESIZE
parameter on the SERVICE statement for that printer is ignored in the LPD
CONFIG file. The PAGESIZE parameter defaults to 60 if it is not specified. To
prevent unwanted page ejects, change the value specified on the PAGESIZE
parameter to a number greater than the actual number of lines on the pages
being printed. For example, you can specify 100 000 for the PAGESIZE
parameter.
When you specify a filter code of c, d, g, n, t, or v, LPR transmits the data as a
byte stream (as though you specified the BINary option).
Purpose
Use the LPRM command to remove a job from the printer queue on a remote host.
Notes:
1. Do not use the forward slash character (/) in any parameter value for this
command.
2. The TSO LPRM command uses the Pascal socket API, so VMCF must be
started for the command to be successful. If VMCF is not started, an
ABEND0D6 can occur.
Format
LPRM
job_id Opt Parms 1: Opt Parms 2:
Opt Parms 1:
(
Printer name Host host
AT host
Opt Parms 2:
Parameters
job_id
Specifies either a user ID (this must not start with a digit), or a job number in
the remote printer queue. If you do not specify job_id with the LPRM
command, your currently active job is removed.
Printer name
Specifies the name of the printer associated with the job.
Host host
Specifies the name or IPv4 IP address of the printer host. If host is a name, it
must resolve to an IPv4 address. AT is accepted as a synonym for HOST.
AT host
Specifies the name or IPv4 IP address of the printer host. If host is a name, it
must resolve to an IPv4 address. Host is a synonym for this option.
TRace
Turns on the trace details for interaction with the remote printer. TRace always
overrides TYpe because TYpe is a subset of TRace.
TYpe
Displays the progress of the command.
Examples
v Cancel job number 123 on the printer lp0 on the local system os2sys1:
LPRM 123 (PRINTER lp0 HOST os2sys1
LPRM 123 (PRINTER lp0 AT os2sys1
Usage
v If the printer and host name are not specified in the LPRM command, the last
LASTING.GLOBALV variables for PRINTER and PRTHOST in the
user_id.LASTING.GLOBALV data set are used as the defaults. You can set these
variables with the LPRSET command. You can use these variables to set up a
default printer, which is used if you do not specify a printer.
v Removing the currently active job can depend on the number of jobs currently
printing. If you have two jobs printing, and you use the LPRM command
without the job_id parameter, the first job might finish, but you could
inadvertently remove the second job instead.
Purpose
Use the LPRSET command to set the default printer and host name. The printer
and host name can also be included in the line printer commands (LPR, LPQ, and
LPRM).
Notes:
1. Do not use the forward slash character (/) in any parameter value for this
command.
2. The TSO LPRSET command uses the Pascal socket API, so VMCF must be
started for the command to be successful. If VMCF is not started, an
ABEND0D6 can occur.
Format
LPRSET printer@host
Optional Parameters:
Optional Parameters:
(
Query TRace Version
TYpe
Parameters
printer@host
Specifies the name of the printer and host to be used. If host is a name, it must
resolve to an IPv4 address.
Query
Displays the current settings for the default printer and host.
TRace
Turns on the trace details for the recording of the printer and remote host
name. TRace always overrides TYpe because TYpe is a subset of TRace.
TYpe
Displays the progress of the command.
Version
Displays the version of the program.
Examples
v Set the default printer and host as the printer lp0 on the local system mvs1:
LPRSET lp0@mvs1
v Display the current version of LPRSET:
LPRSET (VERSION
v Display the current settings:
LPRSET (QUERY
Purpose
The TSO SMSG command provides an interactive interface to the LPD server to:
v Turn on and off diagnostics tracing
v Query the work queue currently being used by LPD server
These commands are privileged so the commands are accepted only from users
specified in the OBEY statement in the LPD server configuration data set. For more
information regarding this statement, see the z/OS Communications Server: IP
Configuration Reference. Responses to the SMSG commands are sent to the
SYSPRINT file that is associated with the LPD started procedure job.
Format
SMSG LPD TRACE ON
OFF
PRINT WORK
Parameters
TRACE ON
Enables tracing in the LPD server.
TRACE OFF
Disables tracing in the LPD server.
PRINT WORK
Prints the jobs in the work queue for LPD.
Examples
The following example shows the output from the SMSG LPD PRINT WORK
command which is sent to the SYSPRINT file.
Note: Response to the SMSG LPD does not go to the screen for the user. The user
must look in the SYSPRINT file associated with LPD job to see the response.
16:59:29 EZB0786I Command received "PRINT WORK".
16:59:29 EZB0731I Work Queue start
16:59:29 EZB0732I <job number> <job state>
16:59:29 EZB0733I Work Queue end
Overview of GDDMXD/MVS
GDDMXD/MVS is an interface that allows graphics from the IBM Graphical Data
Display Manager/MVS to be displayed on workstations that support the
X Window System. When GDDMXD/MVS is installed and activated, the data
stream created by the GDDM® application is translated to the X Window System
protocol and transmitted by TCP/IP to the X Window System server for the
display. If GDDMXD/MVS is installed and not activated, or has been made
inactive, the GDDM application transmits data to its supported display device as if
GDDMXD/MVS were not present.
Executable code
The following member names contain the described executable code or sample:
Using GDDMXD/MVS
Before GDDM data can be sent to an X Window System display, activate
GDDMXD/MVS by invoking the GDDMXD CLIST. Make sure that you have
already copied the GDDMXD CLIST to your system CLIST data set. If you have
not, see the z/OS Communications Server: IP Configuration Reference for instructions.
Note: If you do not want to run GDDM applications through the X Window
System, do not enable GDDMXD/MVS.
To invoke the GDDMXD CLIST, use the GDDMXD command in the format
described in “GDDMXD command—Invoke the GDDMXD CLIST” on page 388.
Format
GDDMXD ON
OFF
Parameters
ON
Enables GDDMXD/MVS. GDDM output is sent to the X Window System
display. The system responds with GDDMXD/MVS active.
OFF
Disables GDDMXD/MVS. The system erases the data set that was created
when GDDMXD/MVS was activated and responds with GDDMXD/MVS inactive.
Format
internet_address :target_server
.target_screen
Parameters
internet_address
Specifies the IPv4 IP address of the host machine on which the X Window
System server is running.
:target_server
Specifies the number of the display server on the host machine.
.target_screen
Specifies the screen to be used on the target_server.
Examples
Examples of the contents of the user_id.XWINDOWS.DISPLAY data set.
v charm.cambridg.ibm.com:0.0
v 129.42.3.109:0.0
For graphics presentation space sizes other than the default size (720 pixels by 512
pixels), bit-mapped data, such as symbol sets and images, is expanded or
compressed to meet the scaling requirements of the specified graphics presentation
space.
You can expand bit-mapped data by duplicating rows and columns of the data.
The resulting view can differ slightly from the default-size view. You can compress
single-plane bit-mapped data by combining rows and columns of the data with a
logical OR function. Because this might not yield acceptable results when a black
on white image is viewed, the Compr option is provided to specify that a logical
AND function be used to compress the data. See “Compr option—Control the
technique used to compress bit-mapped data” on page 394 for more information
about using this option. You can compress multiplane bit-mapped data by
eliminating certain rows and columns. Data compression produces a view that is
different from the default-size view.
User-specified options
The user-specified options for GDDMXD/MVS are entries in a data set called
user_id.X.DEFAULTS. The user_id.X.DEFAULTS data set is searched during
initialization of GDDMXD/MVS.
Format
gddmx*ANFontn: fontname
Parameters
n Specifies presentation space size.
fontname
Specifies the name of the X Window System font.
Examples
The following are examples of ANFontn options.
gddmx*ANFont1: Rom8
gddmx*ANFont3: Rom14
Usage
Graphics mode 1 and 2 characters in the graphics presentation space are not
affected by this option. The value of n is in the range 1–4 and defines the X
Window System font for each of the four sizes of presentation space supported by
GDDMXD. You can specify the ANFontn option for any, all, or none of the four
values for n. The X Window System fonts specified should be fixed-space fonts
that have characters that fit into the character box size required by each of the four
presentation space sizes.
If you select a font that has characters that are larger than the character box size,
the characters might overlap when displayed.
Format
Y
gddmx*CMap:
N
Parameters
Y Directs GDDMXD/MVS to load the default color map. This is the default.
N Directs GDDMXD/MVS to bypass loading the default color map.
Usage
During initialization, GDDMXD/MVS issues the X Window System call,
XInstallColormap, to load the default color map. If the CMap option is specified as
N, the XInstallColormap call is not made. This option is for X Window System
servers that load their own color map and do not want the clients to load any
other color map.
Format
O
gddmx*Compr:
A
Parameters
O or o
Specifies that a logical OR function must be used when compressing
bit-mapped data. This is the default.
A or a
Specifies that a logical AND function must be used when compressing
bit-mapped data.
Format
gddmx*Enter: keysym_name
Parameters
keysym_name
Specifies the X Window System Keysym representing the physical key. For
standard Keysyms, the XK_ prefix is not included in specifying the option.
Examples
In the following example of the Enter option, the X Window System Keysym,
XK_Return, is mapped to the Enter function.
gddmx*Enter: Return
Format
gddmx*GColornn: c
Parameters
nn:
Specifies the GDDM color entry that is mapped.
c Specifies the X Window System color that is used as the GDDM color.
Usage
Table 25 lists the GDDM colors that GDDMXD/MVS maps to the X Window
System.
Table 25. GColors
GColornn GDDM color X Window System color
GColor1 Blue Blue
GColor2 Red Red
GColor3 Magenta Magenta
GColor4 Green Green
GColor5 Turquoise Turquoise
GColor6 Yellow Yellow
GColor7 White White
GColor8 Black Black
GColor9 Dark Blue Dark Slate Blue
GColor10 Orange Orange
GColor11 Purple Plum
GColor12 Dark Green Dark Green
GColor13 Dark Turquoise Dark Turquoise
GColor14 Mustard Wheat
GColor15 Gray Gray
GColor16 Brown Brown
Examples
The following is an example of using a GColornn option to override a default
color:
gddmx*GColor3: Pink
In this example, specifying the GColor3 entry in the user_id.X.DEFAULTS data set
maps the GDDM color, magenta, to the X Window System new color of pink.
Format
gddmx*Geometry: width x height + x_offset + y_offset
Parameters
width
Specifies the initial width of the GDDMXD graphics window. The width
determines the initial size of the graphics presentation space.
height
Specifies the initial height of the GDDMXD graphics window.
x_offset
Specifies the location of the upper left corner of the window where x_offset is
the horizontal offset from the upper left corner of the display.
y_offset
Specifies the location of the upper left corner of the window where y_offset is
the vertical offset from the upper left corner of the display.
Examples
The following is an example of a Geometry option:
gddmx*Geometry: 750x600+20+20
Format
gddmx*GMCPnn: c
Parameters
nn:
Specifies the GDDM multicolor pattern.
c Specifies the color that is used with the defined GDDM multicolor pattern.
Examples
The following is an example of a GMCPnn option:
gddmx*GMCP126: MediumBlue
In this example, the color medium blue is used when multicolor pattern 126 is
specified by the GDDM application.
Format
N
gddmx*HOSTRAST:
Y
X
Parameters
N Directs GDDMXD/MVS to use the IBM 3179G as a device model. This is the
default.
Y Directs GDDMXD/MVS to use the IBM 3279 as a device model.
X Directs GDDMXD/MVS to use the IBM 3279 as a device model and expand
the pixel mapping to reduce aspect ratio distortion.
Usage
v The APL2 character set is not supported when the HostRast option is active.
v When the HostRast option is specified as Y, the GDDM application performs the
raster image processing and transmits the picture as a series of characters whose
pixel definitions have been transmitted to Programmed Symbol Sets. The picture
is mapped exactly as an IBM 3279.
v If the ratio of horizontal to vertical pixel spacing is not the same as that of an
IBM 3279, the aspect ratio can be distorted.
Format
gddmx*NewLine: keysym_name
Parameters
keysym_name
Specifies the X Window System Keysym representing the physical key. For
standard Keysyms, the XK_ prefix is not included in specifying the option.
Examples
In the following example of the NewLine option, the X Window System Keysym,
KP_Enter, is mapped to the NewLine function:
gddmx*NewLine: KP_Enter
Use the XSync option to request that the X Window System process one request at
a time.
Format
N
gddmx*XSync:
Y
Parameters
N Allows the X Window System to operate asynchronously. This is the default.
Y Directs GDDMXD/MVS to cause the X Window System to operate
synchronously.
Usage
Be aware that system performance goes down when you use XSync=Y.
Format
N
gddmx*ZWL:
Y
Parameters
N Directs GDDMXD/MVS not to use 0-width lines for all drawing. This is the
default.
Y Directs GDDMXD/MVS to use 0-width lines for all drawing.
If you cannot locate these keys on your workstation, see your workstation X
Window System documentation to determine the mapping of X Window System
key symbol definitions to the physical keys.
When the APL2 character set is active, the characters APL are displayed in the title
bar of the GDDMXD/MVS window.
In the X Window System, a key code is assigned to each key on the keyboard.
GDDMXD/MVS uses key codes in combination with modifier keys. For example,
the Shift and Alt keys determine the data that should be passed back from
GDDMXD/MVS to the X Window System application to identify the user’s
keystroke data.
A default map for the APL2 character set is provided in GDDMXD/MVS, which
corresponds to the IBM 101 Key Enhanced Keyboard. You can override this default
map by creating a data set called GDXAPLCS.MAP to define the map for your
workstation. When GDDMXD/MVS is initialized, the system searches for a data
set called GDXAPLCS.MAP. If the GDXAPLCS.MAP data set exists, the data in the
GDXAPLCS.MAP data set replaces the default mapping for all keys.
Setting up hlq.GDXAPLCS.MAP
The following steps describe how to set up the GDXAPLCS.MAP data set.
1. Invoke the program KEYCODE from the TCP/IP load module library in
SEZALOAD to determine the key codes for the keyboard keys.
When KEYCODE is executed from your workstation session to the host system,
the key code is displayed for each key pressed at the workstation. Therefore,
you can establish the association between a key and the character you want to
generate.
See Appendix B, “Mapping values for the APL2 character set,” on page 435 for
more information about the mapping values that are defined in the
GDXAPLCS.MAP data set.
2. Copy the hlq.GDXAPLCS.SAMPMAP installed with TCP/IP to
hlq.GDXAPLCS.MAP.
3. Edit GDXAPLCS.MAP to establish the association between the key codes in the
program KEYCODE and the character set and code values in Appendix B,
“Mapping values for the APL2 character set,” on page 435.
4. GDDMXD looks for the data set user_id.GDXDAPLCS.MAP when it is
initialized. If you want to use a different data set name, allocate the data set to
ddname GDXDACSM.
To use REXEC, you must have a REXEC daemon running on the remote host. The
REXEC client passes the user name, password, and command to the REXEC
daemon. The daemon provides automatic logon and user authentication,
depending on the parameters that you set.
To use RSH, you must have a RSH daemon running on the remote host. The RSH
client passes the local user name, remote user name, and command to the RSH
daemon. The remote user name can be in the form user/password when the RSH
daemon is on an MVS host. The daemon provides automatic logon and user
authentication, depending on the parameters that you set.
This information describes how to use the REXEC and RSH clients.
Purpose
Use the REXEC command to execute a command on the remote host and receive
the results on the local host.
Format
| REXEC
-? -b tab -d -n -l user_id
-s 512
foreign_host command
-p password -s port -t dataset_name
| Restriction: The REXEC parameters -b, -d, -l, -n, -p, -s, and -t are case sensitive
and must be entered in lowercase letters. The user_id and password parameters
might be case sensitive, depending on the operating system of the remote host.
Parameters
-? Displays the help message.
| -b tab
| Specifies the Tab setting. Valid values are in the range 1 - 12 and the default
| value is 1.
-d Activates debug tracing.
-n Prevents automatic logon, if the same foreign host name is defined in the
NETRC data set.
-l user_id
Specifies the user ID on the foreign host.
-p password
Specifies the password for the user ID on the foreign host.
-s port
Specifies the TCP port number of the REXEC server on the foreign host. The
default, 512, is the port number defined in /etc/services.
-t tran_table
Specifies the data set name of a translation table to be used. The search order
when the -t parameter is specified:
userid.tran_table.TCPXLBIN
hlq.tran_table.TCPXLBIN
If this data set is not found, REXEC terminates with message EZA4805I.
Examples
Use the REXEC command without using NETRC.DATA:
READY rexec -l user28 -p user28 -s 512 mvs1 lista
Usage
v If you omit the user_id, the password, or both when entering the REXEC
command, the system prompts you to supply the parameters, if the foreign host
is not specified with a user ID password in the NETRC data set.
v When you issue a command that is to be executed on the remote host, do not
place the command in quotation marks. Doing so can result in unexpected
results.
Note: There is no such restriction when using the z/OS UNIX orexec command.
v The condition code 12 is set when an REXEC batch request encounters one of
the following error conditions:
– The client cannot connect to TCP/IP.
– The host name cannot be resolved.
– The translation table cannot be loaded.
v When REXEC issues a command to a remote system and retrieves the output for
presentation to the user, it expects a line of output to be no more than 32767
bytes. A warning message is issued when the size of the output line approaches
this threshold. This condition has no effect on the job running on the remote
host.
| v The Tab setting is used exclusively by the client and is not forwarded to the
| server. The tab setting value determines the alignment of the output. If a Tab
| character is included in the output data stream, blank characters are included in
| the output up to the next Tab setting. The processing is the same whether the
| output is displayed or written to a data set.
| The hostname value that is specified after the machine keyword can include scope
| information, as described in the support for scope information in the z/OS
| Communications Server: IPv6 Network and Application Design Guide.
Note: You can omit your password in the NETRC data set. If you do, the REXEC
command prompts you for your current password.
The following is a sample of the response that is displayed as a result of using the
REXEC command and the NETRC data set.
READY rexec mvs1 lista
MVS TCP/IP REXEC CS V1R2
SYS1.HELP
GIM.SGIMCLS0
DSN230.DSNCLIST
USER.CLIST
BUILD.CLIST
SYS1.HRFCLST
USER28.RSHD5.JOB00161.D0000103.?
The command format when submitted as a batch job is the same as the command
format described in “REXEC command—Execute a command on the remote host
and receive the results on your local host” on page 406. You enter the command as
a parameter on the EXEC statement. The results of the command executed on the
remote host are stored on the local host according to how you define the
SYSPRINT DD statement. The data set characteristics should be consistent with the
output from the command you are executing at the remote host.
When you invoke the REXEC command, a check is made to see if a data set is
allocated to INPUT. If a data set is allocated, any input is read from that data set
rather than from your terminal. Similarly, a check is made to see if data set is
allocated to OUTPUT. If so, all REXEC output is written to that data set rather
than to your terminal.
The REXECD or RSH server does not support output being returned to output DD
statements other than SYSTSPRT, SYSPRINT or OUTPUT. Sometimes it is necessary
to direct the output from a REXEC or RSH batch request to an OUTPUT DD and
to include a SYSPRINT DD with SYSOUT=* specified. This is particularly true if
the REXEC or RSH command to be executed contains a slash(/).
There might be times when REXEC and RSH are being executed and the user does
not want the output to be directed to the SYSPRINT DD file. If a //OUTPUT DD
card is coded, output will be directed to it. This DD statement must be directed to
a SYSOUT or a validly defined data set. If multiple REXEC or RSH commands are
being executed in one step, then it is recommended that DISP=MOD be coded on
the //OUTPUT DD card. This will allow each command execution to be appended
to the previous output. If the //OUTPUT DD card specifies a nullfile (ie.
DSN=NULLFILE or DD DUMMY), then the //OUTPUT DD statement will not be
used. Regardless of which ddname you use for the REXEC or RSH output, a new
data set must have the DCB=(...) parameter specified on the DD card. Any data set
you use must have a logical record length (LRECL) greater than 0. If the LRECL is
equal to 0 then the data set is not used.
When using the REXECD server, the procedure specified in the TSOPROC
argument of the startup procedure must have the //SYSTSPRT DD statement
appearing before any other output DD specifications in the procedure. For
example, if the batch procedure specified was TSOPROC=TESTJOB, the following
example would be the correct specification for the batch procedure for REXECD:
//TESTJOB EXEC PGM=IKJEFT01,REGION=4M,DYNAM=30,REGION=4M
//STEPLIB DD DSN=A.LOADLIB,DISP=SHR
//SYSTSPRT DD SYSOUT=*
//SYSPRINT DD SYSOUT=*
In the following example, the TESTJOB procedure was modified to add the OUT
DD statement:
//TESTJOB EXEC PGM=IKJEFT01,REGION=4M,DYNAM=30,REGION=4M
//STEPLIB DD DSN=A.LOADLIB,DISP=SHR
//SYSTSPRT DD SYSOUT=*
//SYSPRINT DD SYSOUT=*
//OUT DD SYSOUT=*
The CLIST was also modified, as in the following example (notice that the ALLOC
FI(OUT) and the FREE FI(OUT) have been removed):
PROC 0
TIME
OPENFILE OUT OUTPUT
SET &OUT = &STR(THIS; IS THE FIRST LINE)
PUTFILE OUT
SET &OUT = &STR(THIS; IS THE SECOND LINE)
PUTFILE OUT
TIME
SET &OUT = &STR(THIS; IS THE LAST LINE)
PUTFILE OUT
CLOSFILE OUT
EXIT
Be aware that output being returned to the client from DDs other than SYSTSPRT
or SYSPRINT might have characters truncated. This behavior has been observed
only in the first line of new output files other than SYSTSPRT or SYSPRINT. If you
use DDs other than SYSTSPRT or SYSPRINT, you might want to ensure that the
first line of the output file contains a blank line, so that no data is lost.
Note: The data set containing the JCL cannot have sequence numbers.
The following example shows the use of the userid.NETRC.DATA containing the
user ID and password. The output is sent to a permanent data set for later use.
//REXEC JOB USERID,MSGLEVEL=(1,1),NOTIFY=USERID
//STP1 EXEC PGM=REXEC,REGION=512K,
// PARM=’foreign_host command’
//SYSPRINT DD DSN=USERID.REXEC.SYSPRINT,DISP=(NEW,CATLG),
// UNIT=3380,VOL=SER=MYVOL
Note: When running REXEC in batch, the user ID assigned to the job is used as
the user_id in the NETRC data set.
The following example shows the use of the NETRC DD statement in batch. The
NETRC DD statement can be used in batch to override the default
userid.NETRC.DATA or userid.NETRC files.
Note: The user ID and password are retrieved from TST.REXEC.NETRC instead of
userid.NETRC.DATA or userid.NETRC.
You can use the RSH command from TSO or as a batch job.
Format
| -s 514
RSH
-? -b tab -d -l user/password -s port
foreign_host command
Notes:
1. The parameters for the RSH command could be case sensitive, depending on
the remote host you are targeting.
| 2. The RSH command uses the MESSAGECASE setting in the TCPIP.DATA file to
| determine whether messages are issued in uppercase or mixed case characters.
Parameters
-? Lists the valid parameters for the RSH command.
| -b tab
| Specifies the Tab setting. Valid values are in the range 1 - 12. The default value
| is 1.
-d Turns on debug tracing.
-l user/password
Specifies the remote user ID and password.
You must enter the slash (/) between the user ID and password if the target
system is MVS. The character you must use can vary, depending on the target
host. For VM hosts, you should use an @ character.
-s port
Specifies the server port. The default is 514.
foreign_host
| Specifies the name or IP address of the remote host on which you are issuing
| the command. When you are using IPv6 link-local addresses, you can provide
| scope information along with the name or IP address, as described in the
| support for scope information in the z/OS Communications Server: IPv6 Network
| and Application Design Guide.
command
Specifies the command to be executed on the remote host.
SYS1.HELP
BUILD.HELP
GIM.SGIMCLS0
ISR.V3R5M0.ISRCLIB
DSN230.DSNCLIST
DSN230.NEW.DSNCLIST
DSN230.DSNAMACS
USER.CLIST
BUILD.CLIST
SYS1.HRFCLST
ISP.V3R5M0.ISPEXEC
READY
Usage
v You must enter the required parameters on the command line. The RSH
command does not prompt you for missing parameters, or enable you to use the
NETRC.DATA set.
v A condition code 12 is set when an RSH batch request encounters an error
condition in which the client cannot connect to TCP/IP or when the host name
cannot be resolved.
v When RSH issues a command to a remote system and retrieves the output for
presentation to the user, it expects a line of output to be no more than 32767
bytes. A warning message is issued when the size of the output line approaches
this threshold. This condition has no effect on the job running on the remote
host.
| v The tab setting is used exclusively by the client and is not forwarded to the
| server. The tab setting value determines the alignment of the output. If a tab
| character is included in the output data stream, blank characters are included in
| the output up to the next tab setting. The processing is the same whether the
| output is displayed or written to a data set.
The user_id.RHOSTS.DATA data set contains one or more entries. Each entry
consists of two parts, a fully qualified name of a local host and a local userid
associated with that local host. The local userid is case sensitive.
If your user ID is the same at both the local and remote hosts, use this common ID
to create RHOSTS.DATA. In this case, you do not need to include the
user_id/password parameter on the RSH command, as shown in the following
example:
rsh mvsone lista
If your user ID at the remote host is different from your user ID at the local host,
use the user ID of the remote host to create RHOSTS.DATA. In this case, you can
invoke the RSH command without the password, as follows:
rsh -l user28 mvsone lista
If you do not create the RHOSTS.DATA data set on the remote host, you must
specify both the user ID and the password with the RSH command, as shown in
the following example:
rsh -l user28/abcdef mvsone lista
The host names in the following examples are the official, fully qualified names of
local hosts from which you want to run RSH. The user IDs are the logon IDs for
those local hosts. Nicknames are not allowed.
local.host.name user_id
mvsthree.raleigh.ibm.com user30
mvsthree.raleigh.ibm.com user31
mvstfour.raleigh.ibm.com user30
| Tip: The RSH server code obtains the remote host name by resolving the remote IP
| address into a host name. If the remote host connects using a link-local address,
| then the remote host name that is generated by the resolver can have the format
| hostname%scope. Adding scope information to the appropriate RHOSTS.DATA
| remote host definitions results in a more efficient search for a matching remote
| host name. See the support for scope information in the z/OS Communications
| Server: IPv6 Network and Application Design Guide for details about including scope
| information on configured host names.
You must have the z/OS UNIX REXEC daemon (orexecd) running on the remote
host to use z/OS UNIX REXEC to run z/OS UNIX commands. The z/OS UNIX
REXEC client passes the user name, password, and command to the z/OS UNIX
You do not have to have the z/OS UNIX REXEC deamon (orexecd) running on the
remote host if you are not running z/OS UNIX commands. The z/OS UNIX
REXEC client can use any REXEC daemon (not just z/OS UNIX).
You must have the z/OS UNIX RSH daemon (orshd) running on the remote host
to use z/OS UNIX RSH to run z/OS UNIX commands. The z/OS UNIX RSH
client passes the user name, password, and command to the z/OS UNIX RSH
daemon. The daemon provides automatic logon and user authentication,
depending on the parameters that you set.
You do not have to have the z/OS UNIX RSH deamon (orshd) running on the
remote host if you are not running z/OS UNIX commands. The z/OS UNIX RSH
client can use any RSH daemon (not just z/OS UNIX).
Format
-s port
orexec
-? -d -l user_id -p password -s port
foreign_host command
-C -V
Note: Enter the orexec parameters -d, -l, -p, and -s in lowercase letters because
they are case sensitive. The user_id and password parameters can be case
sensitive, depending on the operating system of the remote host.
Parameters
-? Displays the help message.
-d Activates debug tracing.
-l user_id
Specifies the user ID on the foreign host.
| -p password
| Specifies the password for the user ID on the foreign host.
-s port
Specifies the TCP port number of the rexec server on the foreign host. The
default is the port number defined in /etc/services.
| -C Forces messages to be displayed in uppercase characters.
| -V Displays the z/OS Communications Server version and release.
foreign_host
Specifies the name or IP address of the foreign host to which you are sending
the orexec command. Specify the foreign host by its host name or IP address.
| When using IPv6 link-local addresses, scope information can be provided
| along with the name or IP address, as described in the s upport for scope
| information in the z/OS Communications Server: IPv6 Network and Application
| Design Guide.
command
Specifies the command that is sent to the foreign host. The command is
composed of one or more words. Coding is assigned after checking the
Examples
Use the orexec command to execute a command on a remote host:
orexec -l user28 -s 512 mvs1 lista
SYS1.HELP
GIM.SGIMCLS0
DSN230.DSNCLIST
USER.CLIST
BUILD.CLIST
SYS1.HRFCLST
USER28.ORSHD5.JOB00160.D0000103.?
.
Format
-s port
orsh
-? -d -l user_id/password -s port
foreign_host command
Note: Enter the orsh parameters -d, -l, and -s in lowercase letters because they are
case sensitive. The user_id/password parameter can be case sensitive,
depending on the operating system of the remote host.
Parameters
-? Displays the help message.
-d Activates debug tracing.
-l user_id/password
Specifies the user ID and password. You must enter the slash (/) between the
user ID and password if the target system is MVS. The character you must use
can vary, depending on the target host. For VM hosts, you should use an @
character.
-s port
Specifies the TCP port number of the rsh server on the foreign host. The
default is the port number defined in /etc/services.
foreign_host
Specifies the name or IP address of the foreign host to which you are sending
the orsh command. Specify the foreign host by its host name or IP address.
| When using IPv6 link-local addresses, scope information can be provided
| along with the name or IP address, as described in the support for scope
| information in the z/OS Communications Server: IPv6 Network and Application
| Design Guide.
command
Specifies the command that is sent to the foreign host. The command is
composed of one or more words. Coding is assigned after checking the
prefixed parameters (-l or -s) and assigning the remaining string as the
Examples
Use the orsh command to execute a command on a remote host:
orsh -l user28/password -s 512 mvs1 lista
SYS1.HELP
GIM.SGIMCLS0
DSN230.DSNCLIST
USER.CLIST
BUILD.CLIST
SYS1.HRFCLST
USER28.ORSHD5.JOB00160.D0000103.?
.
Usage
Enter the required parameters on the command line. The orsh command does not
prompt you for missing parameters.
The NDB client command enables you to issue SQL statements that you can enter
directly from the client machine to query or access data from a DB2 subsystem.
You can use the NDBCLNT command from the following environments:
v DOS
v MVS
v AIX on RS/6000®
v UNIX on Sun Microsystems
v VM
Purpose
Use the NDBCLNT command to issue SQL statements to a DB2 subsystem.
Note: The SQL statement that you want to enter is not part of the NDBCLNT
command. You enter your SQL statement after the NDBC prompt message is
displayed.
Format
NDBCLNT
-h host_name -u userid -p password
-d DB2_subsystem -o output_file -s -l -c
-o output_file
Parameters
-h host_name
Specifies the host on which the DB2 subsystem resides. host_name must be
IPv4. You are prompted for a name if you do not enter one.
Note: For the NDBCLNT command, substituting the IP address for host_name
is accepted only if doing so is supported by the remote procedure call
(RPC) implementation of the TCP/IP product running on the client
machine.
-u userid
Specifies the host user ID to be used to access the DB2 system. You are
prompted for an ID if you do not enter one.
-p password
Specifies the password for the TSO userid. You are prompted for a password if
you do not enter one.
Note: If you enter your password from the command line as part of the
NDBCLNT invocation, the password is displayed. If you do not enter
your password as part of the invocation, you are prompted for the
password and the password is not echoed to the screen.
-d DB2_subsystem
Specifies the name of the DB2 subsystem to be accessed for this NDB session.
You are prompted for a DB2 subsystem name if you do not enter one.
-o output_file
Specifies the file that stores the SQL statement result. Ensure that you use the
correct naming convention for the system being used. This option is required if
you specify the -s option.
-s Prevents output from being displayed on the terminal. If you do not specify
the -o option, it is assumed, and you are prompted for the name of the output
file.
Examples
ndbclnt -h mvs1 -d db2a -u user1 -p user1
NDBC: commit
SQL statement completed successfully
NDBC: rollback
SQL statement completed successfully
NDBC: end
Usage
v If you specify more than once any of the NDB invocation options that require a
parameter (for example, -h, -u, -p, -d, -o), the last occurrence is the one used by
the NDB client code.
v The NDBCLNT command format and parameter descriptions are displayed
when you specify any of the following:
– No parameters
– No valid parameters
v After entering the NDBCLNT command, you are prompted by the NDBC: prompt
for either an SQL statement or an NDB command.
If you are using NDBCLNT with an operating system that supports redirected
input from a file, you must ensure that the last statement in the file is the NDB
command END. See the user’s guide or online help facility for your workstation
operating system for more information about using redirected input.
NDB commands
The NDB commands are as follows:
Command Description
continue Requests additional buffers of data when the SQL query returns more than
one buffer of data.
end Ends the NDB client session. END causes an implicit SQL commit work to
take place. All changes made since the last commit or rollback (or since the
beginning of the session if no commits or rollbacks were issued) become
permanent.
eexit Emergency use only. Certain errors can cause the NDB client to be unable
to continue processing NDB commands or SQL statements, including the
NDB END command. These error conditions result in the same or other
error conditions continually being reported by the NDB client. If this
happens, issue the NDB emergency exit command (EEXIT) to immediately
exit. Note that using (EEXIT) does not allow the DB2 thread to terminate.
This will cause the database resources ( for example, locks and buffers) to
continue to be held. The NDB server and the port that the NDB client is
currently using will also continue to be held until the address space
containing this NDB server has been cancelled and restarted.
Code Message
1 Problem with RPC.
Look at the error messages displayed before this one. See the Remote
Procedure Call (RPC) messages and codes information for the client
platform from which you are running the NDB client.
The NDB sample client code detected that the NDB client was unable to
successfully send the SQL statement or NDB command to the NDB server
and to receive a response.
NDB uses RPC to handle requests between NDB clients and servers. Look
at the error messages and RPC information that was displayed before this
error. See the RPC messages and codes information for the client platform
from which you are running the NDB client.
The NDB server detected that the NDBC control block, used for
communication between an NDB client and its assigned NDB Server,
contained an incorrect value.
Listed below are the possible reasons why the error occurred:
v NDB version numbers do not match.
The version number in the client code must match the version number in
the server code. The NDB sample client code sets a field in the control
block NDBC called ndbver to indicate the current version of the NDB
client. The NDB server also contains a version number in its code.
For TCP/IP for MVS 3.1, the version value is 2. For all previous releases
of TCP/IP for MVS, the version value is 1. Since the version value for
NDB changes when the NDBC control block is changed, one level
(version, release, and modification) of NDB for TCP/IP for MVS might
not be compatible with another.
v NDB release numbers do not match.
The release number in the client code must match the release number in
the server code. The NDB sample client code sets a field in the control
block NDBC called ndbrel to indicate the current release of the NDB
client. The NDB server also contains a release number in its code.
For TCP/IP for MVS 3.1 and all previous releases, the release value is 1.
Since the version value for NDB changes when the NDBC control block
is changed, one level (version, release and modification) of NDB for
TCP/IP for MVS might remain compatible with another, but there are
differences in the control block field values that affect NDB server
processing.
v Eyecatcher is not for NDBC control block.
The NDB sample client code sets a field in the control block NDBC called
ndbcb to indicate the eyecatcher of the main control block being used by
the NDB client. The NDB server looks for this eyecatcher before
processing information contained in the control block.
For TCP/IP for MVS 3.1 and all previous releases, the control block
eyecatcher is NDBC.
v NDB Server name is unrecognized.
The NDB sample client code sets a field in the control block NDBC called
ndbsname to indicate the NDB server name by which the NDB client code
knows the NDB server. The NDB server did not find a recognized name
in the ndbsname field of the NDBC control block. For TCP/IP for MVS 3.1
and all previous releases, the NDB server name is netdbsrv.
Fix the NDBC control block field that is causing the error and rebuild the
NDB client.
-20101 You (or PUBLIC) do not have authority to run DB2 plan EZAND320.
For NDB to access data stored in DB2, the DBUITIL2 application program
that acts as interface code was stored in DB2. DBUTIL2 is in the form of a
DB2 plan name EZAND320. To use NDB (which uses the EZAND320), you
must be granted execute authority for EZAND320 by your database
administrator. This authority can be granted to your specific user ID or to
everyone by granting it to PUBLIC.
The NDB server detected that the DB2 subsystem specified at NDB server
startup was not running at the time the NDB server tried to establish a
connection with DB2. Contact your system programmer.
An error occurred when the NDB server used the DB2 Call Attachment
Facility (CAF) to establish a connection with DB2. Contact your system
programmer.
An error occurred when the NDB server allocated storage for a data
structure used by DB2 or for an internal buffer. Contact your system
programmer.
The length of one row of data to be returned from the current query was
greater than the length of the NDB reply buffer (size of which is specified
in the NDBC field NDBRPDLN). You can take either of the following
actions:
v Retrieve fewer columns per query either by issuing multiple queries or
by making the query more restrictive in the number of columns
requested.
v Increase the size of the NDB reply buffer by changing the define
compiler directive for NDB_REPLY_LENGTH in the program NDBCLT.C
and rebuilding the NDB client.
The NDB server has detected that the host user ID or host password did
not pass the security check on the host system. Enter a valid user ID and
password combination.
+xxx Positive return codes, other than +25, are informational and warning codes
from DB2.
-xxx Negative return codes between -001 and -999 or that are less than or equal
to -30000 are from DB2.
See z/OS Communications Server: IP and SNA Codes for more information about
TCP/IP return codes. See DB2 Messages and Codes for more information about DB2
return codes.
For more information on null values, see the DB2 Application Programming and SQL
Guide.
For unsupported SQL data types, values are replaced with asterisks (******) unless
the value is null. If the value is null, it is represented as previously described. See
the DB2 SQL Reference for information about SQL data types.
For information about the //DD file name syntax for FTP, see “ddname support”
on page 65.
Data set names in MVS consist of one or more names, called qualifiers, each from
one to eight characters long, that are delimited from one another by periods.
The leftmost qualifier in the data set name is the high-level qualifier. The rightmost
qualifier in the data set name is the low-level qualifier. Partitioned data sets can be
further qualified with a member name in the rightmost position. Qualifiers lying
between them are called intermediate-level qualifiers.
For example, in the data set name dog.bulldog.winston, dog is the high-level
qualifier, bulldog is the intermediate-level qualifier, and winston is the low-level
qualifier.
llev_qual
hlev_qual. llev_qual.
membername
(membername)
hlev_qual. llev_qual.
hlev_qual
Specifies the high-level qualifier of the data set. The default is the current
working directory. If you specify this parameter, the complete data set name
must be enclosed within single quotation marks (’).
The following examples show the naming conventions for sequential data sets on
an MVS host.
To access the sequential data set KC00852.SEQ.NAMES, the user, with the current
working directory KC00852, enters one of the following:
v ’KC00852.SEQ.NAMES’
v SEQ.NAMES
The difference between a sequential and partitioned data set specification is that
the partitioned data set user accesses the directory of members in the PDS, and the
sequential data set user accesses an individual file.
The following examples show the naming conventions for partitioned data sets on
an MVS host.
Note: You can use the special character asterisk (*) as a global name character
(wildcard) for pattern matching when you specify a data set name, with the
following restrictions:
v The asterisk must be the last character, or the only character specified for
a level of qualifier.
v When the data set name is enclosed in quotation marks, you cannot use
the asterisk as a wildcard in the high-level qualifier of the data set name.
Data set names not enclosed in quotation marks will use the setting of the
current directory as the high-level qualifier.
v You can use the asterisk more than once in the complete data set name,
but the asterisk must be the last character for each level of data set name
qualifier.
v If you specify a member name, you cannot use an asterisk anywhere in
the data set name.
v If you use an asterisk as all or part of the member name, you cannot use
an asterisk anywhere else in the data set name.
To access the member PROPER in the PDS KC00852.PDS.NAMES, the user, with the
current working directory KC00852, enters one of the following:
v ’KC00852.PDS.NAMES(PROPER)’
v PDS.NAMES(PROPER)
To keep the local and remote file names compatible with the type of data set used,
do one of the following:
v Specify both the local and remote file names
For example:
GET TEST.FILE TESTFL1
PUT TESTPDS(FILE1) FILE1
v Change the directory to the lowest level qualifier.
For example, to transfer between the PDS ‘USER14.TESTPDS(NAME1)’ and the
sequential data set ‘USER17.SEQ.NAME1’, do the follwoing:
See “MOde subcommand—Set the data transfer mode” on page 242 for
information about the MODE subcommand, and “TYpe subcommand—Set the data
transfer type” on page 315 for information about the TYPE subcommand.
TCP/IP supports only the data transfer of a data set or file structured as a
continuous sequence of data bytes. This ensures that the correct record format is
preserved across MVS hosts.
Table 26 shows how to set the transmission attributes for different host systems.
IBM mainframe operating systems (VM or MVS) are identified as EBCDIC transfer
types. Systems with ASCII storage are identified as ASCII transfer types. A text file
of an ASCII transfer type contains standard, displayable characters; a carriage
return (ASCII X'0D' and EBCDIC X'15'); and line feed characters (ASCII X'0A' and
EBCDIC X'25'). A text file of an EBCDIC transfer type contains standard,
displayable characters only. A binary file can contain any characters.
Table 26. Recommended methods for data transfer
Transfer between host types Transfer type Mode
EBCDIC to EBCDIC—text data EBCDIC Stream
EBCDIC to EBCDIC—binary data EBCDIC Block
EBCDIC to ASCII—text data ASCII Stream
ASCII to EBCDIC—text data ASCII Stream
ASCII to EBCDIC—binary data Image (binary) Stream
ASCII to EBCDIC to ASCII—all data Image (binary) Stream
Note: The EBCDIC host is used for storage only. Data is not used on the EBCDIC
host.
/directory/filename
directory
Specifies a directory name. Directories contain the names of files, other
directories, or both.
filename
Specifies a file name. It can be up to 14 characters long.
The complete name of an AIX and UNIX file contains the directory name and the
file name. The following is an example:
/mailfiles/cooks
Where:
mailfiles
The directory name
cooks The file name
In the AIX and UNIX operating systems, you specify the first slash (/) only when
you begin at the root directory. If you are specifying a file in the current directory,
enter only the file name. For example, if you are in the current directory mailfiles
and you want to access the cooks file, specify:
cooks
The directory name and file name can each be up to 14 characters in length. The
AIX and UNIX operating systems distinguishes between uppercase and lowercase
letters in file names.
| Tips:
| v A directory name and file name should not include characters that have a
| special meaning to the shell, such as backslash (\), ampersand (&), and period
| (.).
| v If a z/OS UNIX file name contains any single quotation marks (’), enclose the
| name in double quotation marks (″).
| v If a z/OS UNIX file name contains any double quotation marks (″), enclose the
| name in single quotation marks (’).
library/file.member
In the AS/400 operating system, files can have one or more members. Each file can
consist of data records, source programs, or database definitions.
The FTP subcommand PUT is used to copy a local file member into a file at the
remote host. The following is an example:
PUT PDS.DATA(MBR1) LIB1/FILEA.MBR1
In this example, the PUT subcommand copies member MBR1 from the partitioned
data set PDS.DATA on the local host to member MBR1 of file FILEA in the library
LIB1 on the remote host. If the member already exists at the remote host, it is
overwritten.
VM files
Data is stored in files on VM hosts. Specify VM files in the following format:
filename.filetype
filename
Specifies the file name.
filetype
Specifies the file type.
Note: The file mode is not accepted by foreign VM hosts; it is taken to be the file
mode associated with the current working directory. The file mode is not
used in TCP/IP commands.
For example, if you want to specify a file named accounts with a file type cprog,
enter the following:
accounts.cprog
All VM file specifications are treated as if they are entered in uppercase. The file
name and the file type consist of 1 to 8 alphanumeric characters. Other valid
characters are $, #, @ (at character), + (plus), - (hyphen), and _ (underscore).
You can use the special character * (asterisk) for pattern matching.
Each entry in the hlq.GDXAPLCS.MAP data set (alternative character set) contains
the mapping for a particular physical key that corresponds to three characters. The
characters correspond to the physical key by:
v Pressing the key alone
v Pressing the key and the Shift key simultaneously
v Pressing the key and the Alt key simultaneously
The hlq.GDXAPLCS.MAP data set entries must contain the following seven
single-byte hexadecimal values entered as EBCDIC characters:
v Value 1 is the hexadecimal keycode for the physical key.
v Values 2, 4, and 6 identify whether the character is in the primary or alternative
character set for the emulated 3179G. If the character is in the primary set, the
value is 0; if the character is in the alternative set, the value is 8.
v Values 3, 5, and 7 specify the EBCDIC code of the character in the character set.
The combination of values 2 and 3 define the bytes that describe the character
when the key corresponding to the keycode is pressed alone.
The combination of values 4 and 5 define the bytes that describe the character
when the key corresponding to the keycode and the Shift key are pressed
simultaneously.
The combination of values 6 and 7 define the bytes that describe the character
when the key corresponding to the keycode and the Alt key are pressed
simultaneously.
Table 27 lists the mapping values for the APL2 character set.
Table 27. Mapping values for the APL2 character set
Character name Character set EBCDIC Default keycode
value value
Quad Jot 8 73 9 + Shift
Quad Slope 8 CE 9 + Alt
1 0 F1 A
Diaeresis 8 72 A + Shift
Down Tack Up Tack 8 DA A + Alt
2 0 F2 B
Overbar 8 A0 B + Shift
Del Tilde 8 FB B + Alt
3 0 F3 C
< 0 4C C + Shift
Del Stile 8 DC C + Alt
Use these key combinations if you are using TELNET and your terminal does not
have the key that you want to use. For example, if you want to clear your screen
and your terminal does not have an ERASE INPUT key, press CTRL+Y to get the
same result.
When you press a key combination, a code that represents the 3270 equivalent
symbol is sent to the application with which you have established TELNET
communication. The application that you are using controls how these codes are
used.
PF Key Input Keys
PF1 Press ESC then press 1
PF2 Press ESC then press 2
PF3 Press ESC then press 3
PF4 Press ESC then press 4
PF5 Press ESC then press 5
PF6 Press ESC then press 6
PF7 Press ESC then press 7
PF8 Press ESC then press 8
For information about error messages, see z/OS Communications Server: IP Messages
Volume 1 (EZA).
Table 30. Sense codes
Sense code Problem description
8001 The command data length is less than 0 bytes.
8002 There is not enough data in an ERASE/WRITE or an ERASE/WRITE
ALTERNATE command.
8003 There is not enough data in A WRITE command.
8004 There is not enough data in A WRITE STRUCTURED FIELD command.
21001 WCC is not a character. The error occurred in a WRITE command.
21002 There is not enough data in a START FIELD subcommand. The error
occurred in a WRITE command.
21003 There is not enough data in a START FIELD EXTENDED subcommand. The
error occurred in a WRITE command.
21004 There is not enough data in a MODIFY FIELD subcommand. The error
occurred in a WRITE command.
You can request RFCs through electronic mail, from the automated Network
Information Center (NIC) mail server, by sending a message to
service@nic.ddn.mil with a subject line of RFC nnnn for text versions or a subject
line of RFC nnnn.PS for PostScript versions. To request a copy of the RFC index,
send a message with a subject line of RFC INDEX.
Hard copies of all RFCs are available from the NIC, either individually or by
subscription. Online copies are available at the following Web address:
http://www.rfc-editor.org/rfc.html.
See “Internet drafts” on page 464 for draft RFCs implemented in this and previous
Communications Server releases.
Internet drafts
Internet drafts are working documents of the Internet Engineering Task Force
(IETF), its areas, and its working groups. Other groups may also distribute
working documents as Internet drafts. You can see Internet drafts at
http://www.ietf.org/ID.html.
Note:
1. Information APARs contain updates to previous editions of the
documents listed in Table 31 and Table 32 on page 466. Documents
updated for V1R9 are complete except for the updates contained in the
information APARs that might be issued after V1R9 documents went to
press.
2. Information APARs are predefined for z/OS V1R9 Communications
Server and might not contain updates.
3. Information APARs for z/OS documents are in the document called z/OS
and z/OS.e DOC APAR and PTF ++HOLD Documentation, which can be
found at http://publibz.boulder.ibm.com/cgi-bin/bookmgr_OS390/
BOOKS/ZIDOCMST/CCONTENTS.
z/OS information
z/OS information is accessible using screen readers with the BookServer/Library
Server versions of z/OS books in the Internet library at:
www.ibm.com/servers/eserver/zseries/zos/bkserv/
IBM may have patents or pending patent applications covering subject matter
described in this document. The furnishing of this document does not give you
any license to these patents. You can send license inquiries, in writing, to:
For license inquiries regarding double-byte (DBCS) information, contact the IBM
Intellectual Property Department in your country or send inquiries, in writing, to:
The following paragraph does not apply to the United Kingdom or any other
country where such provisions are inconsistent with local law:
INTERNATIONAL BUSINESS MACHINES CORPORATION PROVIDES THIS
PUBLICATION ″AS IS″ WITHOUT WARRANTY OF ANY KIND, EITHER
EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
WARRANTIES OF NON-INFRINGEMENT, MERCHANTABILITY OR FITNESS
FOR A PARTICULAR PURPOSE. Some states do not allow disclaimer of express or
implied warranties in certain transactions, therefore, this statement may not apply
to you.
Any references in this information to non-IBM Web sites are provided for
convenience only and do not in any manner serve as an endorsement of those Web
sites. The materials at those Web sites are not part of the materials for this IBM
product and use of those Web sites is at your own risk.
IBM may use or distribute any of the information you supply in any way it
believes appropriate without incurring any obligation to you.
Site Counsel
IBM Corporation
P.O. Box 12195
3039 Cornwallis Road
Research Triangle Park, North Carolina 27709-2195
U.S.A
The licensed program described in this information and all licensed material
available for it are provided by IBM under terms of the IBM Customer Agreement,
IBM International Program License Agreement, or any equivalent agreement
between us.
All statements regarding IBM’s future direction or intent are subject to change or
withdrawal without notice, and represent goals and objectives only.
All IBM prices shown are IBM’s suggested retail prices, are current and are subject
to change without notice. Dealer prices may vary.
This information is for planning purposes only. The information herein is subject to
change before the products described become available.
This information contains examples of data and reports used in daily business
operations. To illustrate them as completely as possible, the examples include the
names of individuals, companies, brands, and products. All of these names are
fictitious and any similarity to the names and addresses used by an actual business
enterprise is entirely coincidental.
COPYRIGHT LICENSE:
Each copy or any portion of these sample programs or any derivative work must
include a copyright notice as follows:
© (your company name) (year). Portions of this code are derived from IBM Corp.
Sample Programs. © Copyright IBM Corp. _enter the year or years_. All rights
reserved.
Permission to use, copy, modify, and distribute the M.I.T., Digital Equipment
Corporation, and Hewlett-Packard Corporation portions of this software and its
documentation for any purpose without fee is hereby granted, provided that the
above copyright notice appears in all copies and that both that copyright notice
and this permission notice appear in supporting documentation, and that the
names of M.I.T., Digital, and Hewlett-Packard not be used in advertising or
publicity pertaining to distribution of the software without specific, written prior
permission. M.I.T., Digital, and Hewlett-Packard make no representation about the
suitability of this software for any purpose. It is provided ″as is″ without express
or implied warranty.
Copyright © 1988, 1993 The Regents of the University of California. All rights
reserved.
Redistribution and use in source and binary forms, with or without modification,
are permitted provided that the following conditions are met:
1. Redistributions of source code must retain the above copyright notice, this list
of conditions and the following disclaimer.
Notices 473
2. Redistributions in binary form must reproduce the above copyright notice, this
list of conditions and the following disclaimer in the documentation and/or
other materials provided with the distribution.
3. All advertising materials mentioning features or use of this software must
display the following acknowledgement:
This product includes software developed by the University of
California, Berkeley and its contributors.
4. Neither the name of the University nor the names of its contributors may be
used to endorse or promote products derived from this software without
specific prior written permission.
Permission from the Regents of the University of California to use, copy, modify,
and distribute the ″Popper″ software contained herein for any purpose, without
fee, and without a written agreement is hereby granted, provided that the above
copyright notice and this paragraph and the following two paragraphs appear in
all copies. HOWEVER, ADDITIONAL PERMISSIONS MAY BE NECESSARY
FROM OTHER PERSONS OR ENTITIES, TO USE DERIVATIVES OR
MODIFICATIONS OF POPPER.
Copyright © 1983 The Regents of the University of California. All rights reserved.
Copyright © 1991, 1993 The Regents of the University of California. All rights
reserved.
Redistribution and use in source and binary forms, with or without modification,
are permitted provided that the following conditions are met:
1. Redistributions of source code must retain the above copyright notice, this list
of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright notice, this
list of conditions and the following disclaimer in the documentation and/or
other materials provided with the distribution.
3. All advertising materials mentioning features or use of this software must
display the following acknowledgement:
This product includes software developed by the University of
California, Berkeley and its contributors.
4. Neither the name of the University nor the names of its contributors may be
used to endorse or promote products derived from this software without
specific prior written permission.
Export of this software from the United States of America may require a specific
license from the United States Government. It is the responsibility of any person or
organization contemplating export to obtain such a license before exporting.
WITHIN THAT CONSTRAINT, permission to use, copy, modify, and distribute this
software and its documentation for any purpose and without fee is hereby granted,
provided that the above copyright notice appear in all copies and that both that
copyright notice and this permission notice appear in supporting documentation,
and that the name of M.I.T. not be used in advertising or publicity pertaining to
distribution of the software without specific, written prior permission. Furthermore
Notices 475
if you modify this software you must label your software as modified software and
not distribute it in such a fashion that it might be confused with the original M.I.T.
software. M.I.T. makes no representations about the suitability of this software for
any purpose. It is provided ″as is″ without express or implied warranty.
Export of this software from the United States of America may require a specific
license from the United States Government. It is the responsibility of any person or
organization contemplating export to obtain such a license before exporting.
WITHIN THAT CONSTRAINT, permission to use, copy, modify, and distribute this
software and its documentation for any purpose and without fee is hereby granted,
provided that the above copyright notice appear in all copies and that both that
copyright notice and this permission notice appear in supporting documentation,
and that the name of FundsXpress not be used in advertising or publicity
pertaining to distribution of the software without specific, written prior
permission. FundsXpress makes no representations about the suitability of this
software for any purpose. It is provided ″as is″ without express or implied
warranty.
Permission to use, copy, modify, and distribute this software for any purpose with
or without fee is hereby granted, provided that the above copyright notice and this
permission notice appear in all copies.
This library is free for commercial and non-commercial use as long as the
following conditions are adhered to. The following conditions apply to all code
found in this distribution, be it the RC4, RSA, lhash, DES, etc., code; not just the
SSL code. The SSL documentation included with this distribution is covered by the
same copyright terms except that the holder is Tim Hudson (tjh@cryptsoft.com).
Copyright remains Eric Young’s, and as such any Copyright notices in the code are
not to be removed. If this package is used in a product, Eric Young should be
Redistribution and use in source and binary forms, with or without modification,
are permitted provided that the following conditions are met:
1. Redistributions of source code must retain the copyright notice, this list of
conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright notice, this
list of conditions and the following disclaimer in the documentation and/or
other materials provided with the distribution.
3. All advertising materials mentioning features or use of this software must
display the following acknowledgement: ″This product includes cryptographic
software written by Eric Young (eay@cryptsoft.com)″. The word ’cryptographic’
can be left out if the routines from the library being used are not cryptographic
related.
4. If you include any Windows specific code (or a derivative thereof) from the
apps directory (application code) you must include acknowledgement:
″This product includes software written by Tim Hudson (tjh@cryptsoft.com)″
THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS’’ AND ANY EXPRESS
OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
AUTHOR OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
DAMAGE.
The license and distribution terms for any publicly available version or derivative
of this code cannot be changed. i.e. this code cannot simply be copied and put
under another distribution license [including the GNU Public License.]
Permission to use, copy, modify, and distribute this software for any purpose with
or without fee is hereby granted, provided that the above copyright notice and this
permission notice appear in all copies.
Notices 477
Copyright © 2004 IBM Corporation and its licensors, including Sendmail, Inc., and
the Regents of the University of California. All rights reserved.
Permission is hereby granted, free of charge, to any person obtaining a copy of this
software and associated documentation files (the ″Software″), to deal in the
Software without restriction, including without limitation the rights to use, copy,
modify, merge, publish, distribute, and/or sell copies of the Software, and to
permit persons to whom the Software is furnished to do so, provided that the
above copyright notice(s) and this permission notice appear in all copies of the
Software and that both the above copyright notice(s) and this permission notice
appear in supporting documentation.
Except as contained in this notice, the name of a copyright holder shall not be used
in advertising or otherwise to promote the sale, use or other dealings in this
Software without prior written authorization of the copyright holder.
If you are viewing this information softcopy, photographs and color illustrations
may not appear.
You can obtain softcopy from the z/OS Collection (SK3T-4269), which contains
BookManager and PDF formats.
Notices 479
Java and all Java-based trademarks are trademarks of Sun Microsystems, Inc. in the
United States, other countries, or both.
UNIX is a registered trademark of The Open Group in the United States and other
countries.
Info APARs for z/OS documents are in the document called z/OS and z/OS.e DOC
APAR and PTF ++HOLD Documentation which can be found at
http://publibz.boulder.ibm.com/cgi-bin/bookmgr_OS390/ BOOKS/ZIDOCMST/
CCONTENTS.
Planning
Title Number Description
z/OS Communications Server: GC31-8771 This document is intended to help you plan for new IP for SNA
New Function Summary function, whether you are migrating from a previous version or
installing z/OS for the first time. It summarizes what is new in
the release and identifies the suggested and required
modifications needed to use the enhanced functions.
z/OS Communications Server: SC31-8885 This document is a high-level introduction to IPv6. It describes
IPv6 Network and Application concepts of z/OS Communications Server’s support of IPv6,
Design Guide coexistence with IPv4, and migration issues.
Operation
Title Number Description
z/OS Communications Server: IP SC31-8780 This document describes how to use TCP/IP applications. It
User’s Guide and Commands contains requests that allow a user to log on to a remote host
using Telnet, transfer data sets using FTP, send and receive
electronic mail, print on remote printers, and authenticate
network users.
z/OS Communications Server: IP SC31-8781 This document describes the functions and commands helpful in
System Administrator’s Commands configuring or monitoring your system. It contains system
administrator’s commands, such as TSO NETSTAT, PING,
TRACERTE and their UNIX counterparts. It also includes TSO
and MVS commands commonly used during the IP
configuration process.
z/OS Communications Server: SC31-8779 This document serves as a reference for programmers and
SNA Operation operators requiring detailed information about specific operator
commands.
z/OS Communications Server: SX75-0124 This document contains essential information about SNA and IP
Quick Reference commands.
Bibliography 483
Title Number Description
z/OS Communications Server: SC31-8828 This document describes the Common Management Information
CMIP Services and Topology Protocol (CMIP) programming interface for application
Agent Guide programmers to use in coding CMIP application programs. The
document provides guide and reference information about CMIP
services and the SNA topology agent.
Diagnosis
Title Number Description
z/OS Communications Server: IP GC31-8782 This document explains how to diagnose TCP/IP problems and
Diagnosis Guide how to determine whether a specific problem is in the TCP/IP
product code. It explains how to gather information for and
describe problems to the IBM Software Support Center.
z/OS Communications Server: These documents help you identify an SNA problem, classify it,
SNA Diagnosis Vol 1, Techniques GC31-6850 and collect information about it before you call the IBM Support
and Procedures and z/OS Center. The information collected includes traces, dumps, and
Communications Server: SNA GC31-6851 other problem documentation.
Diagnosis Vol 2, FFST Dumps and
the VIT
z/OS Communications Server: These documents describe SNA data areas and can be used to
SNA Data Areas Volume 1 and GC31-6852 read an SNA dump. They are intended for IBM programming
z/OS Communications Server: service representatives and customer personnel who are
SNA Data Areas Volume 2 GC31-6853 diagnosing problems with SNA.
Index 487
FILETYPE FTP subcommands (continued)
FTP LOCSITE and SITE parameter 204, 283 EUCKANJI 176
FILTER (LPR parameter) 370 FEATure 178
foreign_file FILE 179
FTP DELETE parameter 166 GET 180
FTP GET parameter 180 GLOB 182
FTP MDELETE parameter 232 HANGEUL 184
FTP MGET parameter 235 HELP 186
FTP PUT parameter 255 IBMKANJI 187
foreign_host JIS78KJ 188
FTP parameter 30 JIS83KJ 189
RSH parameter 413 KSC5601 190
TELNET parameter 10 LANGUAGE 192
format of batch SMTP command data sets 338 LCD 193
formatting batch SMTP command data sets 338 LMKDIR 225
FTP LOCSITE 195
command 4, 5, 30 LOCSTAT 218
data conversion 86 LPWD 228
data transfer methods 55, 432 LS 229
DB2 subsystems for SQL queries 131 MDELETE 232
DBCS support 87 MGET 235
ddname support 65 MKDIR 239
EXEC interface 102 MODE 242
EXIT return codes 106 MPUT 243
FTP-supplied DB2 column headings 132 NOOP 246
internal error codes 110 OPEN 247
issuing subcommands from a data set 102 PASS 248
logging on 36 PRIVATE 249
MBCS language support 90 PROMPT 250
parameters 34 PROTECT 251
reply codes 109 PROXY 252
restarting a failed data transfer 112 PUT 255
return codes 105 PWD 257
security considerations 50 QUIT 258
specifying data set attributes 91 QUOTE 259
subcommand codes 107 RECORD 261
transferring data 29, 53, 55 RENAME 262
user-level options 36, 71 RESTART 263
FTP Client, configuring for SOCKS server 72 RMDIR 264
FTP examples SCHINESE 266
FTP as a batch job 99 SENDPORT 268
FTP EXEC 102 SENDSITE 269
Generation Data Group (GDG) 94, 96 SITE 270
FTP format options SJISKANJI 297
NOSPREAD 132 SRestart 299
SPREAD 132 STATUS 301
SQLCOL 130 STREAM 308
FTP requests in batch, JCL for 98 STRUCTURE 309
FTP subcommands SUNIQUE 310
! 142 SYSTEM 311
ACCT 143 TCHINESE 312
APPEND 144 TSO 314
ASCII 146 TYPE 315
BIG5 148 UCS2 319
BINARY 150 USER 320
BLOCK 151 FTP-supported SQL data types
CD 153 CHAR 129
CDUP 156 DATE 129
CLEAR 158 DECIMAL 129
CLOSE 159 FLOAT 129
COMPRESS 160 INTEGER 129
DEBUG 162 LONG VARCHAR 129
DELETE 166 SMALLINT 129
DELIMIT 167 TIME 129
DIR 168 TIMESTAMP 129
DUMP 173 VARCHAR 129
EBCDIC 175 FTP.DATA data set 70, 72
I L
I (FTP TYPE parameter) 315 LAN (local area network) 1
IBM 3179G device model 386 LANDSCAPE (LPR parameter) 372
IBM Software Support Center, contacting xvii LANGUAGE (FTP subcommand) 192
Index 489
LCD (FTP subcommand) 193 mailbox
leaving the FTP environment 258 SMTP EXPN parameter 341
license, patent, and copyright information 471 SMTP VRFY parameter 353
line feed, suppressing (TELNET) 23 mapping values 404, 435
Line Printer MBCS translation tables, and FTP 90
Client (LPR) 363 MDELETE (FTP subcommand) 232
Daemon (LPD) 363 message retrieval tool, LookAt xxv
LINECOUNT (LPR parameter) 372, 373 MGET (FTP subcommand) 56, 235
Linemode (TELNET parameter) 10, 23 MGMTCLAS
LMKDIR (FTP subcommand) 225 FTP LOCSITE and SITE parameter 205, 285
local host 49, 195, 225, 314 MIGRATEVOL
local node, description 2 FTP LOCSITE and SITE parameter 206, 286
local_data_set MKDIR (FTP subcommand) 239
FTP APPEND parameter 144 MODE (FTP subcommand) 242
FTP MPUT parameter 243 MPUT (FTP subcommand) 62, 243
FTP PUT parameter 255
local_file (FTP GET parameter) 180
LOCSITE (FTP subcommand) 195
LOCSITE parameters 195
N
NAME
LOCSTAT (FTP subcommand) 218
FTP DIR parameter 168
logging on
FTP LS parameter 229
to a host using Telnet 9
FTP STATUS parameter 301
to FTP 36
LPR parameter 373
to other hosts 4
name server, description 3
LookAt message retrieval tool xxv
names
LOOPBACK 7
host 6
LPD (line printer daemon) 363
network, description 3
LPQ (remote printing command)
printer 6
description 6, 364
NDB 421
examples 365
NETRC.DATA data set 40, 408
usage 365
network address format 2
LPR (remote printing command)
network devices 2
description 6, 366
network names 3
examples 376
network protocols
usage 377
802.3 2
LPRM (remote printing command)
Ethernet 2
description 6, 379
SNA 2
examples 380
token ring 2
usage 380
X.25 2
LPRSET (remote printing command)
networks
description 6, 381, 383
NJE 324
examples 381
TCP/IP 2
usage 382
new_name (FTP RENAME parameter) 262
LPWD (FTP subcommand) 228
NewLiner (GDDMXD option) 400
LRECL
NJE 323
FTP LOCSITE and SITE parameter 204, 284
NOASAtrans parameter 286
ls (FTP subcommand) 45, 46, 229
NOAUTOMOUNT (FTP LOCSITE and SITE parameter) 206,
286
NOAUTORECALL (FTP LOCSITE and SITE parameter) 206,
M 286
MAIL (LPR parameter) 373 NOBINARY (LPR parameter) 373
MAIL FROM (SMTP command) 344 NOBURST (LPR parameter) 369
mail transfer (SMTP) commands NOCC
DATA 339 LPR parameter 369
EXPN 341 SMTPNOTE parameter 325
HELO 342 nodebug, privileged user SMSG parameter 334
HELP 343 nodes, descriptions 1, 2
MAIL FROM 344 noheader, LPR parameter 369
NOOP 345 NOLinecount (LPR parameter) 371
QUEU 346 NOOP
QUIT 348 FTP subcommand 246
RCPT TO 349 SMTP command 345
RSET 350 NOPOSTSCRIPT (LPR parameter) 373
STATS 331 NORDW (FTP LOCSITE parameter) 207
TICK 351 NORESTGet (FTP LOCSITE parameter) 207
VERB 352 NOSPREAD
VRFY 353 FTP format option 132
Index 491
R sending
ASCII control characters to a host in line mode 22
RACF 6, 42 break or attention keystroke to a host 16
RCPT TO (SMTP command) 349 data using the QUOTE subcommand 259
RDW electronic mail using OS/390 UNIX sendmail 359
FTP LOCSITE parameter 209 electronic mail using SMTP commands 5, 323
READTAPEFormat, FTP LOCSIte parameter 209 mail to a TCP network recipient 355
READTAPEFormat, FTP SIte parameter 288 PA1 keystroke to a host 19
RECEIVE command 5 site-specific information to a host 270
receiving mail 5 uninterpreted string of data 259
receiving spool output SENDPORT (FTP subcommand) 268
in a group 118 SENDSITE (FTP subcommand) 269
individually 117 sequential data sets 430
RECFM server
FTP LOCSITE and SITE parameter 210, 290 description 2
recipient (SMTPNOTE parameter) 325 FTP HELP parameter 186
recipient_path_address (SMTP RCPT TO parameter) 349 setting
RECORD (FTP subcommand) 261 characteristics for an SQL query 130
Record Descriptor Words (RDW) 207 data set or file structure 309
remote host logon xv data transfer mode 242
remote node, description 2 data transfer type 88, 315
remote printing 363 setting up tcpipv3r1.GDXAPLCS.MAP 404
remote printing commands shortcut keys 469
LPQ 364 SHUTDOWN (privileged user SMSG parameter) 334
LPR 366 SITE (FTP subcommand) 270
LPRM 379 SITE parameters 270
LPRSET 381, 383 SJISKANJI
removing a directory (FTP) 264 FTP subcommand 297
RENAME (FTP subcommand) 262 LPR parameter 373
renaming files on a foreign host 262 SMS 91, 198, 274
REPLACE SMSG command
FTP GET parameter 180 general user 330
FTP MGET parameter 235 privileged user 334
requests in batch, submitting FTP 98 SMSGAUTHLIST statement 334
resizing the GDDMXD graphics window 390 SMTP
responses, SMTP 354 DBCS support 357
RESTART (FTP subcommand) 263 description 5
restarting a checkpointed data transfer 263 Exit, Anti-Spamming 329
RESTGet (FTP LOCSITE parameter) 210 format of batch SMTP command data sets 338
RETPD monitoring the status of 330
FTP LOCSITE and SITE parameter 211, 290 responses 354
retrieving status information from a remote host 301 SMSG interface 330
return codes, FTP 106 SMTP electronic mail
REUSE (SMTPNOTE parameter) 326 nondelivery 328
REXEC 405, 415 preparing and sending 327
REXX command list language 34 receiving 328
RFC (request for comments) SMTP interfaces
accessing online xxiii interactively 323
list of 449 JES 323
RHOSTS.DATA data set 415 SMTPNOTE from your terminal 324
RMDIR (FTP subcommand) 264 SNA network protocol 2
RSCS 336 specifying
RSET (SMTP command) 350 column headings for an SQL query 131
RSH 412, 413 data sets and files 429
report format of your output data set 132
site information to the local host 195
S spreadsheet format of your output data set 132
S (FTP MODE parameter) 242 the DB2 subsystem to perform a query 131
sample FTP.DATA data set 72 values for new data sets 91
SBCS translation tables, and FTP 86, 88 SPREAD
SBTRANS (FTP.DATA parameter) 88 FTP LOCSITE and SITE parameter 132, 213, 292
SCHINESE SQL
FTP subcommand 266 FTP-supported data types 129
LPR parameter 373 imbedded statements 129
SECONDARY with FTP on the client 133
FTP LOCSITE and SITE parameter 213, 292 with FTP on the server 133
sender_path_address (SMTP MAIL FROM parameter) 344 SQL data type 129
Index 493
TSO commands (continued) XLATETABLE (LPR parameter) 375
RECEIVE 328 XSync (GDDMXD option) 401
TYPE
DBCS subcommand 315
FTP subcommand 315
LPQ parameter 365
Z
z/OS UNIX orexec/rexec 417
LPR parameter 375
z/OS UNIX orsh/rsh 419
LPRM parameter 379
z/OS UNIX REXEC
LPRSET parameter 381
command 5, 405, 415
format 406, 417
requests, submitting in batch 409
U z/OS UNIX RSH
UCS2 (FTP subcommand) 319 command 5, 405, 415
undelivered notes 328 format 419
UNIT (FTP LOCSITE and SITE parameter) 216, 295 requests, submitting in batch 409
Unit of Work (UOW) 5 z/OS, documentation library listing 481
USCFXLATE (LPR parameter) 375 z/OS, listing of documentation available 465
user ZWL (GDDMXD option 402
ID 6
password 6
USER (FTP subcommand) 320
USER name (FTP parameter) 375
user_id (FTP USER parameter) 320
user-specified options (GDDM/MVS) 390
uses of TCP/IP
data transfer 4, 29, 53
electronic mail 5, 323
printing on other hosts 5, 363
remote login 4, 9
using other hosts 5, 405, 415
V
VERB (SMTP command) 352
VERSION
LPQ parameter 365
LPR parameter 375
LPRM parameter 379
LPRSET parameter 381
visual appearance (GDDM/MVS) 386
VM files 434
VOLUME
FTP LOCSITE and SITE parameter 216, 295
VRFY (SMTP command) 353
VTAM 20
VTAM, online information xxiii
W
WAN (wide area network) 1
well-known ports, description 3
what you need to get started 6
WIDTH (LPR parameter) 375
working directory 42, 193
working with directories
on the foreign host 44, 45
on the local host 49
working-level qualifier 193, 228
WRAPRECORD
FTP LOCSITE and SITE parameter 216, 295
X
X Window System 385
X.25 network protocol 2
When you send comments to IBM, you grant IBM a nonexclusive right to use or
distribute your comments in any way it believes appropriate without incurring any
obligation to you.
Printed in USA
SC31-8780-07
Spine information: