2 // Copyright (C) 2011 Suguru Kawamoto
\r
5 #ifndef __SOCKETWRAPPER_H__
\r
6 #define __SOCKETWRAPPER_H__
\r
8 #include <ws2tcpip.h>
\r
13 typedef BOOL (__stdcall* LPSSLTIMEOUTCALLBACK)(BOOL*);
\r
14 typedef BOOL (__stdcall* LPSSLCONFIRMCALLBACK)(BOOL*, BOOL, LPCSTR, LPCSTR);
\r
18 BOOL IsOpenSSLLoaded();
\r
19 void SetSSLTimeoutCallback(DWORD Timeout, LPSSLTIMEOUTCALLBACK pCallback);
\r
20 void SetSSLConfirmCallback(LPSSLCONFIRMCALLBACK pCallback);
\r
21 BOOL SetSSLRootCertificate(const void* pData, DWORD Length);
\r
22 BOOL IsHostNameMatched(LPCSTR HostName, LPCSTR CommonName);
\r
23 BOOL AttachSSL(SOCKET s, SOCKET parent, BOOL* pbAborted);
\r
24 BOOL DetachSSL(SOCKET s);
\r
25 BOOL IsSSLAttached(SOCKET s);
\r
26 SOCKET FTPS_socket(int af, int type, int protocol);
\r
27 int FTPS_bind(SOCKET s, const struct sockaddr *addr, int namelen);
\r
28 int FTPS_listen(SOCKET s, int backlog);
\r
29 SOCKET FTPS_accept(SOCKET s, struct sockaddr *addr, int *addrlen);
\r
30 int FTPS_connect(SOCKET s, const struct sockaddr *name, int namelen);
\r
31 int FTPS_closesocket(SOCKET s);
\r
32 int FTPS_send(SOCKET s, const char * buf, int len, int flags);
\r
33 int FTPS_recv(SOCKET s, char * buf, int len, int flags);
\r
35 HANDLE WSAAsyncGetHostByNameIPv6(HWND hWnd, u_int wMsg, const char * name, char * buf, int buflen, short Family);
\r
36 int WSACancelAsyncRequestIPv6(HANDLE hAsyncTaskHandle);
\r
37 char* AddressToStringIPv6(char* str, void* in6);
\r
38 char* inet6_ntoa(struct in6_addr in6);
\r
39 struct in6_addr inet6_addr(const char* cp);
\r
40 HANDLE WSAAsyncGetHostByNameM(HWND hWnd, u_int wMsg, const char * name, char * buf, int buflen);
\r
41 HANDLE WSAAsyncGetHostByNameIPv6M(HWND hWnd, u_int wMsg, const char * name, char * buf, int buflen, short Family);
\r
45 BOOL IsPuTTYLoaded();
\r
46 BOOL IsSFTPAttached(SOCKET s);
\r
47 SOCKET SFTP_socket(int af, int type, int protocol);
\r
48 int SFTP_bind(SOCKET s, const struct sockaddr *addr, int namelen);
\r
49 int SFTP_listen(SOCKET s, int backlog);
\r
50 SOCKET SFTP_accept(SOCKET s, struct sockaddr *addr, int *addrlen);
\r
51 int SFTP_connect(SOCKET s, const struct sockaddr *name, int namelen);
\r
52 int SFTP_closesocket(SOCKET s);
\r
53 int SFTP_send(SOCKET s, const char * buf, int len, int flags);
\r
54 int SFTP_recv(SOCKET s, char * buf, int len, int flags);
\r
55 BOOL SFTP_SetTimeoutCallback(SOCKET s, void* pCallback);
\r
56 SOCKET SFTP_GetDataHandle(SOCKET s, int af, int type, int protocol);
\r
57 BOOL SFTP_SetFilePosition(SOCKET s, LONGLONG Position);
\r