+ // return the socket to be used, Passive/Active versions are used only by
+ // GetPort()
+ wxSocketBase *GetPort();
+ wxSocketBase *GetPassivePort();
+ wxSocketBase *GetActivePort();
+
+ // helper for GetPort()
+ wxString GetPortCmdArgument(const wxIPV4address& Local, const wxIPV4address& New);
+
+ // accept connection from server in active mode, returns the same socket as
+ // passed in in passive mode
+ wxSocketBase *AcceptIfActive(wxSocketBase *sock);
+
+
+ // internal variables:
+
+ wxString m_lastResult;
+
+ // true if there is an FTP transfer going on
+ bool m_streaming;
+
+ // although this should be set to ASCII by default according to STD9,
+ // we will use BINARY transfer mode by default for backwards compatibility
+ TransferMode m_currentTransfermode;
+
+ bool m_bPassive;
+
+ // following is true when a read or write times out, we then assume
+ // the connection is dead and abort. we avoid additional delays this way
+ bool m_bEncounteredError;
+
+
+ friend class wxInputFTPStream;
+ friend class wxOutputFTPStream;
+
+ DECLARE_DYNAMIC_CLASS_NO_COPY(wxFTP)
+ DECLARE_PROTOCOL(wxFTP)