X-Git-Url: http://git.osdn.net/view?a=blobdiff_plain;f=socketwrapper.h;h=818ef0fef678539fa928f170d26c605cdaf56629;hb=refs%2Fheads%2F1.98g;hp=50a4161b466838f3fca239fee088055799f2b356;hpb=dbcd3f7827d14ef6a6c24645c5ae28bdeeb01ad9;p=ffftp%2Fffftp.git diff --git a/socketwrapper.h b/socketwrapper.h index 50a4161..818ef0f 100644 --- a/socketwrapper.h +++ b/socketwrapper.h @@ -1,29 +1,47 @@ -// socketwrapper.h -// Copyright (C) 2011 Suguru Kawamoto -// ソケットラッパー - -#ifndef __SOCKETWRAPPER_H__ -#define __SOCKETWRAPPER_H__ - -#define USE_OPENSSL - -typedef BOOL (__stdcall* LPSSLTIMEOUTCALLBACK)(); - -BOOL LoadOpenSSL(); -void FreeOpenSSL(); -BOOL IsOpenSSLLoaded(); -void SetSSLTimeoutCallback(DWORD Timeout, LPSSLTIMEOUTCALLBACK pCallback); -BOOL AttachSSL(SOCKET s); -BOOL DetachSSL(SOCKET s); -BOOL IsSSLAttached(SOCKET s); -SOCKET socketS(int af, int type, int protocol); -int bindS(SOCKET s, const struct sockaddr *addr, int namelen); -int listenS(SOCKET s, int backlog); -SOCKET acceptS(SOCKET s, struct sockaddr *addr, int *addrlen); -int connectS(SOCKET s, const struct sockaddr *name, int namelen); -int closesocketS(SOCKET s); -int sendS(SOCKET s, const char * buf, int len, int flags); -int recvS(SOCKET s, char * buf, int len, int flags); - -#endif - +// socketwrapper.h +// Copyright (C) 2011 Suguru Kawamoto +// ソケットラッパー + +#ifndef __SOCKETWRAPPER_H__ +#define __SOCKETWRAPPER_H__ + +#include +#include + +#define USE_OPENSSL + +typedef BOOL (__stdcall* LPSSLTIMEOUTCALLBACK)(BOOL*); +typedef BOOL (__stdcall* LPSSLCONFIRMCALLBACK)(BOOL*, BOOL, LPCSTR, LPCSTR); + +BOOL LoadOpenSSL(); +void FreeOpenSSL(); +BOOL IsOpenSSLLoaded(); +void SetSSLTimeoutCallback(DWORD Timeout, LPSSLTIMEOUTCALLBACK pCallback); +void SetSSLConfirmCallback(LPSSLCONFIRMCALLBACK pCallback); +BOOL SetSSLRootCertificate(const void* pData, DWORD Length); +BOOL IsHostNameMatched(LPCSTR HostName, LPCSTR CommonName); +BOOL AttachSSL(SOCKET s, SOCKET parent, BOOL* pbAborted); +BOOL DetachSSL(SOCKET s); +BOOL IsSSLAttached(SOCKET s); +SOCKET FTPS_socket(int af, int type, int protocol); +int FTPS_bind(SOCKET s, const struct sockaddr *addr, int namelen); +int FTPS_listen(SOCKET s, int backlog); +SOCKET FTPS_accept(SOCKET s, struct sockaddr *addr, int *addrlen); +int FTPS_connect(SOCKET s, const struct sockaddr *name, int namelen); +int FTPS_closesocket(SOCKET s); +int FTPS_send(SOCKET s, const char * buf, int len, int flags); +int FTPS_recv(SOCKET s, char * buf, int len, int flags); + +HANDLE WSAAsyncGetHostByNameIPv6(HWND hWnd, u_int wMsg, const char * name, char * buf, int buflen, short Family); +int WSACancelAsyncRequestIPv6(HANDLE hAsyncTaskHandle); +char* AddressToStringIPv4(char* str, void* in); +char* AddressToStringIPv6(char* str, void* in6); +char* inet6_ntoa(struct in6_addr in6); +struct in6_addr inet6_addr(const char* cp); +HANDLE WSAAsyncGetHostByNameM(HWND hWnd, u_int wMsg, const char * name, char * buf, int buflen); +HANDLE WSAAsyncGetHostByNameIPv6M(HWND hWnd, u_int wMsg, const char * name, char * buf, int buflen, short Family); + +extern const struct in6_addr IN6ADDR_NONE; + +#endif +