Added GSocket for Unix (only GTK for the moment)

Updated wxSocket to use GSocket API
Added a progress bar to client.cpp
Added CopyTo to wxMemoryOutputStream to copy the internal buffer to a specified buffer.
Various changes/fixes to the high-level protocols FTP/HTTP
Various Unicode fixes
Removed sckint.*


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3085 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Guilhem Lavaux
1999-07-22 17:51:54 +00:00
parent e4d18e7f60
commit a324a7bccf
30 changed files with 2082 additions and 1905 deletions

View File

@@ -20,52 +20,42 @@
#if wxUSE_SOCKETS
#if defined(__WINDOWS__) && defined(WXSOCK_INTERNAL)
#include <winsock.h>
#elif defined(__UNIX__) && defined(WXSOCK_INTERNAL)
#include <sys/types.h>
#include <sys/socket.h>
#include <netinet/in.h>
#endif
#include "wx/string.h"
#include "gsocket.h"
class WXDLLEXPORT wxSockAddress : public wxObject {
DECLARE_ABSTRACT_CLASS(wxSockAddress)
public:
typedef enum { IPV4=1, IPV6=2, UNIX=3 } Addr;
wxSockAddress() {};
virtual ~wxSockAddress() {};
wxSockAddress();
virtual ~wxSockAddress();
virtual void Clear() = 0;
virtual void Build(struct sockaddr*& addr, size_t& len) = 0;
virtual void Disassemble(struct sockaddr *addr, size_t len) = 0;
virtual int SockAddrLen() = 0;
virtual int GetFamily() = 0;
virtual void Clear();
virtual int Type() = 0;
GAddress *GetAddress() const { return m_address; }
void SetAddress(GAddress *address);
const wxSockAddress& operator =(const wxSockAddress& addr);
void CopyObject(wxObject& dest) const;
protected:
GAddress *m_address;
};
class WXDLLEXPORT wxIPV4address : public wxSockAddress {
DECLARE_DYNAMIC_CLASS(wxIPV4address)
private:
struct sockaddr_in *m_addr;
public:
wxIPV4address();
virtual ~wxIPV4address();
virtual void Clear();
// const wxSockAddress& operator =(const wxSockAddress& addr);
virtual bool Hostname(const wxString& name);
virtual bool Hostname(unsigned long addr);
virtual bool Service(const wxString& name);
virtual bool Service(unsigned short port);
virtual bool LocalHost();
bool Hostname(const wxString& name);
bool Hostname(unsigned long addr);
bool Service(const wxString& name);
bool Service(unsigned short port);
bool LocalHost();
wxString Hostname();
unsigned short Service();
@@ -73,8 +63,6 @@ public:
void Build(struct sockaddr*& addr, size_t& len);
void Disassemble(struct sockaddr *addr, size_t len);
inline int SockAddrLen();
inline int GetFamily();
inline int Type() { return wxSockAddress::IPV4; }
};
@@ -87,9 +75,6 @@ public:
wxIPV6address();
~wxIPV6address();
void Clear();
// const wxSockAddress& operator =(const wxSockAddress& addr);
bool Hostname(const wxString& name);
bool Hostname(unsigned char addr[16]);
bool Service(const wxString& name);
@@ -99,11 +84,6 @@ public:
wxString Hostname() const;
unsigned short Service() const;
void Build(struct sockaddr*& addr, size_t& len);
void Disassemble(struct sockaddr *addr, size_t len);
inline int SockAddrLen();
inline int GetFamily();
inline int Type() { return wxSockAddress::IPV6; }
};
#endif
@@ -119,17 +99,9 @@ public:
wxUNIXaddress();
~wxUNIXaddress();
void Clear();
// const wxSockAddress& operator =(const wxSockAddress& addr);
void Filename(const wxString& name);
wxString Filename();
void Build(struct sockaddr*& addr, size_t& len);
void Disassemble(struct sockaddr *addr, size_t len);
inline int SockAddrLen();
inline int GetFamily();
inline int Type() { return wxSockAddress::UNIX; }
};
#endif