Opened 12 years ago

Closed 12 years ago

Last modified 11 years ago

#8440 closed Bug report (fixed)

GnuTLS error -54: Error in the pull function

Reported by: Ayush Goyal Owned by:
Priority: normal Component: FileZilla Client
Keywords: gnutls-54 Cc:
Component version: Operating system type: Linux
Operating system version: Archlinux

Description

We have a hosting setup where we allow ftp using ftps. On one of our server while connecting over ftp we encounter following error.

This problem has not been encountered on any other server and we have many of them having same ftp setup/configuration.

This problem occurs with version 3.6,3.6.0.2 and 3.6.0.1 on archlinux.but on downgrading to version 3.5.3 there was no such problem.

I also found that one of our user on windows xp using version 3.3.2.1 also encountered this error.

This error was not encountered when using other ftp clients namely fireftp and coreftp.

I also tried downgrading gnutls but it didnt helped the problem persisted.

Status:	Resolving address of ******************
Status:	Connecting to *************:21...
Status:	Connection established, waiting for welcome message...
Trace:	CFtpControlSocket::OnReceive()
Response:	220---------- Welcome to Pure-FTPd [privsep] [TLS] ----------
Response:	220-You are user number 6 of 150 allowed.
Response:	220-Local time is now 12:16. Server port: 21.
Response:	220-This is a private system - No anonymous login
Response:	220-IPv6 connections are also welcome on this server.
Response:	220 You will be disconnected after 5 minutes of inactivity.
Trace:	CFtpControlSocket::SendNextCommand()
Command:	AUTH TLS
Trace:	CFtpControlSocket::OnReceive()
Response:	234 AUTH TLS OK.
Status:	Initializing TLS...
Trace:	CTlsSocket::Handshake()
Trace:	CTlsSocket::ContinueHandshake()
Trace:	CTlsSocket::OnSend()
Trace:	CTlsSocket::OnRead()
Trace:	CTlsSocket::ContinueHandshake()
Trace:	CTlsSocket::OnRead()
Trace:	CTlsSocket::ContinueHandshake()
Trace:	TLS Handshake successful
Trace:	Cipher: AES-256-CBC, MAC: SHA1
Status:	Verifying certificate...
Trace:	CFtpControlSocket::SendNextCommand()
Command:	USER *******
Status:	TLS/SSL connection established.
Trace:	CTlsSocket::OnRead()
Trace:	CFtpControlSocket::OnReceive()
Response:	331 User migrate OK. Password required
Trace:	CFtpControlSocket::SendNextCommand()
Command:	PASS ************
Trace:	CTlsSocket::OnRead()
Trace:	CFtpControlSocket::OnReceive()
Response:	230 OK. Current restricted directory is /
Status:	Server does not support non-ASCII characters.
Trace:	CFtpControlSocket::SendNextCommand()
Command:	PBSZ 0
Trace:	CTlsSocket::OnRead()
Trace:	CFtpControlSocket::OnReceive()
Response:	200 PBSZ=0
Trace:	CFtpControlSocket::SendNextCommand()
Command:	PROT P
Trace:	CTlsSocket::OnRead()
Trace:	CFtpControlSocket::OnReceive()
Response:	200 Data protection level set to "private"
Status:	Connected
Trace:	CFtpControlSocket::ResetOperation(0)
Trace:	CControlSocket::ResetOperation(0)
Trace:	CFileZillaEnginePrivate::ResetOperation(0)
Trace:	Measured latency of 23 ms
Status:	Retrieving directory listing...
Trace:	CFtpControlSocket::SendNextCommand()
Trace:	CFtpControlSocket::ChangeDirSend()
Command:	PWD
Trace:	CTlsSocket::OnRead()
Trace:	CFtpControlSocket::OnReceive()
Response:	257 "/" is your current location
Trace:	CFtpControlSocket::ResetOperation(0)
Trace:	CControlSocket::ResetOperation(0)
Trace:	CFtpControlSocket::ParseSubcommandResult(0)
Trace:	CFtpControlSocket::ListSubcommandResult()
Trace:	  state = 1
Trace:	CFtpControlSocket::SendNextCommand()
Trace:	CFtpControlSocket::TransferSend()
Trace:	  state = 1
Command:	TYPE I
Trace:	CTlsSocket::OnRead()
Trace:	CFtpControlSocket::OnReceive()
Response:	200 TYPE is now 8-bit binary
Trace:	CFtpControlSocket::TransferParseResponse()
Trace:	  code = 2
Trace:	  state = 1
Trace:	CFtpControlSocket::SendNextCommand()
Trace:	CFtpControlSocket::TransferSend()
Trace:	  state = 2
Command:	PASV
Trace:	CTlsSocket::OnRead()
Trace:	CFtpControlSocket::OnReceive()
Response:	227 Entering Passive Mode (**************,189)
Trace:	CFtpControlSocket::TransferParseResponse()
Trace:	  code = 2
Trace:	  state = 2
Trace:	CFtpControlSocket::SendNextCommand()
Trace:	CFtpControlSocket::TransferSend()
Trace:	  state = 4
Command:	MLSD
Trace:	CTransferSocket::OnConnect
Trace:	CTlsSocket::Handshake()
Trace:	Trying to resume existing TLS session.
Trace:	CTlsSocket::ContinueHandshake()
Trace:	CTlsSocket::OnSend()
Trace:	CTlsSocket::OnSend()
Trace:	CTlsSocket::OnRead()
Trace:	CFtpControlSocket::OnReceive()
Response:	150 Accepted data connection
Trace:	CFtpControlSocket::TransferParseResponse()
Trace:	  code = 1
Trace:	  state = 4
Trace:	CFtpControlSocket::SendNextCommand()
Trace:	CFtpControlSocket::TransferSend()
Trace:	  state = 5
Trace:	CTlsSocket::OnRead()
Trace:	CTlsSocket::ContinueHandshake()
Trace:	CTlsSocket::Failure(-54, 103)
Error:	GnuTLS error -54: Error in the pull function.
Trace:	CTransferSocket::OnClose(103)
Error:	Transfer connection interrupted: ECONNABORTED - Connection aborted
Trace:	CTransferSocket::TransferEnd(3)
Trace:	CFtpControlSocket::TransferEnd()
Trace:	CTlsSocket::OnRead()
Trace:	CTlsSocket::Failure(-110, 103)
Error:	GnuTLS error -110: The TLS connection was non-properly terminated.
Trace:	CRealControlSocket::OnClose(103)
Error:	Disconnected from server: ECONNABORTED - Connection aborted
Trace:	CControlSocket::DoClose(64)
Trace:	CFtpControlSocket::ResetOperation(66)
Trace:	CControlSocket::ResetOperation(66)
Trace:	CFtpControlSocket::ResetOperation(66)
Trace:	CControlSocket::ResetOperation(66)
Error:	Failed to retrieve directory listing
Trace:	CFileZillaEnginePrivate::ResetOperation(66)
Trace:	CControlSocket::DoClose(64)
Trace:	CControlSocket::DoClose(64)

Change History (4)

comment:1 by Alexander Schuch, 12 years ago

Keywords: gnutls-54 added; gnutls error -54 removed

comment:2 by Tim Kosse, 12 years ago

Status: newmoreinfo

Are you still seeing this problem with FileZilla 3.7.0.1?

comment:3 by Ayush Goyal, 12 years ago

Status: moreinfonew

not seeing this problem at my end anymore.
I will report again, if I encounter this issue again.

comment:4 by Alexander Schuch, 12 years ago

Resolution: fixed
Status: newclosed

So this problem is considered fixed. If you encounter it again, please feel free to re-open this issue to let us know. Thank you.

Note: See TracTickets for help on using tickets.