Allow specifying non default port for wxFTP connections.
Add a wxFTP::Connect() overload taking a port number. Also specify the default port (21) explicitly if resolving "ftp" service name failed. Closes #12145. git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64621 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -35,8 +35,9 @@ public:
|
|||||||
virtual ~wxFTP();
|
virtual ~wxFTP();
|
||||||
|
|
||||||
// Connecting and disconnecting
|
// Connecting and disconnecting
|
||||||
bool Connect(const wxSockAddress& addr, bool wait = true);
|
virtual bool Connect(const wxSockAddress& addr, bool wait = true);
|
||||||
bool Connect(const wxString& host);
|
virtual bool Connect(const wxString& host) { return Connect(host, 0); }
|
||||||
|
virtual bool Connect(const wxString& host, unsigned short port);
|
||||||
|
|
||||||
// disconnect
|
// disconnect
|
||||||
virtual bool Close();
|
virtual bool Close();
|
||||||
|
@@ -112,6 +112,22 @@ public:
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
//@{
|
||||||
|
/**
|
||||||
|
Connect to the FTP server to default port (21) of the specified @a host.
|
||||||
|
*/
|
||||||
|
virtual bool Connect(const wxString& host);
|
||||||
|
|
||||||
|
/**
|
||||||
|
Connect to the FTP server to any port of the specified @a host.
|
||||||
|
By default (@a port = 0), connection is made to default FTP port (21)
|
||||||
|
of the specified @a host.
|
||||||
|
|
||||||
|
@since 2.9.1
|
||||||
|
*/
|
||||||
|
virtual bool Connect(const wxString& host, unsigned short port);
|
||||||
|
//@}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@name Functions for managing the FTP connection
|
@name Functions for managing the FTP connection
|
||||||
*/
|
*/
|
||||||
|
@@ -155,11 +155,15 @@ bool wxFTP::Connect(const wxSockAddress& addr, bool WXUNUSED(wait))
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
bool wxFTP::Connect(const wxString& host)
|
bool wxFTP::Connect(const wxString& host, unsigned short port)
|
||||||
{
|
{
|
||||||
wxIPV4address addr;
|
wxIPV4address addr;
|
||||||
addr.Hostname(host);
|
addr.Hostname(host);
|
||||||
addr.Service(wxT("ftp"));
|
|
||||||
|
if ( port )
|
||||||
|
addr.Service(port);
|
||||||
|
else if (!addr.Service(wxT("ftp")))
|
||||||
|
addr.Service(21);
|
||||||
|
|
||||||
return Connect(addr);
|
return Connect(addr);
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user