Opened 11 years ago

Last modified 6 years ago

#3684 closed Bug report

TLS packet with unexpected length

Reported by: smann48823 Owned by:
Priority: normal Component: Other
Keywords: Cc: smann48823, Tim Kosse
Component version: Operating system type: Other
Operating system version: z/OS 1.9

Description

FileZilla 3.1.1.1

LIST command to z/OS FTP server fails (explicit SSL/TLS connection).

09:05:10 Command: SYST
09:05:10 Trace: CTlsSocket::OnRead()
09:05:10 Trace: CFtpControlSocket::OnReceive()
09:05:10 Response: 215 MVS is the operating system of this server. FTP Server is running on z/OS.
09:05:10 Trace: CFtpControlSocket::SendNextCommand()
09:05:10 Command: FEAT
09:05:10 Trace: CTlsSocket::OnRead()
09:05:10 Trace: CFtpControlSocket::OnReceive()
09:05:10 Response: 211- Extensions supported
09:05:10 Trace: CTlsSocket::OnRead()
09:05:10 Trace: CFtpControlSocket::OnReceive()
09:05:10 Response: AUTH TLS
09:05:10 Response: PBSZ
09:05:10 Response: PROT
09:05:10 Response: 211 End
09:05:10 Trace: CFtpControlSocket::SendNextCommand()
09:05:10 Command: PBSZ 0
09:05:10 Trace: CTlsSocket::OnRead()
09:05:10 Trace: CFtpControlSocket::OnReceive()
09:05:10 Response: 200 Protection buffer size accepted
09:05:10 Trace: CFtpControlSocket::SendNextCommand()
09:05:10 Command: PROT P
09:05:10 Trace: CTlsSocket::OnRead()
09:05:10 Trace: CFtpControlSocket::OnReceive()
09:05:10 Response: 200 Data connection protection set to private
09:05:10 Status: Connected
09:05:10 Trace: CFtpControlSocket::ResetOperation(0)
09:05:10 Trace: CControlSocket::ResetOperation(0)
09:05:10 Status: Retrieving directory listing...
09:05:10 Trace: CFtpControlSocket::SendNextCommand()
09:05:10 Trace: CFtpControlSocket::ChangeDirSend()
09:05:10 Command: CWD 'xmit.payg'
09:05:10 Trace: CTlsSocket::OnRead()
09:05:10 Trace: CFtpControlSocket::OnReceive()
09:05:10 Response: 250 "XMIT.PAYG." is the working directory name prefix.
09:05:10 Trace: CFtpControlSocket::SendNextCommand()
09:05:10 Trace: CFtpControlSocket::ChangeDirSend()
09:05:10 Command: PWD
09:05:10 Trace: CTlsSocket::OnRead()
09:05:10 Trace: CFtpControlSocket::OnReceive()
09:05:10 Response: 257 "'XMIT.PAYG.'" is working directory.
09:05:10 Trace: CFtpControlSocket::ResetOperation(0)
09:05:10 Trace: CControlSocket::ResetOperation(0)
09:05:10 Trace: CFtpControlSocket::ParseSubcommandResult(0)
09:05:10 Trace: CFtpControlSocket::ListSubcommandResult()
09:05:10 Trace: state = 1
09:05:10 Trace: CFtpControlSocket::SendNextCommand()
09:05:10 Trace: CFtpControlSocket::TransferSend()
09:05:10 Trace: state = 1
09:05:10 Command: TYPE I
09:05:10 Trace: CTlsSocket::OnRead()
09:05:10 Trace: CFtpControlSocket::OnReceive()
09:05:10 Response: 200 Representation type is Image
09:05:10 Trace: CFtpControlSocket::TransferParseResponse()
09:05:10 Trace: code = 2
09:05:10 Trace: state = 1
09:05:10 Trace: CFtpControlSocket::SendNextCommand()
09:05:10 Trace: CFtpControlSocket::TransferSend()
09:05:10 Trace: state = 2
09:05:10 Command: PORT 35,8,115,247,9,74
09:05:10 Trace: CTlsSocket::OnRead()
09:05:10 Trace: CFtpControlSocket::OnReceive()
09:05:10 Response: 200 Port request OK.
09:05:10 Trace: CFtpControlSocket::TransferParseResponse()
09:05:10 Trace: code = 2
09:05:10 Trace: state = 2
09:05:10 Trace: CFtpControlSocket::SendNextCommand()
09:05:10 Trace: CFtpControlSocket::TransferSend()
09:05:10 Trace: state = 4
09:05:10 Command: LIST
09:05:10 Trace: CTransferSocket::OnAccept(0)
09:05:10 Trace: CTransferSocket::OnConnect
09:05:10 Trace: CTlsSocket::Handshake()
09:05:10 Trace: CTlsSocket::OnRead()
09:05:10 Trace: CTlsSocket::Handshake()
09:05:10 Trace: CTlsSocket::OnSend()
09:05:10 Trace: CTlsSocket::OnRead()
09:05:10 Trace: CFtpControlSocket::OnReceive()
09:05:10 Response: 125 List started OK
09:05:10 Trace: CFtpControlSocket::TransferParseResponse()
09:05:10 Trace: code = 1
09:05:10 Trace: state = 4
09:05:10 Trace: CFtpControlSocket::SendNextCommand()
09:05:10 Trace: CFtpControlSocket::TransferSend()
09:05:10 Trace: state = 5
09:05:10 Trace: CTlsSocket::OnRead()
09:05:10 Trace: CTlsSocket::Handshake()
09:05:11 Trace: CTlsSocket::OnRead()
09:05:11 Trace: CTlsSocket::Handshake()
09:05:11 Trace: CTlsSocket::OnRead()
09:05:11 Trace: CTlsSocket::Handshake()
09:05:11 Trace: Handshake successful
09:05:11 Trace: Cipher: 3DES-CBC, MAC: SHA1
09:05:11 Trace: CTransferSocket::OnConnect
09:05:11 Trace: CTlsSocket::OnRead()
09:05:11 Trace: CTlsSocket::OnRead()
09:05:11 Trace: CTlsSocket::OnSocketEvent(): close event received
09:05:11 Trace: CTransferSocket::OnReceive(), m_transferMode=0
09:05:11 Listing: Volume Unit Referred Ext Used Recfm Lrecl BlkSz Dsorg Dsname
09:05:11 Listing: PRD115 3390 2008/08/12 1 2 FB 102 27948 PS FTP.DUES1585.DK
09:05:11 Listing: PRD186 3390 2008/08/12 1 1 FB 102 27948 PS FTP.DUES999.DK
09:05:11 Listing: PRD141 3390 2008/08/01 1 3 FB 420 27720 PS FTP.NEWHIRE.DK
09:05:11 Listing: PRD187 3390 2008/08/12 1 1 FB 102 27948 PS FTP.RPTVISON.DK
09:05:11 Listing: PRD123 3390 2008/08/01 1 1 FB 130 27950 PS FTP.SSAEVS.DK
09:05:11 Listing: PRD187 3390 2008/07/28 1 75 FB 130 27950 PS FTP.SSAEVSW2.DK
09:05:11 Trace: GnuTLS error -9: A TLS packet with unexpected length was received.
09:05:11 Status: Server did not properly shut down TLS connection
09:05:11 Error: Could not read from transfer socket: ECONNABORTED - Connection aborted
09:05:11 Trace: CTransferSocket::TransferEnd(3)
09:05:11 Trace: Skipping socket event 5, no socket or id mismatch.
09:05:11 Trace: CFtpControlSocket::TransferEnd()
09:05:11 Trace: CTlsSocket::OnRead()
09:05:11 Trace: CFtpControlSocket::OnReceive()
09:05:11 Response: 250 List completed successfully.
09:05:11 Trace: CFtpControlSocket::TransferParseResponse()
09:05:11 Trace: code = 2
09:05:11 Trace: state = 7
09:05:11 Trace: CFtpControlSocket::ResetOperation(2)
09:05:11 Trace: CControlSocket::ResetOperation(2)
09:05:11 Trace: CFtpControlSocket::ParseSubcommandResult(2)
09:05:11 Trace: CFtpControlSocket::ListSubcommandResult()
09:05:11 Trace: state = 2
09:05:11 Trace: CFtpControlSocket::ResetOperation(2)
09:05:11 Trace: CControlSocket::ResetOperation(2)
09:05:11 Error: Failed to retrieve directory listing
09:10:11 Trace: CTlsSocket::OnRead()
09:10:11 Trace: GnuTLS error -9: A TLS packet with unexpected length was received.
09:10:11 Status: Server did not properly shut down TLS connection
09:10:11 Trace: CTlsSocket::OnSocketEvent(): close event received
09:10:11 Trace: CRealControlSocket::OnClose(10053)
09:10:11 Error: Disconnected from server: ECONNABORTED - Connection aborted
09:10:11 Trace: CFtpControlSocket::ResetOperation(66)
09:10:11 Trace: CControlSocket::ResetOperation(66)

Change History (2)

comment:2 Changed 10 years ago by mvsdino

Operating system type: Other
Operating system version: z/OS 1.9

z/OS 1.9 and FileZilla Client 3.2.6.1:

Applied Fix UK43295 (APAR PK77240) to z/OS 1.9 FTPD Server

Coded Parm in FTP.DATA of my z/OS-Server [in our case SYS1.TCPPARMS(FTPDATA)]:
TLSRFCLEVEL RFC4217

Message "Could not read from transfer socket: ECONNABORTED - Connection aborted"
while trying to list z/OS-Directory is gone.

In another system without PK77240, TLSRFCLEVEL RFC4217 does not correct the problem.

Note: See TracTickets for help on using tickets.