On Thu, 16 Sep 2010 18:12:56 -0500, John McKown wrote: >> > >> I believe that in the newest z/OS release (1.12?) FTP will >> be able to take its input from a named pipe (FIFO). With >> this, you could achieve your result by concatenating >> the output of date(1) and your data set into such a pipe. > >I think that is referring to accessing a named pipe in the PUT or GET >ftp subcommand. Not for using a pipe to send the commands to the ftp >processor. > We're in intense agreement on that point. And I just glanced at the 1.12 Comm Svr Commands manual. A bunch of rules about named pipes. But the server can create, delete, and manipulate named pipes on behalf of the client, and the client can use named pipes as local files for either GET or PUT.
But, as I feared, FTP misbehaves when I put from a local //DD: which refers to a mixed concatenation (sample job below). When the first catenand is a Unix file, all subsequent catenands seem to be ignored. In the case given, the imbedded instream data set is mixed with hundreds of blank lines. IEBGENER with the same SYSUT1 gets it right. A major violation of the KISS principle. Why can't FTP just do QSAM GETs from the supplied DDNAME and write to the socket? Obviously it tries something more complicated and fails miserably. (z/OS 1.10) //STEP1 EXEC PGM=FTP,PARM='&SERVER (EXIT' //OUTPUT DD SYSOUT=(,) //NETRC DD PATHOPTS=ORDONLY,RECFM=VB,LRECL=999, // FILEDATA=TEXT, // PATH='&NETRC' //SYSUT1 DD * =================================================================== ========== Prefixed instream data =================================================================== // DD PATHOPTS=ORDONLY,RECFM=FB,LRECL=80,BLKSIZE=24000, // FILEDATA=TEXT, // PATH='/etc/rc' // DD * =================================================================== ========== This is instream data =================================================================== // DD DISP=SHR,DSN=SYS1.MACLIB(SPLEVEL) //INPUT DD * put //DD:SYSUT1 foo.catftp quit //* //* Compare to IEBGENER ========================================= //STEP2 EXEC PGM=IEBGENER //SYSPRINT DD SYSOUT=(,) //SYSIN DD DUMMY //SYSUT2 DD SYSOUT=(,) //SYSUT1 DD * =================================================================== ========== Prefixed instream data =================================================================== // DD PATHOPTS=ORDONLY,RECFM=FB,LRECL=80,BLKSIZE=24000, // FILEDATA=TEXT, // PATH='/etc/rc' // DD * =================================================================== ========== This is instream data =================================================================== // DD DISP=SHR,DSN=SYS1.MACLIB(SPLEVEL) // -- gil ---------------------------------------------------------------------- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO Search the archives at http://bama.ua.edu/archives/ibm-main.html