Richard W.M. Jones' 5 patches that enables libssh2 to get cross-compiled with

mingw
This commit is contained in:
Daniel Stenberg
2008-11-10 16:48:41 +00:00
parent 95b73812e7
commit 5438cffd9a
17 changed files with 114 additions and 44 deletions

View File

@@ -41,6 +41,14 @@
#define LIBSSH2_LIBRARY
#include "libssh2_config.h"
#ifdef HAVE_WINDOWS_H
#include <windows.h>
#endif
#ifdef HAVE_WS2TCPIP_H
#include <ws2tcpip.h>
#endif
/* The following CPP block should really only be in session.c and
packet.c. However, AIX have #define's for 'events' and 'revents'
and we are using those names in libssh2.h, so we need to include
@@ -70,6 +78,28 @@
#include "libssh2_publickey.h"
#include "libssh2_sftp.h"
/* Provide iovec / writev on WIN32 platform. */
#ifdef WIN32
/* same as WSABUF */
struct iovec {
u_long iov_len;
char *iov_base;
};
#define inline __inline
static inline int writev(int sock, struct iovec *iov, int nvecs)
{
DWORD ret;
if (WSASend(sock, (LPWSABUF)iov, nvecs, &ret, 0, NULL, NULL) == 0) {
return ret;
}
return -1;
}
#endif /* WIN32 */
/* Needed for struct iovec on some platforms */
#ifdef HAVE_SYS_UIO_H
#include <sys/uio.h>