I am testing a Launcher/Dataset Pipes job that transmits a data set from one z/OS LPAR to another z/OS LPAR. Both LPARs are on the same physical machine. Depending on what changes I make the jobs ends with either a RC=102 or RC=103. The most recent series of tests have completed with 102. I've reached a point where I do not know what else to try. Can you help?
Here is the JCL:
//STEP0010 EXEC COZLNCH,ARGS='-LT,t PKSCM0@SYSC.DEVL.COM'
//STDOUT DD SYSOUT=*
//STDERR DD SYSOUT=*
//SYSPRINT DD SYSOUT=*
//COZCFG DD *
ssh-options=-oStrictHostKeyChecking=no
server-env-PASSWD_DSN=//PKSCM0.USS.CNTL($PW)
server-env-SSH_ASKPASS=/usr/local/bin/coz/bin/read_passwd_dsn.sh
server-env-DISPLAY=none
//STDIN DD *
fromdsn -l rdw //PKSCM0.TEST.SYSC.DATA |
todsn -ssh PKSCM0@SYSD.TEST.COM -l rdw //PKSCM0.TEST.FROM.SYSC
/*
The output is as follows:
[21:25:12.204536] CoZLauncher[N]: version: 3.5.1 2015-10-09
[21:25:12.205602] CoZLauncher[N]: Copyright (C) Dovetailed Technologies, LLC. 2006-2015. All rights reserved.
[21:25:12.205619] CoZLauncher[D]: target_user="PKSCM0", target_host="SYSC.DEVL.COM", target_port="NULL"
[21:25:12.205634] CoZLauncher[T]: -> CoZLauncher()
[21:25:12.205663] CoZLauncher[D]: sysname=SYSC, user=PKSCM0, uid=364, euid=364, pid=83896672, ppid=1
[21:25:12.205674] CoZLauncher[T]: <- CoZLauncher()
[21:25:12.205680] CoZLauncher[T]: -> run()
[21:25:12.205688] CoZLauncher[T]: -> logRegionSize()
[21:25:12.205695] CoZLauncher[D]: region size requested = 0K, Actual below/above limit = 10216K / 1786880K
[21:25:12.205703] CoZLauncher[T]: <- logRegionSize()
[21:25:12.205715] CoZLauncher[T]: -> loadEtcInitOptionsEnv()
[21:25:12.205909] CoZLauncher[T]: loadEtcInitOptionsEnv: TZ=CST6CDT
[15:25:12.206182] CoZLauncher[T]: <- loadEtcInitOptionsEnv()
[15:25:12.206194] CoZLauncher[T]: -> loadConfiguration()
[15:25:12.213243] CoZLauncher: Agent output WTO is OFF
[15:25:12.213263] CoZLauncher: ssh tunnelling is OFF
[15:25:12.213271] CoZLauncher[D]: server-path=/usr/local/bin/coz/bin/cozserver
[15:25:12.213293] CoZLauncher[D]: server-ports-SYSC=8060-8069
[15:25:12.213299] CoZLauncher[D]: server-ports-SYSD=8070-8079
[15:25:12.213306] CoZLauncher[D]: ssh-tunnel=false
[15:25:12.213311] CoZLauncher[D]: ssh-forward-dynamic-port=false
[15:25:12.213318] CoZLauncher[D]: ssh-shareas=YES
[15:25:12.213323] CoZLauncher[D]: ssh-le-options=HEAP(8M,1M,ANYWHERE,FREE),ENVAR("_CEE_REALLOC_CONTROL=256K,25")
[15:25:12.213331] CoZLauncher[D]: agent-path=/usr/local/bin/coz/bin/cozagent
[15:25:12.213338] CoZLauncher[D]: server-env-COZ_TRSUB_US-ASCII=ISO8859-1
[15:25:12.213346] CoZLauncher[D]: server-env-COZ_TRSUB_ANSI_X3.4-1968=ISO8859-1
[15:25:12.213351] CoZLauncher[D]: ssh-options=-oStrictHostKeyChecking=no
[15:25:12.213358] CoZLauncher[D]: server-env-PASSWD_DSN=//PKSCM0.USS.CNTL($PW)
[15:25:12.213364] CoZLauncher[D]: server-env-SSH_ASKPASS=/usr/local/bin/coz/bin/read_passwd_dsn.sh
[15:25:12.213371] CoZLauncher[D]: server-env-DISPLAY=none
[15:25:12.213379] CoZLauncher[T]: <- loadConfiguration()
[15:25:12.213386] CoZLauncher[T]: -> setServerEnvironment()
[15:25:12.213391] CoZLauncher[T]: -> loadEtcInitOptionsEnv()
[15:25:12.213504] CoZLauncher[T]: loadEtcInitOptionsEnv: TZ=CST6CDT
[15:25:12.213543] CoZLauncher[T]: <- loadEtcInitOptionsEnv()
[15:25:12.213553] CoZLauncher[D]: Set server environment variable:'COZ_TRSUB_US-ASCII'='ISO8859-1'
[15:25:12.213563] CoZLauncher[D]: Set server environment variable:'COZ_TRSUB_ANSI_X3.4-1968'='ISO8859-1'
[15:25:12.213572] CoZLauncher[D]: Set server environment variable:'PASSWD_DSN'='//PKSCM0.USS.CNTL($PW)'
[15:25:12.213580] CoZLauncher[D]: Set server environment variable:'SSH_ASKPASS'='/usr/local/bin/coz/bin/read_passwd_dsn.
sh'
[15:25:12.213592] CoZLauncher[D]: Set server environment variable:'DISPLAY'='none'
[15:25:12.213605] CoZLauncher[D]: COZ_RECV_MSG_WAITALL was not found, setting to "Y"
[15:25:12.213612] CoZLauncher[T]: <- setServerEnvironment()
[15:25:12.213620] CoZLauncher[T]: -> generateAuthToken()
[15:25:12.219819] CoZLauncher[T]: generateAuthToken: 16 bytes read from /dev/random
[15:25:12.219887] CoZLauncher[T]: <- generateAuthToken()
[15:25:12.219898] CoZLauncher[T]: -> determineServerPort()
[15:25:12.219911] CoZLauncher[D]: Server port range: 8060-8069
[15:25:12.219919] CoZLauncher[D]: Attempting to start socket listener on port 8060
[15:25:12.219927] CoZLauncher[T]: -> startSocketListener(host=0.0.0.0, port=8060)
[15:25:12.751604] CoZLauncher: CoZServer listener socket bound to: 0.0.0.0:8060
[15:25:12.751700] CoZServerUtil[D]: Socket SO_SNDBUF set to 184320
[15:25:12.751720] CoZServerUtil[D]: Socket SO_RCVBUF set to 184320
[15:25:12.751756] CoZLauncher[T]: <- startSocketListener(listensock=0)
[15:25:12.751765] CoZLauncher[T]: <- determineServerPort()
[15:25:12.751773] CoZLauncher[T]: -> launchServer()
[15:25:12.751781] CoZLauncher[T]: -> buildServerCommand()
[15:25:12.751789] CoZLauncher[D]: server_cmd...
/usr/local/bin/coz/bin/cozserver -sockfd 3
[15:25:12.751804] CoZLauncher[T]: <- buildServerCommand()
[15:25:12.751810] CoZLauncher[T]: -> spawnServer()
[15:25:12.751877] CoZLauncher[T]: server fd_map[-1,-1,2,0]
[15:25:12.751885] CoZLauncher[T]: server_stderr_fd=1
[15:25:12.753289] CoZLauncher[D]: Started CoZServer process: 33565035
[15:25:12.753326] CoZLauncher[T]: <- spawnServer()
[15:25:12.754975] CoZLauncher[T]: <- launchServer()
[15:25:12.754995] CoZLauncher[T]: -> launchAgent()
[15:25:12.755004] CoZLauncher[T]: -> buildAgentCommand()
[15:25:12.755012] CoZLauncher[T]: -> parseSshOptions()
[15:25:12.755020] CoZLauncher[D]: arg[4] = '-oStrictHostKeyChecking=no'
[15:25:12.755028] CoZLauncher[T]: <- parseSshOptions()
[15:25:12.755036] CoZLauncher[D]: agent_cmd...
/bin/ssh -l PKSCM0 -oLoglevel=INFO -oStrictHostKeyChecking=no SYSC.DEVL.COM /usr/local/bin/coz/bin/cozagent
[15:25:12.755051] CoZLauncher[T]: <- buildAgentCommand()
[15:25:12.755056] CoZLauncher[T]: -> spawnAgent()
[15:25:12.755157] CoZLauncher[T]: agent_fd_map[2,5,7]
[15:25:12.755165] CoZLauncher[T]: agent_fds[3,4,6]
[15:25:12.755531] CoZLauncher[T]: -> serverStderrThread()
[15:25:12.757731] CoZLauncher[D]: Started CoZAgent process: 67119469
[15:25:12.757769] CoZLauncher[T]: <- spawnAgent()
[15:25:12.757777] CoZLauncher[T]: agent FDS=[3,4,6]
[15:25:12.758146] CoZLauncher[D]: Sent agent environment variable:'COZ_SERVER_HOST'='DEVL1LPAR'
[15:25:12.758172] CoZLauncher[D]: Sent agent environment variable:'COZ_SERVER_PORT'='8060'
[15:25:12.758186] CoZLauncher[D]: Sent agent environment variable:'COZ_SERVER_PROTOCOL_VERSION'='2'
[15:25:12.758201] CoZLauncher[D]: About to start target command: ''
[15:25:12.758278] CoZLauncher[T]: <- launchAgent()
[15:25:12.758286] CoZLauncher[T]: -> waitForChildren()
[15:25:12.758638] CoZLauncher[T]: -> agentStdinThread()
[15:25:12.758947] CoZLauncher[T]: -> agentStderrThread()
[15:25:12.759129] CoZLauncher[T]: -> agentStdoutThread()
[15:25:18.974225] CoZLauncher[D]: First agent message received:
*******************************************************
* This computer system is for authorized use only. *
* All activity is logged and regularly checked by *
* system administrators. Individuals attempting to *
* connect to, port-scan, deface, hack, or otherwise *
* interfere with any services on this system will be *
* reported. *
*******************************************************
/usr/local/bin/coz/bin/read_passwd_dsn.sh prompt: "PKSCM0@SYSC.DEVL.com's password: "
fromdsn(PKSCM0.USS.CNTL($PW))[N]: 1 records/80 bytes read; 9 bytes written in 0 milliseconds.
FOTS2213 Warning: No xauth data; using fake authentication data for X11 forwarding.
cozagent[N]: version: 3.5.1 2015-10-09
fromdsn(DD:STDIN)[N]: 2 records/160 bytes read; 108 bytes written in 0.002 seconds (52.734 KBytes/sec).
fromdsn(PKSCM0.TEST.SYSC.DATA)[N]: 1 records/80 bytes read; 21 bytes written in 0 milliseconds.
cozagent[E]: Target Program(50342257) ended with RC=102
todsn(DD:STDOUT)[N]: 0 bytes read; 0 records/0 bytes written in 156.319 seconds (0.000 Bytes/sec).
todsn(DD:STDERR)[N]: 989 bytes read; 18 records/967 bytes written in 156.335 seconds (6.326 Bytes/sec).
[15:27:58.381523] CoZLauncher[D]: CoZAgent: completed with RC=102
[15:27:58.381558] CoZLauncher[T]: -> handleAgentCompletion(102)
[15:27:58.382750] CoZLauncher[D]: SSH process times: elapsed=165 secs, user cpu=0.070000 secs, sys cpu=0.020000 secs
[15:27:58.382770] CoZLauncher[D]: Killing child process CoZServer (33565035) with signal 15
[15:27:58.382827] CoZLauncher[T]: <- handleAgentCompletion()
[15:27:58.383301] CoZLauncher[D]: serverStderrThread completed
[15:27:58.383316] CoZLauncher[T]: -> waitStatusServer()
[15:27:58.383343] CoZLauncher[D]: CoZServer process (33565035) ended with RC=0
[15:27:58.383356] CoZLauncher[T]: <- waitStatusServer(rc=0)
[15:27:58.383790] CoZLauncher[T]: <- serverStderrThread()
[15:27:58.511639] CoZLauncher[D]: agentStdoutThread completed
[15:27:58.511675] CoZLauncher[T]: <- agentStdoutThread()
[15:27:58.511768] CoZLauncher[D]: agentStderrThread completed
[15:27:58.511788] CoZLauncher[T]: <- agentStderrThread()
[15:27:58.883559] CoZLauncher[T]: -> waitStatusAgent()
[15:27:58.883596] CoZLauncher[E]: CoZAgent process (67119469) ended with RC=102
[15:27:58.883611] CoZLauncher[E]: PKSCM0@SYSC.DEVL.COM target command '<default shell>' ended with RC=102
[15:27:58.883624] CoZLauncher[T]: <- waitStatusAgent(rc=102)
[15:27:58.883633] CoZLauncher[T]: <- waitForChildren(rc=102)
[15:27:58.883641] CoZLauncher[T]: -> cleanup()
[15:27:58.883958] CoZLauncher[T]: <- agentStdinThread()
[15:27:58.884287] CoZLauncher[T]: <- cleanup()
[15:27:58.884296] CoZLauncher[E]: CoZLauncher ended with RC=102
[15:27:58.884304] CoZLauncher[T]: <- run()
[15:27:58.884312] CoZLauncher[T]: -> ~CoZLauncher()
[15:27:58.884332] CoZLauncher[T]: <- ~CoZLauncher()
CoZAgent: PKSCM0@DEVL1LPAR target program '/bin/sh' PID: 50342257
CoZAgent: completed with RC=102
FSUM6764 logname: cannot get login name
*******************************************************
* This computer system is for authorized use only. *
* All activity is logged and regularly checked by *
* system administrators. Individuals attempting to *
* connect to, port-scan, deface, hack, or otherwise *
* interfere with any services on this system will be *
* reported. *
*******************************************************
EZYXW11E XtlibError: invalidDisplay xtInitialize XtToolkitError
Can't open display: 172.24.30.28:0.0
FOTS1346 Permission denied, please try again.
EZYXW11E XtlibError: invalidDisplay xtInitialize XtToolkitError
Can't open display: 172.24.30.28:0.0
Connection closed by UNKNOWN
FOTS2707 zsshSmfWritePipe: write(): EDC5113I Bad file descriptor. (errno2=0x05710034).
FOTS2803 zsshSmfWritePipe: Error collecting SMF data.
todsn[E]: CoZClient: Error: no exit code received from CoZServer
Return 102 - todsnÝE¨: CoZClient: Error: no exit code received from CoZServer
Re: Return 102 - todsnÝE¨: CoZClient: Error: no exit code received from CoZServer
The causative errors are these:
FSUM6764 logname: cannot get login name
- this probably means that your z/OS userid isn't setup properly to use z/OS Unix System services
EZYXW11E XtlibError: invalidDisplay xtInitialize XtToolkitError
Can't open display: 172.24.30.28:0.0
- your current z/OS OpenSSH client ssh options seem to be trying to forward an X display.
FOTS1346 Permission denied, please try again.
- This error is from z/OS OpenSSH, meaning that it cannot authentication with the target SSH server.
Here's my suggestion for how to debug this.
1) Log into a z/OS Unix shell using an SSH client (like PuTTY). Use the same z/OS userid that you are running this batch job from and log into the same LPAR.
2) from the z/OS Unix shell:
ssh -vvv PKSCM0@SYSC.DEVL.COM
capture the output, scrub any sensitive stuff from it and post it and we will review.
FSUM6764 logname: cannot get login name
- this probably means that your z/OS userid isn't setup properly to use z/OS Unix System services
EZYXW11E XtlibError: invalidDisplay xtInitialize XtToolkitError
Can't open display: 172.24.30.28:0.0
- your current z/OS OpenSSH client ssh options seem to be trying to forward an X display.
FOTS1346 Permission denied, please try again.
- This error is from z/OS OpenSSH, meaning that it cannot authentication with the target SSH server.
Here's my suggestion for how to debug this.
1) Log into a z/OS Unix shell using an SSH client (like PuTTY). Use the same z/OS userid that you are running this batch job from and log into the same LPAR.
2) from the z/OS Unix shell:
ssh -vvv PKSCM0@SYSC.DEVL.COM
capture the output, scrub any sensitive stuff from it and post it and we will review.
Re: Return 102 - todsnÝE¨: CoZClient: Error: no exit code received from CoZServer
I’ve made some progress though I still cannot get the file to copy. I have been able to eliminate the following errors:
FSUM6764 logname: cannot get login name
EZYXW11E XtlibError: invalidDisplay xtInitialize XtToolkitError
Can't open display: 172.24.30.28:0.0
FOTS1346 Permission denied, please try again
I was able to eliminate the FSUM6764 message by removing the following from my .profile:
export USERID=$(logname)
The rest of the messages disappeared when I reversed the transmission. That is, instead of running the job on SYSC and ssh’ing to SYSD, I ran the job on SYSD and ssh’d to SYSC. I had forgotten that SYSC was not setup to ssh into SYSD.
As you requested I ran an ssh command with the –vvv option from the z/OS Unix shell. I logged onto SYSD and executed ssh -vvv pkscm0@sysc.ameritas.com. The output is as follows:
(PKSCM0@SYSD): /u/PKSCM0-> ssh -vvv PKSCM0@SYSC.DEVL.COM
OpenSSH_5.0p1, OpenSSL 1.0.1c 10 May 2012
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: Reading configuration data /etc/ssh/zos_ssh_config
debug3: RNG is ready, skipping seeding
debug1: zsshSmfSetConnSmfStatus: changing SMF status from 0 to 83
debug1: Rhosts Authentication disabled, originating port will not be trusted.
debug2: ssh_connect: needpriv 0
debug1: Connecting to SYSC.DEVL.COM [172.18.1.3] port 22.
debug1: Connection established.
debug1: cipher_init: none from source OpenSSL
debug1: cipher_init: none from source OpenSSL
debug3: zsshGetpw: passwd name=PKSCM0, uid=10, gid=0, dir=/u/PKSCM0, shell=/bin/sh
debug3: Not a RSA1 key file /u/PKSCM0/.ssh/id_rsa.
debug2: key_type_from_name: unknown key type '-----BEGIN'
debug3: key_read: missing keytype
debug3: key_read: missing whitespace
debug3: key_read: missing whitespace
debug3: key_read: missing whitespace
debug3: key_read: missing whitespace
debug3: key_read: missing whitespace
debug3: key_read: missing whitespace
debug3: key_read: missing whitespace
debug3: key_read: missing whitespace
debug3: key_read: missing whitespace
debug3: key_read: missing whitespace
debug3: key_read: missing whitespace
debug3: key_read: missing whitespace
debug3: key_read: missing whitespace
debug3: key_read: missing whitespace
debug3: key_read: missing whitespace
debug3: key_read: missing whitespace
debug3: key_read: missing whitespace
debug3: key_read: missing whitespace
debug3: key_read: missing whitespace
debug3: key_read: missing whitespace
debug3: key_read: missing whitespace
debug3: key_read: missing whitespace
debug3: key_read: missing whitespace
debug3: key_read: missing whitespace
debug3: key_read: missing whitespace
debug2: key_type_from_name: unknown key type '-----END'
debug3: key_read: missing keytype
debug1: identity file /u/PKSCM0/.ssh/id_rsa type 1
debug3: Not a RSA1 key file /u/PKSCM0/.ssh/id_dsa.
debug2: key_type_from_name: unknown key type '-----BEGIN'
debug3: key_read: missing keytype
debug3: key_read: missing whitespace
debug3: key_read: missing whitespace
debug3: key_read: missing whitespace
debug3: key_read: missing whitespace
debug3: key_read: missing whitespace
debug3: key_read: missing whitespace
debug3: key_read: missing whitespace
debug3: key_read: missing whitespace
debug3: key_read: missing whitespace
debug3: key_read: missing whitespace
debug2: key_type_from_name: unknown key type '-----END'
debug3: key_read: missing keytype
debug1: identity file /u/PKSCM0/.ssh/id_dsa type 2
debug1: Remote protocol version 2.0, remote software version OpenSSH_5.0
debug1: match: OpenSSH_5.0 pat OpenSSH*
debug1: Enabling compatibility mode for protocol 2.0
debug1: Local version string SSH-2.0-OpenSSH_5.0
debug2: fd 3 setting O_NONBLOCK
debug3: RNG is ready, skipping seeding
debug1: SSH2_MSG_KEXINIT sent
debug1: SSH2_MSG_KEXINIT received
debug2: kex_parse_kexinit: diffie-hellman-group-exchange-sha256,diffie-hellman-group-exchange-sha1,diffie-hellman-group14-sha1,diffie-hellman-group1-sha1
debug2: kex_parse_kexinit: ssh-rsa,ssh-dss
debug2: kex_parse_kexinit: aes128-ctr,aes192-ctr,aes256-ctr,arcfour256,arcfour128,aes128-cbc,3des-cbc,blowfish-cbc,cast128-cbc,aes192-cbc,aes256-cbc,arcfour,rijndael-cbc@lysator.liu.se
debug2: kex_parse_kexinit: aes128-ctr,aes192-ctr,aes256-ctr,arcfour256,arcfour128,aes128-cbc,3des-cbc,blowfish-cbc,cast128-cbc,aes192-cbc,aes256-cbc,arcfour,rijndael-cbc@lysator.liu.se
debug2: kex_parse_kexinit: hmac-md5,hmac-sha1,umac-64@openssh.com,hmac-ripemd160,hmac-ripemd160@openssh.com,hmac-sha1-96,hmac-md5-96
debug2: kex_parse_kexinit: hmac-md5,hmac-sha1,umac-64@openssh.com,hmac-ripemd160,hmac-ripemd160@openssh.com,hmac-sha1-96,hmac-md5-96
debug2: kex_parse_kexinit: none,zlib@openssh.com,zlib
debug2: kex_parse_kexinit: none,zlib@openssh.com,zlib
debug2: kex_parse_kexinit:
debug2: kex_parse_kexinit:
debug2: kex_parse_kexinit: first_kex_follows 0
debug2: kex_parse_kexinit: reserved 0
debug2: kex_parse_kexinit: diffie-hellman-group-exchange-sha256,diffie-hellman-group-exchange-sha1,diffie-hellman-group14-sha1,diffie-hellman-group1-sha1
debug2: kex_parse_kexinit: ssh-rsa,ssh-dss
debug2: kex_parse_kexinit: aes128-ctr,aes192-ctr,aes256-ctr,arcfour256,arcfour128,aes128-cbc,3des-cbc,blowfish-cbc,cast128-cbc,aes192-cbc,aes256-cbc,arcfour,rijndael-cbc@lysator.liu.se
debug2: kex_parse_kexinit: aes128-ctr,aes192-ctr,aes256-ctr,arcfour256,arcfour128,aes128-cbc,3des-cbc,blowfish-cbc,cast128-cbc,aes192-cbc,aes256-cbc,arcfour,rijndael-cbc@lysator.liu.se
debug2: kex_parse_kexinit: hmac-md5,hmac-sha1,umac-64@openssh.com,hmac-ripemd160,hmac-ripemd160@openssh.com,hmac-sha1-96,hmac-md5-96
debug2: kex_parse_kexinit: hmac-md5,hmac-sha1,umac-64@openssh.com,hmac-ripemd160,hmac-ripemd160@openssh.com,hmac-sha1-96,hmac-md5-96
debug2: kex_parse_kexinit: none
debug2: kex_parse_kexinit: none
debug2: kex_parse_kexinit:
debug2: kex_parse_kexinit:
debug2: kex_parse_kexinit: first_kex_follows 0
debug2: kex_parse_kexinit: reserved 0
debug1: mac_setup_by_id: hmac-md5 from source OpenSSL
debug2: mac_setup: found hmac-md5
debug1: kex: server->client aes128-ctr hmac-md5 none
debug1: mac_setup_by_id: hmac-md5 from source OpenSSL
debug2: mac_setup: found hmac-md5
debug1: kex: client->server aes128-ctr hmac-md5 none
debug1: SSH2_MSG_KEX_DH_GEX_REQUEST(1024<1024<8192) sent
debug1: expecting SSH2_MSG_KEX_DH_GEX_GROUP
debug2: dh_gen_key: priv key bits set: 128/256
debug2: bits set: 530/1024
debug1: SSH2_MSG_KEX_DH_GEX_INIT sent
debug1: expecting SSH2_MSG_KEX_DH_GEX_REPLY
debug3: check_host_in_hostfile: filename /u/PKSCM0/.ssh/known_hosts
debug3: check_host_in_hostfile: match line 13
debug3: check_host_in_hostfile: filename /u/PKSCM0/.ssh/known_hosts
debug3: check_host_in_hostfile: match line 3
debug1: Host 'SYSC.DEVL.com' is known and matches the RSA host key.
debug1: Found key in /u/PKSCM0/.ssh/known_hosts:13
debug2: bits set: 525/1024
debug1: ssh_rsa_verify: signature correct
debug2: kex_derive_keys
debug2: set_newkeys: mode 1
debug1: cipher_init: aes128-ctr from source OpenSSL
debug1: SSH2_MSG_NEWKEYS sent
debug1: expecting SSH2_MSG_NEWKEYS
debug2: set_newkeys: mode 0
debug1: cipher_init: aes128-ctr from source OpenSSL
debug1: SSH2_MSG_NEWKEYS received
debug1: SSH2_MSG_SERVICE_REQUEST sent
debug2: service_accept: ssh-userauth
debug1: SSH2_MSG_SERVICE_ACCEPT received
debug2: key: /u/PKSCM0/.ssh/id_rsa (13A63980)
debug2: key: /u/PKSCM0/.ssh/id_dsa (13A66130)
debug3: input_userauth_banner
*******************************************************
* This computer system is for authorized use only. *
* All activity is logged and regularly checked by *
* system administrators. Individuals attempting to *
* connect to, port-scan, deface, hack, or otherwise *
* interfere with any services on this system will be *
* reported. *
*******************************************************
debug1: Authentications that can continue: publickey,password
debug3: start over, passed a different list publickey,password
debug3: preferred publickey,keyboard-interactive,password
debug3: authmethod_lookup publickey
debug3: remaining preferred: keyboard-interactive,password
debug3: authmethod_is_enabled publickey
debug1: Next authentication method: publickey
debug1: Offering public key: /u/PKSCM0/.ssh/id_rsa
debug3: send_pubkey_test
debug2: we sent a publickey packet, wait for reply
debug1: Authentications that can continue: publickey,password
debug1: Offering public key: /u/PKSCM0/.ssh/id_dsa
debug3: send_pubkey_test
debug2: we sent a publickey packet, wait for reply
debug1: Server accepts key: pkalg ssh-dss blen 433
debug2: input_userauth_pk_ok: fp a9:d2:b0:2b:fb:d6:55:60:77:b1:9d:c2:50:76:22:3f
debug3: sign_and_send_pubkey
debug1: read PEM private key done: type DSA
debug1: Authentication succeeded (publickey).
debug1: channel 0: new [client-session]
debug3: ssh_session2_open: channel_new: 0
debug2: channel 0: send open
debug1: Entering interactive session.
debug2: callback start
debug2: client_session2_setup: id 0
debug2: channel 0: request pty-req confirm 0
debug3: tty_make_modes: ospeed 38400
debug3: tty_make_modes: ispeed 38400
debug3: tty_make_modes: 1 3
debug3: tty_make_modes: 2 28
debug3: tty_make_modes: 3 8
debug3: tty_make_modes: 4 21
debug3: tty_make_modes: 5 4
debug3: tty_make_modes: 6 10
debug3: tty_make_modes: 8 17
debug3: tty_make_modes: 9 19
debug3: tty_make_modes: 10 26
debug3: tty_make_modes: 30 0
debug3: tty_make_modes: 31 0
debug3: tty_make_modes: 32 0
debug3: tty_make_modes: 33 0
debug3: tty_make_modes: 34 0
debug3: tty_make_modes: 35 0
debug3: tty_make_modes: 36 1
debug3: tty_make_modes: 37 0
debug3: tty_make_modes: 38 1
debug3: tty_make_modes: 39 0
debug3: tty_make_modes: 40 0
debug3: tty_make_modes: 50 1
debug3: tty_make_modes: 51 1
debug3: tty_make_modes: 52 0
debug3: tty_make_modes: 53 1
debug3: tty_make_modes: 54 1
debug3: tty_make_modes: 55 1
debug3: tty_make_modes: 56 1
debug3: tty_make_modes: 57 0
debug3: tty_make_modes: 58 0
debug3: tty_make_modes: 59 0
debug3: tty_make_modes: 70 1
debug3: tty_make_modes: 71 0
debug3: tty_make_modes: 72 1
debug3: tty_make_modes: 73 0
debug3: tty_make_modes: 74 0
debug3: tty_make_modes: 75 1
debug3: tty_make_modes: 90 1
debug3: tty_make_modes: 91 1
debug3: tty_make_modes: 92 0
debug3: tty_make_modes: 93 0
debug2: channel 0: request shell confirm 0
debug2: fd 3 setting TCP_NODELAY
debug2: callback done
debug2: channel 0: open confirm rwindow 0 rmax 32768
debug2: channel 0: rcvd adjust 2097152
(PKSCM0@SYSC): /u/PKSCM0-> exit
debug1: client_input_channel_req: channel 0 rtype exit-status reply 0
debug2: channel 0: rcvd eof
debug2: channel 0: output open -> drain
debug2: channel 0: obuf empty
debug2: channel 0: close_write
debug2: channel 0: output drain -> closed
debug2: channel 0: rcvd close
debug2: channel 0: close_read
debug2: channel 0: input open -> closed
debug3: channel 0: will not send data after close
debug2: channel 0: almost dead
debug2: channel 0: gc: notify user
debug2: channel 0: gc: user detached
debug2: channel 0: send close
debug2: channel 0: is dead
debug2: channel 0: garbage collecting
debug1: channel 0: free: client-session, nchannels 1
debug3: channel 0: status: The following connections are open:
#0 client-session (t4 r0 i3/0 o3/0 fd -1/-1 cfd -1)
debug3: channel 0: close_fds r -1 w -1 e 6 c -1
Connection to SYSC.DEVL.COM closed.
debug1: Transferred: stdin 0, stdout 0, stderr 41 bytes in 5.9 seconds
debug1: Bytes per second: stdin 0.0, stdout 0.0, stderr 6.9
debug1: Exit status 0
FSUM6764 logname: cannot get login name
EZYXW11E XtlibError: invalidDisplay xtInitialize XtToolkitError
Can't open display: 172.24.30.28:0.0
FOTS1346 Permission denied, please try again
I was able to eliminate the FSUM6764 message by removing the following from my .profile:
export USERID=$(logname)
The rest of the messages disappeared when I reversed the transmission. That is, instead of running the job on SYSC and ssh’ing to SYSD, I ran the job on SYSD and ssh’d to SYSC. I had forgotten that SYSC was not setup to ssh into SYSD.
As you requested I ran an ssh command with the –vvv option from the z/OS Unix shell. I logged onto SYSD and executed ssh -vvv pkscm0@sysc.ameritas.com. The output is as follows:
(PKSCM0@SYSD): /u/PKSCM0-> ssh -vvv PKSCM0@SYSC.DEVL.COM
OpenSSH_5.0p1, OpenSSL 1.0.1c 10 May 2012
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: Reading configuration data /etc/ssh/zos_ssh_config
debug3: RNG is ready, skipping seeding
debug1: zsshSmfSetConnSmfStatus: changing SMF status from 0 to 83
debug1: Rhosts Authentication disabled, originating port will not be trusted.
debug2: ssh_connect: needpriv 0
debug1: Connecting to SYSC.DEVL.COM [172.18.1.3] port 22.
debug1: Connection established.
debug1: cipher_init: none from source OpenSSL
debug1: cipher_init: none from source OpenSSL
debug3: zsshGetpw: passwd name=PKSCM0, uid=10, gid=0, dir=/u/PKSCM0, shell=/bin/sh
debug3: Not a RSA1 key file /u/PKSCM0/.ssh/id_rsa.
debug2: key_type_from_name: unknown key type '-----BEGIN'
debug3: key_read: missing keytype
debug3: key_read: missing whitespace
debug3: key_read: missing whitespace
debug3: key_read: missing whitespace
debug3: key_read: missing whitespace
debug3: key_read: missing whitespace
debug3: key_read: missing whitespace
debug3: key_read: missing whitespace
debug3: key_read: missing whitespace
debug3: key_read: missing whitespace
debug3: key_read: missing whitespace
debug3: key_read: missing whitespace
debug3: key_read: missing whitespace
debug3: key_read: missing whitespace
debug3: key_read: missing whitespace
debug3: key_read: missing whitespace
debug3: key_read: missing whitespace
debug3: key_read: missing whitespace
debug3: key_read: missing whitespace
debug3: key_read: missing whitespace
debug3: key_read: missing whitespace
debug3: key_read: missing whitespace
debug3: key_read: missing whitespace
debug3: key_read: missing whitespace
debug3: key_read: missing whitespace
debug3: key_read: missing whitespace
debug2: key_type_from_name: unknown key type '-----END'
debug3: key_read: missing keytype
debug1: identity file /u/PKSCM0/.ssh/id_rsa type 1
debug3: Not a RSA1 key file /u/PKSCM0/.ssh/id_dsa.
debug2: key_type_from_name: unknown key type '-----BEGIN'
debug3: key_read: missing keytype
debug3: key_read: missing whitespace
debug3: key_read: missing whitespace
debug3: key_read: missing whitespace
debug3: key_read: missing whitespace
debug3: key_read: missing whitespace
debug3: key_read: missing whitespace
debug3: key_read: missing whitespace
debug3: key_read: missing whitespace
debug3: key_read: missing whitespace
debug3: key_read: missing whitespace
debug2: key_type_from_name: unknown key type '-----END'
debug3: key_read: missing keytype
debug1: identity file /u/PKSCM0/.ssh/id_dsa type 2
debug1: Remote protocol version 2.0, remote software version OpenSSH_5.0
debug1: match: OpenSSH_5.0 pat OpenSSH*
debug1: Enabling compatibility mode for protocol 2.0
debug1: Local version string SSH-2.0-OpenSSH_5.0
debug2: fd 3 setting O_NONBLOCK
debug3: RNG is ready, skipping seeding
debug1: SSH2_MSG_KEXINIT sent
debug1: SSH2_MSG_KEXINIT received
debug2: kex_parse_kexinit: diffie-hellman-group-exchange-sha256,diffie-hellman-group-exchange-sha1,diffie-hellman-group14-sha1,diffie-hellman-group1-sha1
debug2: kex_parse_kexinit: ssh-rsa,ssh-dss
debug2: kex_parse_kexinit: aes128-ctr,aes192-ctr,aes256-ctr,arcfour256,arcfour128,aes128-cbc,3des-cbc,blowfish-cbc,cast128-cbc,aes192-cbc,aes256-cbc,arcfour,rijndael-cbc@lysator.liu.se
debug2: kex_parse_kexinit: aes128-ctr,aes192-ctr,aes256-ctr,arcfour256,arcfour128,aes128-cbc,3des-cbc,blowfish-cbc,cast128-cbc,aes192-cbc,aes256-cbc,arcfour,rijndael-cbc@lysator.liu.se
debug2: kex_parse_kexinit: hmac-md5,hmac-sha1,umac-64@openssh.com,hmac-ripemd160,hmac-ripemd160@openssh.com,hmac-sha1-96,hmac-md5-96
debug2: kex_parse_kexinit: hmac-md5,hmac-sha1,umac-64@openssh.com,hmac-ripemd160,hmac-ripemd160@openssh.com,hmac-sha1-96,hmac-md5-96
debug2: kex_parse_kexinit: none,zlib@openssh.com,zlib
debug2: kex_parse_kexinit: none,zlib@openssh.com,zlib
debug2: kex_parse_kexinit:
debug2: kex_parse_kexinit:
debug2: kex_parse_kexinit: first_kex_follows 0
debug2: kex_parse_kexinit: reserved 0
debug2: kex_parse_kexinit: diffie-hellman-group-exchange-sha256,diffie-hellman-group-exchange-sha1,diffie-hellman-group14-sha1,diffie-hellman-group1-sha1
debug2: kex_parse_kexinit: ssh-rsa,ssh-dss
debug2: kex_parse_kexinit: aes128-ctr,aes192-ctr,aes256-ctr,arcfour256,arcfour128,aes128-cbc,3des-cbc,blowfish-cbc,cast128-cbc,aes192-cbc,aes256-cbc,arcfour,rijndael-cbc@lysator.liu.se
debug2: kex_parse_kexinit: aes128-ctr,aes192-ctr,aes256-ctr,arcfour256,arcfour128,aes128-cbc,3des-cbc,blowfish-cbc,cast128-cbc,aes192-cbc,aes256-cbc,arcfour,rijndael-cbc@lysator.liu.se
debug2: kex_parse_kexinit: hmac-md5,hmac-sha1,umac-64@openssh.com,hmac-ripemd160,hmac-ripemd160@openssh.com,hmac-sha1-96,hmac-md5-96
debug2: kex_parse_kexinit: hmac-md5,hmac-sha1,umac-64@openssh.com,hmac-ripemd160,hmac-ripemd160@openssh.com,hmac-sha1-96,hmac-md5-96
debug2: kex_parse_kexinit: none
debug2: kex_parse_kexinit: none
debug2: kex_parse_kexinit:
debug2: kex_parse_kexinit:
debug2: kex_parse_kexinit: first_kex_follows 0
debug2: kex_parse_kexinit: reserved 0
debug1: mac_setup_by_id: hmac-md5 from source OpenSSL
debug2: mac_setup: found hmac-md5
debug1: kex: server->client aes128-ctr hmac-md5 none
debug1: mac_setup_by_id: hmac-md5 from source OpenSSL
debug2: mac_setup: found hmac-md5
debug1: kex: client->server aes128-ctr hmac-md5 none
debug1: SSH2_MSG_KEX_DH_GEX_REQUEST(1024<1024<8192) sent
debug1: expecting SSH2_MSG_KEX_DH_GEX_GROUP
debug2: dh_gen_key: priv key bits set: 128/256
debug2: bits set: 530/1024
debug1: SSH2_MSG_KEX_DH_GEX_INIT sent
debug1: expecting SSH2_MSG_KEX_DH_GEX_REPLY
debug3: check_host_in_hostfile: filename /u/PKSCM0/.ssh/known_hosts
debug3: check_host_in_hostfile: match line 13
debug3: check_host_in_hostfile: filename /u/PKSCM0/.ssh/known_hosts
debug3: check_host_in_hostfile: match line 3
debug1: Host 'SYSC.DEVL.com' is known and matches the RSA host key.
debug1: Found key in /u/PKSCM0/.ssh/known_hosts:13
debug2: bits set: 525/1024
debug1: ssh_rsa_verify: signature correct
debug2: kex_derive_keys
debug2: set_newkeys: mode 1
debug1: cipher_init: aes128-ctr from source OpenSSL
debug1: SSH2_MSG_NEWKEYS sent
debug1: expecting SSH2_MSG_NEWKEYS
debug2: set_newkeys: mode 0
debug1: cipher_init: aes128-ctr from source OpenSSL
debug1: SSH2_MSG_NEWKEYS received
debug1: SSH2_MSG_SERVICE_REQUEST sent
debug2: service_accept: ssh-userauth
debug1: SSH2_MSG_SERVICE_ACCEPT received
debug2: key: /u/PKSCM0/.ssh/id_rsa (13A63980)
debug2: key: /u/PKSCM0/.ssh/id_dsa (13A66130)
debug3: input_userauth_banner
*******************************************************
* This computer system is for authorized use only. *
* All activity is logged and regularly checked by *
* system administrators. Individuals attempting to *
* connect to, port-scan, deface, hack, or otherwise *
* interfere with any services on this system will be *
* reported. *
*******************************************************
debug1: Authentications that can continue: publickey,password
debug3: start over, passed a different list publickey,password
debug3: preferred publickey,keyboard-interactive,password
debug3: authmethod_lookup publickey
debug3: remaining preferred: keyboard-interactive,password
debug3: authmethod_is_enabled publickey
debug1: Next authentication method: publickey
debug1: Offering public key: /u/PKSCM0/.ssh/id_rsa
debug3: send_pubkey_test
debug2: we sent a publickey packet, wait for reply
debug1: Authentications that can continue: publickey,password
debug1: Offering public key: /u/PKSCM0/.ssh/id_dsa
debug3: send_pubkey_test
debug2: we sent a publickey packet, wait for reply
debug1: Server accepts key: pkalg ssh-dss blen 433
debug2: input_userauth_pk_ok: fp a9:d2:b0:2b:fb:d6:55:60:77:b1:9d:c2:50:76:22:3f
debug3: sign_and_send_pubkey
debug1: read PEM private key done: type DSA
debug1: Authentication succeeded (publickey).
debug1: channel 0: new [client-session]
debug3: ssh_session2_open: channel_new: 0
debug2: channel 0: send open
debug1: Entering interactive session.
debug2: callback start
debug2: client_session2_setup: id 0
debug2: channel 0: request pty-req confirm 0
debug3: tty_make_modes: ospeed 38400
debug3: tty_make_modes: ispeed 38400
debug3: tty_make_modes: 1 3
debug3: tty_make_modes: 2 28
debug3: tty_make_modes: 3 8
debug3: tty_make_modes: 4 21
debug3: tty_make_modes: 5 4
debug3: tty_make_modes: 6 10
debug3: tty_make_modes: 8 17
debug3: tty_make_modes: 9 19
debug3: tty_make_modes: 10 26
debug3: tty_make_modes: 30 0
debug3: tty_make_modes: 31 0
debug3: tty_make_modes: 32 0
debug3: tty_make_modes: 33 0
debug3: tty_make_modes: 34 0
debug3: tty_make_modes: 35 0
debug3: tty_make_modes: 36 1
debug3: tty_make_modes: 37 0
debug3: tty_make_modes: 38 1
debug3: tty_make_modes: 39 0
debug3: tty_make_modes: 40 0
debug3: tty_make_modes: 50 1
debug3: tty_make_modes: 51 1
debug3: tty_make_modes: 52 0
debug3: tty_make_modes: 53 1
debug3: tty_make_modes: 54 1
debug3: tty_make_modes: 55 1
debug3: tty_make_modes: 56 1
debug3: tty_make_modes: 57 0
debug3: tty_make_modes: 58 0
debug3: tty_make_modes: 59 0
debug3: tty_make_modes: 70 1
debug3: tty_make_modes: 71 0
debug3: tty_make_modes: 72 1
debug3: tty_make_modes: 73 0
debug3: tty_make_modes: 74 0
debug3: tty_make_modes: 75 1
debug3: tty_make_modes: 90 1
debug3: tty_make_modes: 91 1
debug3: tty_make_modes: 92 0
debug3: tty_make_modes: 93 0
debug2: channel 0: request shell confirm 0
debug2: fd 3 setting TCP_NODELAY
debug2: callback done
debug2: channel 0: open confirm rwindow 0 rmax 32768
debug2: channel 0: rcvd adjust 2097152
(PKSCM0@SYSC): /u/PKSCM0-> exit
debug1: client_input_channel_req: channel 0 rtype exit-status reply 0
debug2: channel 0: rcvd eof
debug2: channel 0: output open -> drain
debug2: channel 0: obuf empty
debug2: channel 0: close_write
debug2: channel 0: output drain -> closed
debug2: channel 0: rcvd close
debug2: channel 0: close_read
debug2: channel 0: input open -> closed
debug3: channel 0: will not send data after close
debug2: channel 0: almost dead
debug2: channel 0: gc: notify user
debug2: channel 0: gc: user detached
debug2: channel 0: send close
debug2: channel 0: is dead
debug2: channel 0: garbage collecting
debug1: channel 0: free: client-session, nchannels 1
debug3: channel 0: status: The following connections are open:
#0 client-session (t4 r0 i3/0 o3/0 fd -1/-1 cfd -1)
debug3: channel 0: close_fds r -1 w -1 e 6 c -1
Connection to SYSC.DEVL.COM closed.
debug1: Transferred: stdin 0, stdout 0, stderr 41 bytes in 5.9 seconds
debug1: Bytes per second: stdin 0.0, stdout 0.0, stderr 6.9
debug1: Exit status 0
Re: Return 102 - todsnÝE¨: CoZClient: Error: no exit code received from CoZServer
OK, so it looks like the SSH connection is working now.
BTW: if you just want to do something as simple as copy a file, you might just use Co:Z SFTP. Co:Z Launcher is intended for distributed processing, which can include file exchange.
Otherwise, try running your Co:Z Launcher job again, but with these tracing options:
//STEP1 EXEC PROC=COZPROC,
// ARGS='-LT,t myuid@linux1.myco.com'
//COZCFG DD *
server-env-COZ_LOG=T,t
agent-options=-LT,t
target-env-COZ_LOG=T,t
//STDIN DD *
set -x
# the rest of your shell script...
//
This will trace all of the components. Run a minimal test job that has these options and then download the entire job log and either attach it of if you prefer email it to info@dovetail.com and we will take a look.
BTW: if you just want to do something as simple as copy a file, you might just use Co:Z SFTP. Co:Z Launcher is intended for distributed processing, which can include file exchange.
Otherwise, try running your Co:Z Launcher job again, but with these tracing options:
//STEP1 EXEC PROC=COZPROC,
// ARGS='-LT,t myuid@linux1.myco.com'
//COZCFG DD *
server-env-COZ_LOG=T,t
agent-options=-LT,t
target-env-COZ_LOG=T,t
//STDIN DD *
set -x
# the rest of your shell script...
//
This will trace all of the components. Run a minimal test job that has these options and then download the entire job log and either attach it of if you prefer email it to info@dovetail.com and we will take a look.
Re: Return 102 - todsnÝE¨: CoZClient: Error: no exit code received from CoZServer
I sent the output in an e/mail since it was large.
Re: Return 102 - todsnÝE¨: CoZClient: Error: no exit code received from CoZServer
I'm not sure I understand what you are trying to do.
What do you have in your //STDIN DD; Is it this? -
//STDIN DD *
set -x
fromdsn -l rdw //PKSCM0.TEST.SYSD.DATA
todsn -ssh PKSCM0@SYSC.DEVL.COM -l rdw //PKSCM0.TEST.FROM.SYSD
//
If so, I don't think that this does what you intended: you probably don't want to start another ssh session from the target system.
If you are trying to read a dataset from the originating z/OS system and write it to the target z/OS system, you probably want this:
Also, you probably don't want to use Co:Z Launcher to just do a file transfer; normally it is used when you want to run a remote program and exchange data at the same time.
If you just wanted to do file transfer with Co:Z SFTP on both sides, you could do the above with:
What do you have in your //STDIN DD; Is it this? -
//STDIN DD *
set -x
fromdsn -l rdw //PKSCM0.TEST.SYSD.DATA
todsn -ssh PKSCM0@SYSC.DEVL.COM -l rdw //PKSCM0.TEST.FROM.SYSD
//
If so, I don't think that this does what you intended: you probably don't want to start another ssh session from the target system.
If you are trying to read a dataset from the originating z/OS system and write it to the target z/OS system, you probably want this:
Code: Select all
//STDIN DD *
set -x
fromdsn -l rdw //PKSCM0.TEST.SYSD.DATA |
todsn -local -l rdw //PKSCM0.TEST.FROM.SYSD
//
If you just wanted to do file transfer with Co:Z SFTP on both sides, you could do the above with:
Code: Select all
//SFTPPUT EXEC PROC=SFTPPROC
//SFTPIN DD *
pwdsn="COZUSER.COZ.SAMPJCL(PW)"
user=myuser
host=myhost
. $script_dir/sftp_connect.sh <<EOB
# source z/OS settings:
lzopts mode=binary,linerule=rdw
# target z/OS settings:
zopts mode=binary,linerule=rdw
zopts recfm=vb,lrecl=222,space=cyl.3.3
put //hlq.source.dsn //hlq.target.dsn
EOB
//
Re: Return 102 - todsnÝE¨: CoZClient: Error: no exit code received from CoZServer
I think I have been suffering from a gross misunderstanding as to the purpose of Data Set Pipes. You mentioned that what I am attempting to do is better suited for Co:Z SFTP. This is certainly the case as I got that working with no issues.
I did get launcher to work when I used the parameters you outlined. i.e. fromdsn -l rdw //PKSCM0.TEST.SYSD.DATA |
todsn -local -l rdw //PKSCM0.TEST.FROM.SYSD
Nevertheless I am going to use Co:Z SFTP.
Thanks for your help.
I did get launcher to work when I used the parameters you outlined. i.e. fromdsn -l rdw //PKSCM0.TEST.SYSD.DATA |
todsn -local -l rdw //PKSCM0.TEST.FROM.SYSD
Nevertheless I am going to use Co:Z SFTP.
Thanks for your help.
Re: Return 102 - todsnÝE¨: CoZClient: Error: no exit code received from CoZServer
The "Dataset Pipes" frameworks are included in Co:Z SFTP. In other words, they share the same code base for being able to "stream" data sets with lots of options.
Here's a component overview:
http://dovetail.com/solutions.html
Co:Z SFTP is just file transfer that is compatible with the SSH2/SFTP RFCs.
See: http://dovetail.com/products/sftp.html
Co:Z Launcher / Dataset Pipes (aka "Hybrid batch) is an environment for running distributed work from z/OS while exchanging data.
For a little overview video, see:
"Introduction to z/OS Hybrid Batch Processing"
at http://dovetail.com/webinars.html
(or direct youtube link: http://www.youtube.com/embed/WlZbN_vs7us )
Here's a component overview:
http://dovetail.com/solutions.html
Co:Z SFTP is just file transfer that is compatible with the SSH2/SFTP RFCs.
See: http://dovetail.com/products/sftp.html
Co:Z Launcher / Dataset Pipes (aka "Hybrid batch) is an environment for running distributed work from z/OS while exchanging data.
For a little overview video, see:
"Introduction to z/OS Hybrid Batch Processing"
at http://dovetail.com/webinars.html
(or direct youtube link: http://www.youtube.com/embed/WlZbN_vs7us )