1
0
mirror of https://github.com/libssh2/libssh2.git synced 2025-07-29 13:01:14 +03:00

example, tests: address compiler warnings

Fix or silence all C compiler warnings discovered with (or without)
`PICKY_COMPILER=ON` (in CMake). This means all warnings showing up in
CI (gcc, clang, MSVS 2013/2015), in local tests on macOS (clang 14) and
Windows cross-builds using gcc (12) and llvm/clang (14/15).

Also fix the expression `nread -= nread` in `sftp_RW_nonblock.c`.

Cherry-picked from: #846
Closes #861
This commit is contained in:
Viktor Szakats
2023-03-20 15:46:12 +00:00
parent ec0a51db1f
commit b13936bd6a
47 changed files with 343 additions and 262 deletions

View File

@ -11,6 +11,8 @@
#include <windows.h>
#include <winsock2.h>
#include <ws2tcpip.h>
#define recv(s, b, l, f) recv((s), (b), (int)(l), (f))
#define send(s, b, l, f) send((s), (b), (int)(l), (f))
#else
#include <sys/socket.h>
#include <netinet/in.h>
@ -161,7 +163,8 @@ int main(int argc, char *argv[])
fprintf(stderr, "\n");
/* check what authentication methods are available */
userauthlist = libssh2_userauth_list(session, username, strlen(username));
userauthlist = libssh2_userauth_list(session, username,
(unsigned int)strlen(username));
fprintf(stderr, "Authentication methods: %s\n", userauthlist);
if(strstr(userauthlist, "password"))
auth |= AUTH_PASSWORD;
@ -261,7 +264,7 @@ int main(int argc, char *argv[])
FD_SET(forwardsock, &fds);
tv.tv_sec = 0;
tv.tv_usec = 100000;
rc = select(forwardsock + 1, &fds, NULL, NULL, &tv);
rc = select((int)(forwardsock + 1), &fds, NULL, NULL, &tv);
if(-1 == rc) {
perror("select");
goto shutdown;
@ -279,15 +282,17 @@ int main(int argc, char *argv[])
}
wr = 0;
while(wr < len) {
i = libssh2_channel_write(channel, buf + wr, len - wr);
if(LIBSSH2_ERROR_EAGAIN == i) {
ssize_t nwritten = libssh2_channel_write(channel,
buf + wr, len - wr);
if(nwritten == LIBSSH2_ERROR_EAGAIN) {
continue;
}
if(i < 0) {
fprintf(stderr, "libssh2_channel_write: %d\n", i);
if(nwritten < 0) {
fprintf(stderr, "libssh2_channel_write: %d\n",
(int)nwritten);
goto shutdown;
}
wr += i;
wr += nwritten;
}
}
for(;;) {
@ -300,12 +305,12 @@ int main(int argc, char *argv[])
}
wr = 0;
while(wr < len) {
i = send(forwardsock, buf + wr, len - wr, 0);
if(i <= 0) {
ssize_t nsent = send(forwardsock, buf + wr, len - wr, 0);
if(nsent <= 0) {
perror("write");
goto shutdown;
}
wr += i;
wr += nsent;
}
if(libssh2_channel_eof(channel)) {
fprintf(stderr, "The server at %s:%d disconnected!\n",

View File

@ -36,9 +36,13 @@
#include <stdio.h>
#include <ctype.h>
#ifdef WIN32
#define write(f, b, c) write((f), (b), (unsigned int)(c))
#endif
int main(int argc, char *argv[])
{
unsigned long hostaddr;
uint32_t hostaddr;
libssh2_socket_t sock;
int i, auth_pw = 1;
struct sockaddr_in sin;
@ -159,20 +163,22 @@ int main(int argc, char *argv[])
while(got < fileinfo.st_size) {
char mem[1024];
int amount = sizeof(mem);
ssize_t nread;
if((fileinfo.st_size -got) < amount) {
amount = (int)(fileinfo.st_size -got);
if((fileinfo.st_size - got) < amount) {
amount = (int)(fileinfo.st_size - got);
}
rc = libssh2_channel_read(channel, mem, amount);
if(rc > 0) {
write(1, mem, rc);
nread = libssh2_channel_read(channel, mem, amount);
if(nread > 0) {
write(1, mem, nread);
}
else if(rc < 0) {
fprintf(stderr, "libssh2_channel_read() failed: %d\n", rc);
else if(nread < 0) {
fprintf(stderr, "libssh2_channel_read() failed: %d\n",
(int)nread);
break;
}
got += rc;
got += nread;
}
libssh2_channel_free(channel);

View File

@ -44,6 +44,10 @@
#include <stdio.h>
#include <ctype.h>
#ifdef WIN32
#define write(f, b, c) write((f), (b), (unsigned int)(c))
#endif
#ifdef HAVE_GETTIMEOFDAY
/* diff in ms */
static long tvdiff(struct timeval newer, struct timeval older)
@ -78,14 +82,14 @@ static int waitsocket(libssh2_socket_t socket_fd, LIBSSH2_SESSION *session)
if(dir & LIBSSH2_SESSION_BLOCK_OUTBOUND)
writefd = &fd;
rc = select(socket_fd + 1, readfd, writefd, NULL, &timeout);
rc = select((int)(socket_fd + 1), readfd, writefd, NULL, &timeout);
return rc;
}
int main(int argc, char *argv[])
{
unsigned long hostaddr;
uint32_t hostaddr;
libssh2_socket_t sock;
int i, auth_pw = 1;
struct sockaddr_in sin;
@ -238,6 +242,7 @@ int main(int argc, char *argv[])
while(got < fileinfo.st_size) {
char mem[1024*24];
ssize_t nread;
do {
int amount = sizeof(mem);
@ -247,15 +252,15 @@ int main(int argc, char *argv[])
}
/* loop until we block */
rc = libssh2_channel_read(channel, mem, amount);
if(rc > 0) {
write(1, mem, rc);
got += rc;
total += rc;
nread = libssh2_channel_read(channel, mem, amount);
if(nread > 0) {
write(1, mem, nread);
got += nread;
total += nread;
}
} while(rc > 0);
} while(nread > 0);
if((rc == LIBSSH2_ERROR_EAGAIN) && (got < fileinfo.st_size)) {
if((nread == LIBSSH2_ERROR_EAGAIN) && (got < fileinfo.st_size)) {
/* this is due to blocking that would occur otherwise
so we loop on this condition */
@ -271,8 +276,7 @@ int main(int argc, char *argv[])
time_ms = tvdiff(end, start);
fprintf(stderr, "Got %ld bytes in %ld ms = %.1f bytes/sec spin: %d\n",
(long)total,
time_ms, total/(time_ms/1000.0), spin);
(long)total, time_ms, (double)total/(time_ms/1000.0), spin);
#else
fprintf(stderr, "Got %ld bytes spin: %d\n", (long)total, spin);
#endif

View File

@ -42,7 +42,7 @@
int main(int argc, char *argv[])
{
unsigned long hostaddr;
uint32_t hostaddr;
libssh2_socket_t sock;
int i, auth_pw = 1;
struct sockaddr_in sin;
@ -171,7 +171,7 @@ int main(int argc, char *argv[])
/* Send a file via scp. The mode parameter must only have permissions! */
channel = libssh2_scp_send(session, scppath, fileinfo.st_mode & 0777,
(unsigned long)fileinfo.st_size);
(size_t)fileinfo.st_size);
if(!channel) {
char *errmsg;
@ -191,16 +191,17 @@ int main(int argc, char *argv[])
ptr = mem;
do {
ssize_t nwritten;
/* write the same data over and over, until error or completion */
rc = libssh2_channel_write(channel, ptr, nread);
if(rc < 0) {
fprintf(stderr, "ERROR %d\n", rc);
nwritten = libssh2_channel_write(channel, ptr, nread);
if(nwritten < 0) {
fprintf(stderr, "ERROR %d\n", (int)nwritten);
break;
}
else {
/* rc indicates how many bytes were written this time */
ptr += rc;
nread -= rc;
/* nwritten indicates how many bytes were written this time */
ptr += nwritten;
nread -= nwritten;
}
} while(nread);

View File

@ -65,14 +65,14 @@ static int waitsocket(libssh2_socket_t socket_fd, LIBSSH2_SESSION *session)
if(dir & LIBSSH2_SESSION_BLOCK_OUTBOUND)
writefd = &fd;
rc = select(socket_fd + 1, readfd, writefd, NULL, &timeout);
rc = select((int)(socket_fd + 1), readfd, writefd, NULL, &timeout);
return rc;
}
int main(int argc, char *argv[])
{
unsigned long hostaddr;
uint32_t hostaddr;
libssh2_socket_t sock;
int i, auth_pw = 1;
struct sockaddr_in sin;
@ -90,7 +90,7 @@ int main(int argc, char *argv[])
char *ptr;
struct stat fileinfo;
time_t start;
long total = 0;
libssh2_struct_stat_size total = 0;
int duration;
size_t prev;
@ -210,7 +210,7 @@ int main(int argc, char *argv[])
/* Send a file via scp. The mode parameter must only have permissions! */
do {
channel = libssh2_scp_send(session, scppath, fileinfo.st_mode & 0777,
(unsigned long)fileinfo.st_size);
(size_t)fileinfo.st_size);
if((!channel) && (libssh2_session_last_errno(session) !=
LIBSSH2_ERROR_EAGAIN)) {
@ -236,22 +236,23 @@ int main(int argc, char *argv[])
prev = 0;
do {
while((rc = libssh2_channel_write(channel, ptr, nread)) ==
ssize_t nwritten;
while((nwritten = libssh2_channel_write(channel, ptr, nread)) ==
LIBSSH2_ERROR_EAGAIN) {
waitsocket(sock, session);
prev = 0;
}
if(rc < 0) {
fprintf(stderr, "ERROR %d total %ld / %d prev %d\n", rc,
total, (int)nread, (int)prev);
if(nwritten < 0) {
fprintf(stderr, "ERROR %d total %ld / %d prev %d\n",
(int)nwritten, (long)total, (int)nread, (int)prev);
break;
}
else {
prev = nread;
/* rc indicates how many bytes were written this time */
nread -= rc;
ptr += rc;
/* nwritten indicates how many bytes were written this time */
nread -= nwritten;
ptr += nwritten;
}
} while(nread);
} while(!nread); /* only continue if nread was drained */
@ -259,7 +260,7 @@ int main(int argc, char *argv[])
duration = (int)(time(NULL)-start);
fprintf(stderr, "%ld bytes in %d seconds makes %.1f bytes/sec\n",
total, duration, total/(double)duration);
(long)total, duration, (double)total / duration);
fprintf(stderr, "Sending EOF\n");
while(libssh2_channel_send_eof(channel) == LIBSSH2_ERROR_EAGAIN);

View File

@ -46,6 +46,10 @@
#pragma warning(disable:4127)
#endif
#ifdef WIN32
#define write(f, b, c) write((f), (b), (unsigned int)(c))
#endif
const char *keyfile1 = "~/.ssh/id_rsa.pub";
const char *keyfile2 = "~/.ssh/id_rsa";
const char *username = "username";
@ -90,7 +94,7 @@ static void kbd_callback(const char *name, int name_len,
buf[n] = 0;
responses[i].text = strdup(buf);
responses[i].length = n;
responses[i].length = (unsigned int)n;
fprintf(stderr, "Response %d from user is '", i);
fwrite(responses[i].text, 1, responses[i].length, stderr);
@ -104,7 +108,7 @@ static void kbd_callback(const char *name, int name_len,
int main(int argc, char *argv[])
{
unsigned long hostaddr;
uint32_t hostaddr;
libssh2_socket_t sock;
int i, auth_pw = 0;
struct sockaddr_in sin;
@ -195,7 +199,8 @@ int main(int argc, char *argv[])
fprintf(stderr, "\n");
/* check what authentication methods are available */
userauthlist = libssh2_userauth_list(session, username, strlen(username));
userauthlist = libssh2_userauth_list(session, username,
(unsigned int)strlen(username));
fprintf(stderr, "Authentication methods: %s\n", userauthlist);
if(strstr(userauthlist, "password") != NULL) {
auth_pw |= 1;
@ -277,12 +282,13 @@ int main(int argc, char *argv[])
fprintf(stderr, "libssh2_sftp_open() is done, now receive data!\n");
do {
char mem[1024];
ssize_t nread;
/* loop until we fail */
fprintf(stderr, "libssh2_sftp_read()!\n");
rc = libssh2_sftp_read(sftp_handle, mem, sizeof(mem));
if(rc > 0) {
write(1, mem, rc);
nread = libssh2_sftp_read(sftp_handle, mem, sizeof(mem));
if(nread > 0) {
write(1, mem, nread);
}
else {
break;

View File

@ -43,6 +43,10 @@
#pragma warning(disable:4127)
#endif
#ifdef WIN32
#define write(f, b, c) write((f), (b), (unsigned int)(c))
#endif
#define STORAGE "/tmp/sftp-storage" /* this is the local file name this
example uses to store the downloaded
file in */
@ -72,7 +76,7 @@ static int waitsocket(libssh2_socket_t socket_fd, LIBSSH2_SESSION *session)
if(dir & LIBSSH2_SESSION_BLOCK_OUTBOUND)
writefd = &fd;
rc = select(socket_fd + 1, readfd, writefd, NULL, &timeout);
rc = select((int)(socket_fd + 1), readfd, writefd, NULL, &timeout);
return rc;
}
@ -237,21 +241,22 @@ int main(int argc, char *argv[])
fprintf(stderr, "libssh2_sftp_open() is done, now receive data!\n");
do {
ssize_t nread;
do {
/* read in a loop until we block */
rc = libssh2_sftp_read(sftp_handle, mem, sizeof(mem));
nread = libssh2_sftp_read(sftp_handle, mem, sizeof(mem));
fprintf(stderr, "libssh2_sftp_read returned %d\n",
rc);
(int)nread);
if(rc > 0) {
if(nread > 0) {
/* write to stderr */
write(2, mem, rc);
write(2, mem, nread);
/* write to temporary storage area */
fwrite(mem, rc, 1, tempstorage);
fwrite(mem, nread, 1, tempstorage);
}
} while(rc > 0);
} while(nread > 0);
if(rc != LIBSSH2_ERROR_EAGAIN) {
if(nread != LIBSSH2_ERROR_EAGAIN) {
/* error or end of file */
break;
}
@ -265,7 +270,7 @@ int main(int argc, char *argv[])
FD_SET(sock, &fd2);
/* wait for readable or writeable */
rc = select(sock + 1, &fd, &fd2, NULL, &timeout);
rc = select((int)(sock + 1), &fd, &fd2, NULL, &timeout);
if(rc <= 0) {
/* negative is error
0 is timeout */
@ -296,6 +301,7 @@ int main(int argc, char *argv[])
size_t nread;
char *ptr;
do {
ssize_t nwritten;
nread = fread(mem, 1, sizeof(mem), tempstorage);
if(nread <= 0) {
/* end of file */
@ -305,13 +311,13 @@ int main(int argc, char *argv[])
do {
/* write data in a loop until we block */
rc = libssh2_sftp_write(sftp_handle, ptr,
nread);
ptr += rc;
nread -= nread;
} while(rc >= 0);
nwritten = libssh2_sftp_write(sftp_handle, ptr,
nread);
ptr += nwritten;
nread -= nwritten;
} while(nwritten >= 0);
if(rc != LIBSSH2_ERROR_EAGAIN) {
if(nwritten != LIBSSH2_ERROR_EAGAIN) {
/* error or end of file */
break;
}
@ -325,7 +331,7 @@ int main(int argc, char *argv[])
FD_SET(sock, &fd2);
/* wait for readable or writeable */
rc = select(sock + 1, &fd, &fd2, NULL, &timeout);
rc = select((int)(sock + 1), &fd, &fd2, NULL, &timeout);
if(rc <= 0) {
/* negative is error
0 is timeout */

View File

@ -41,7 +41,7 @@
int main(int argc, char *argv[])
{
unsigned long hostaddr;
uint32_t hostaddr;
libssh2_socket_t sock;
int i, auth_pw = 1;
struct sockaddr_in sin;
@ -58,6 +58,7 @@ int main(int argc, char *argv[])
LIBSSH2_SFTP_ATTRIBUTES attrs;
char mem[1024*100];
size_t nread;
ssize_t nwritten;
char *ptr;
#ifdef WIN32
@ -213,14 +214,14 @@ int main(int argc, char *argv[])
do {
/* write data in a loop until we block */
rc = libssh2_sftp_write(sftp_handle, ptr, nread);
if(rc < 0)
nwritten = libssh2_sftp_write(sftp_handle, ptr, nread);
if(nwritten < 0)
break;
ptr += rc;
nread -= rc;
ptr += nwritten;
nread -= nwritten;
} while(nread);
} while(rc > 0);
} while(nwritten > 0);
libssh2_sftp_close(sftp_handle);
libssh2_sftp_shutdown(sftp_session);

View File

@ -41,7 +41,7 @@
int main(int argc, char *argv[])
{
unsigned long hostaddr;
uint32_t hostaddr;
libssh2_socket_t sock;
int i, auth_pw = 1;
struct sockaddr_in sin;

View File

@ -41,7 +41,7 @@
int main(int argc, char *argv[])
{
unsigned long hostaddr;
uint32_t hostaddr;
libssh2_socket_t sock;
int i, auth_pw = 1;
struct sockaddr_in sin;

View File

@ -49,6 +49,10 @@
#pragma warning(disable:4127)
#endif
#ifdef WIN32
#define write(f, b, c) write((f), (b), (unsigned int)(c))
#endif
#ifdef HAVE_GETTIMEOFDAY
/* diff in ms */
static long tvdiff(struct timeval newer, struct timeval older)
@ -83,14 +87,14 @@ static int waitsocket(libssh2_socket_t socket_fd, LIBSSH2_SESSION *session)
if(dir & LIBSSH2_SESSION_BLOCK_OUTBOUND)
writefd = &fd;
rc = select(socket_fd + 1, readfd, writefd, NULL, &timeout);
rc = select((int)(socket_fd + 1), readfd, writefd, NULL, &timeout);
return rc;
}
int main(int argc, char *argv[])
{
unsigned long hostaddr;
uint32_t hostaddr;
libssh2_socket_t sock;
int i, auth_pw = 1;
struct sockaddr_in sin;
@ -105,7 +109,7 @@ int main(int argc, char *argv[])
long time_ms;
#endif
int rc;
int total = 0;
libssh2_struct_stat_size total = 0;
int spin = 0;
LIBSSH2_SFTP *sftp_session;
LIBSSH2_SFTP_HANDLE *sftp_handle;
@ -258,16 +262,17 @@ int main(int argc, char *argv[])
fprintf(stderr, "libssh2_sftp_open() is done, now receive data!\n");
do {
char mem[1024*24];
ssize_t nread;
/* loop until we fail */
while((rc = libssh2_sftp_read(sftp_handle, mem,
sizeof(mem))) == LIBSSH2_ERROR_EAGAIN) {
while((nread = libssh2_sftp_read(sftp_handle, mem,
sizeof(mem))) == LIBSSH2_ERROR_EAGAIN) {
spin++;
waitsocket(sock, session); /* now we wait */
}
if(rc > 0) {
total += rc;
write(1, mem, rc);
if(nread > 0) {
total += nread;
write(1, mem, nread);
}
else {
break;
@ -277,11 +282,10 @@ int main(int argc, char *argv[])
#ifdef HAVE_GETTIMEOFDAY
gettimeofday(&end, NULL);
time_ms = tvdiff(end, start);
fprintf(stderr, "Got %d bytes in %ld ms = %.1f bytes/sec spin: %d\n",
total,
time_ms, total/(time_ms/1000.0), spin);
fprintf(stderr, "Got %ld bytes in %ld ms = %.1f bytes/sec spin: %d\n",
(long)total, time_ms, (double)total/(time_ms/1000.0), spin);
#else
fprintf(stderr, "Got %d bytes spin: %d\n", total, spin);
fprintf(stderr, "Got %ld bytes spin: %d\n", (long)total, spin);
#endif
libssh2_sftp_close(sftp_handle);

View File

@ -41,7 +41,7 @@
int main(int argc, char *argv[])
{
unsigned long hostaddr;
uint32_t hostaddr;
libssh2_socket_t sock;
int i, auth_pw = 1;
struct sockaddr_in sin;
@ -57,6 +57,7 @@ int main(int argc, char *argv[])
LIBSSH2_SFTP_HANDLE *sftp_handle;
char mem[1024*100];
size_t nread;
ssize_t nwritten;
char *ptr;
#ifdef WIN32
@ -197,14 +198,14 @@ int main(int argc, char *argv[])
do {
/* write data in a loop until we block */
rc = libssh2_sftp_write(sftp_handle, ptr, nread);
if(rc < 0)
nwritten = libssh2_sftp_write(sftp_handle, ptr, nread);
if(nwritten < 0)
break;
ptr += rc;
nread -= rc;
ptr += nwritten;
nread -= nwritten;
} while(nread);
} while(rc > 0);
} while(nwritten > 0);
libssh2_sftp_close(sftp_handle);
libssh2_sftp_shutdown(sftp_session);

View File

@ -71,14 +71,14 @@ static int waitsocket(libssh2_socket_t socket_fd, LIBSSH2_SESSION *session)
if(dir & LIBSSH2_SESSION_BLOCK_OUTBOUND)
writefd = &fd;
rc = select(socket_fd + 1, readfd, writefd, NULL, &timeout);
rc = select((int)(socket_fd + 1), readfd, writefd, NULL, &timeout);
return rc;
}
int main(int argc, char *argv[])
{
unsigned long hostaddr;
uint32_t hostaddr;
libssh2_socket_t sock;
int i, auth_pw = 1;
struct sockaddr_in sin;
@ -94,9 +94,10 @@ int main(int argc, char *argv[])
LIBSSH2_SFTP_HANDLE *sftp_handle;
char mem[1024 * 100];
size_t nread;
ssize_t nwritten;
char *ptr;
time_t start;
long total = 0;
libssh2_struct_stat_size total = 0;
int duration;
#ifdef WIN32
@ -254,23 +255,22 @@ int main(int argc, char *argv[])
do {
/* write data in a loop until we block */
while((rc = libssh2_sftp_write(sftp_handle, ptr, nread)) ==
while((nwritten = libssh2_sftp_write(sftp_handle, ptr, nread)) ==
LIBSSH2_ERROR_EAGAIN) {
waitsocket(sock, session);
}
if(rc < 0)
if(nwritten < 0)
break;
ptr += rc;
nread -= rc;
ptr += nwritten;
nread -= nwritten;
} while(nread);
} while(rc > 0);
} while(nwritten > 0);
duration = (int)(time(NULL)-start);
fprintf(stderr, "%ld bytes in %d seconds makes %.1f bytes/sec\n",
total, duration, total/(double)duration);
(long)total, duration, (double)total / duration);
fclose(local);
libssh2_sftp_close(sftp_handle);

View File

@ -71,14 +71,14 @@ static int waitsocket(libssh2_socket_t socket_fd, LIBSSH2_SESSION *session)
if(dir & LIBSSH2_SESSION_BLOCK_OUTBOUND)
writefd = &fd;
rc = select(socket_fd + 1, readfd, writefd, NULL, &timeout);
rc = select((int)(socket_fd + 1), readfd, writefd, NULL, &timeout);
return rc;
}
int main(int argc, char *argv[])
{
unsigned long hostaddr;
uint32_t hostaddr;
libssh2_socket_t sock;
int i, auth_pw = 1;
struct sockaddr_in sin;
@ -95,8 +95,9 @@ int main(int argc, char *argv[])
char mem[1024 * 1000];
size_t nread;
size_t memuse;
ssize_t nwritten;
time_t start;
long total = 0;
libssh2_struct_stat_size total = 0;
int duration;
#ifdef WIN32
@ -258,29 +259,28 @@ int main(int argc, char *argv[])
total += nread;
/* write data in a loop until we block */
while((rc = libssh2_sftp_write(sftp_handle, mem, memuse)) ==
while((nwritten = libssh2_sftp_write(sftp_handle, mem, memuse)) ==
LIBSSH2_ERROR_EAGAIN) {
waitsocket(sock, session);
}
if(rc < 0)
if(nwritten < 0)
break;
if(memuse - rc) {
if(memuse - nwritten) {
/* make room for more data at the end of the buffer */
memmove(&mem[0], &mem[rc], memuse - rc);
memuse -= rc;
memmove(&mem[0], &mem[nwritten], memuse - nwritten);
memuse -= nwritten;
}
else
/* 'mem' was consumed fully */
memuse = 0;
} while(rc > 0);
} while(nwritten > 0);
duration = (int)(time(NULL)-start);
fprintf(stderr, "%ld bytes in %d seconds makes %.1f bytes/sec\n",
total, duration, total/(double)duration);
(long)total, duration, (double)total / duration);
fclose(local);
libssh2_sftp_close(sftp_handle);

View File

@ -46,7 +46,7 @@
#pragma warning(disable:4127)
#endif
#ifdef WIN32
#if defined(_MSC_VER)
#define __FILESIZE "I64u"
#else
#define __FILESIZE "llu"
@ -70,7 +70,7 @@ static void kbd_callback(const char *name, int name_len,
(void)instruction_len;
if(num_prompts == 1) {
responses[0].text = strdup(password);
responses[0].length = strlen(password);
responses[0].length = (unsigned int)strlen(password);
}
(void)prompts;
(void)abstract;
@ -78,7 +78,7 @@ static void kbd_callback(const char *name, int name_len,
int main(int argc, char *argv[])
{
unsigned long hostaddr;
uint32_t hostaddr;
libssh2_socket_t sock;
int rc, i, auth_pw = 0;
struct sockaddr_in sin;
@ -166,7 +166,8 @@ int main(int argc, char *argv[])
fprintf(stderr, "\n");
/* check what authentication methods are available */
userauthlist = libssh2_userauth_list(session, username, strlen(username));
userauthlist = libssh2_userauth_list(session, username,
(unsigned int)strlen(username));
fprintf(stderr, "Authentication methods: %s\n", userauthlist);
if(strstr(userauthlist, "password") != NULL) {
auth_pw |= 1;

View File

@ -46,7 +46,7 @@
#pragma warning(disable:4127)
#endif
#ifdef WIN32
#if defined(_MSC_VER)
#define __FILESIZE "I64u"
#else
#define __FILESIZE "llu"
@ -54,7 +54,7 @@
int main(int argc, char *argv[])
{
unsigned long hostaddr;
uint32_t hostaddr;
libssh2_socket_t sock;
int i, auth_pw = 1;
struct sockaddr_in sin;

View File

@ -70,7 +70,7 @@ static void kbd_callback(const char *name, int name_len,
(void)instruction_len;
if(num_prompts == 1) {
responses[0].text = strdup(password);
responses[0].length = strlen(password);
responses[0].length = (unsigned int)strlen(password);
}
(void)prompts;
(void)abstract;
@ -79,7 +79,7 @@ static void kbd_callback(const char *name, int name_len,
int main(int argc, char *argv[])
{
unsigned long hostaddr;
uint32_t hostaddr;
libssh2_socket_t sock;
int rc, i, auth_pw = 0;
struct sockaddr_in sin;
@ -171,7 +171,8 @@ int main(int argc, char *argv[])
fprintf(stderr, "\n");
/* check what authentication methods are available */
userauthlist = libssh2_userauth_list(session, username, strlen(username));
userauthlist = libssh2_userauth_list(session, username,
(unsigned int)strlen(username));
fprintf(stderr, "Authentication methods: %s\n", userauthlist);
if(strstr(userauthlist, "password") != NULL) {
auth_pw |= 1;
@ -315,7 +316,7 @@ int main(int argc, char *argv[])
char buf[1024];
ssize_t err = libssh2_channel_read(channel, buf, sizeof(buf));
if(err < 0)
fprintf(stderr, "Unable to read response: %zd\n", err);
fprintf(stderr, "Unable to read response: %d\n", (int)err);
else {
fwrite(buf, 1, err, stdout);
}

View File

@ -46,7 +46,7 @@ const char *username = "username";
int main(int argc, char *argv[])
{
unsigned long hostaddr;
uint32_t hostaddr;
libssh2_socket_t sock = LIBSSH2_INVALID_SOCKET;
int i, rc;
struct sockaddr_in sin;
@ -126,7 +126,8 @@ int main(int argc, char *argv[])
fprintf(stderr, "\n");
/* check what authentication methods are available */
userauthlist = libssh2_userauth_list(session, username, strlen(username));
userauthlist = libssh2_userauth_list(session, username,
(unsigned int)strlen(username));
fprintf(stderr, "Authentication methods: %s\n", userauthlist);
if(strstr(userauthlist, "publickey") == NULL) {
fprintf(stderr, "\"publickey\" authentication is not supported\n");

View File

@ -76,7 +76,7 @@ static int waitsocket(libssh2_socket_t socket_fd, LIBSSH2_SESSION *session)
if(dir & LIBSSH2_SESSION_BLOCK_OUTBOUND)
writefd = &fd;
rc = select(socket_fd + 1, readfd, writefd, NULL, &timeout);
rc = select((int)(socket_fd + 1), readfd, writefd, NULL, &timeout);
return rc;
}
@ -86,7 +86,7 @@ int main(int argc, char *argv[])
const char *hostname = "127.0.0.1";
const char *commandline = "uptime";
const char *username = NULL;
unsigned long hostaddr;
uint32_t hostaddr;
libssh2_socket_t sock;
struct sockaddr_in sin;
LIBSSH2_SESSION *session;
@ -96,7 +96,7 @@ int main(int argc, char *argv[])
int rc;
int exitcode;
char *exitsignal = (char *)"none";
int bytecount = 0;
ssize_t bytecount = 0;
#ifdef WIN32
WSADATA wsadata;
@ -230,29 +230,31 @@ int main(int argc, char *argv[])
exit(1);
}
for(;;) {
ssize_t nread;
/* loop until we block */
do {
char buffer[0x4000];
rc = libssh2_channel_read(channel, buffer, sizeof(buffer) );
if(rc > 0) {
int i;
bytecount += rc;
nread = libssh2_channel_read(channel, buffer, sizeof(buffer) );
if(nread > 0) {
ssize_t i;
bytecount += nread;
fprintf(stderr, "We read:\n");
for(i = 0; i < rc; ++i)
for(i = 0; i < nread; ++i)
fputc(buffer[i], stderr);
fprintf(stderr, "\n");
}
else {
if(rc != LIBSSH2_ERROR_EAGAIN)
if(nread != LIBSSH2_ERROR_EAGAIN)
/* no need to output this for the EAGAIN case */
fprintf(stderr, "libssh2_channel_read returned %d\n", rc);
fprintf(stderr, "libssh2_channel_read returned %d\n",
(int)nread);
}
}
while(rc > 0);
while(nread > 0);
/* this is due to blocking that would occur otherwise so we loop on
this condition */
if(rc == LIBSSH2_ERROR_EAGAIN) {
if(nread == LIBSSH2_ERROR_EAGAIN) {
waitsocket(sock, session);
}
else
@ -272,7 +274,7 @@ int main(int argc, char *argv[])
printf("\nGot signal: %s\n", exitsignal);
}
else {
printf("\nEXIT: %d bytecount: %d\n", exitcode, bytecount);
printf("\nEXIT: %d bytecount: %d\n", exitcode, (int)bytecount);
}
libssh2_channel_free(channel);

View File

@ -72,7 +72,7 @@ static int waitsocket(libssh2_socket_t socket_fd, LIBSSH2_SESSION *session)
if(dir & LIBSSH2_SESSION_BLOCK_OUTBOUND)
writefd = &fd;
rc = select(socket_fd + 1, readfd, writefd, NULL, &timeout);
rc = select((int)(socket_fd + 1), readfd, writefd, NULL, &timeout);
return rc;
}
@ -85,7 +85,7 @@ int main(int argc, char *argv[])
const char *commandline = "cat";
const char *username = "user";
const char *password = "password";
unsigned long hostaddr;
uint32_t hostaddr;
libssh2_socket_t sock;
struct sockaddr_in sin;
const char *fingerprint;
@ -232,11 +232,11 @@ int main(int argc, char *argv[])
else {
LIBSSH2_POLLFD *fds = NULL;
int running = 1;
int bufsize = BUFSIZE;
ssize_t bufsize = BUFSIZE;
char buffer[BUFSIZE];
int totsize = 1500000;
int totwritten = 0;
int totread = 0;
ssize_t totsize = 1500000;
ssize_t totwritten = 0;
ssize_t totread = 0;
int rereads = 0;
int rewrites = 0;
int i;
@ -262,7 +262,8 @@ int main(int argc, char *argv[])
continue;
if(fds[0].revents & LIBSSH2_POLLFD_POLLIN) {
int n = libssh2_channel_read(channel, buffer, sizeof(buffer));
ssize_t n = libssh2_channel_read(channel,
buffer, sizeof(buffer));
act++;
if(n == LIBSSH2_ERROR_EAGAIN) {
@ -276,7 +277,7 @@ int main(int argc, char *argv[])
else {
totread += n;
fprintf(stderr, "read %d bytes (%d in total)\n",
n, totread);
(int)n, (int)totread);
}
}
@ -285,9 +286,10 @@ int main(int argc, char *argv[])
if(totwritten < totsize) {
/* we have not written all data yet */
int left = totsize - totwritten;
int size = (left < bufsize) ? left : bufsize;
int n = libssh2_channel_write_ex(channel, 0, buffer, size);
ssize_t left = totsize - totwritten;
ssize_t size = (left < bufsize) ? left : bufsize;
ssize_t n = libssh2_channel_write_ex(channel, 0,
buffer, size);
if(n == LIBSSH2_ERROR_EAGAIN) {
rewrites++;
@ -300,7 +302,7 @@ int main(int argc, char *argv[])
else {
totwritten += n;
fprintf(stderr, "wrote %d bytes (%d in total)",
n, totwritten);
(int)n, (int)totwritten);
if(left >= bufsize && n != bufsize) {
fprintf(stderr, " PARTIAL");
}
@ -349,11 +351,11 @@ int main(int argc, char *argv[])
channel = NULL;
fprintf(stderr, "\nrereads: %d rewrites: %d totwritten %d\n",
rereads, rewrites, totwritten);
rereads, rewrites, (int)totwritten);
if(totwritten != totread) {
fprintf(stderr, "\n*** FAIL bytes written: %d bytes "
"read: %d ***\n", totwritten, totread);
"read: %d ***\n", (int)totwritten, (int)totread);
exit(1);
}
}

View File

@ -74,7 +74,7 @@ static int waitsocket(libssh2_socket_t socket_fd, LIBSSH2_SESSION *session)
if(dir & LIBSSH2_SESSION_BLOCK_OUTBOUND)
writefd = &fd;
rc = select(socket_fd + 1, readfd, writefd, NULL, &timeout);
rc = select((int)(socket_fd + 1), readfd, writefd, NULL, &timeout);
return rc;
}
@ -85,7 +85,7 @@ int main(int argc, char *argv[])
const char *commandline = "uptime";
const char *username = "user";
const char *password = "password";
unsigned long hostaddr;
uint32_t hostaddr;
libssh2_socket_t sock;
struct sockaddr_in sin;
const char *fingerprint;
@ -94,7 +94,7 @@ int main(int argc, char *argv[])
int rc;
int exitcode;
char *exitsignal = (char *)"none";
int bytecount = 0;
ssize_t bytecount = 0;
size_t len;
LIBSSH2_KNOWNHOSTS *nh;
int type;
@ -259,25 +259,27 @@ int main(int argc, char *argv[])
exit(1);
}
for(;;) {
ssize_t nread;
/* loop until we block */
do {
char buffer[0x4000];
rc = libssh2_channel_read(channel, buffer, sizeof(buffer) );
if(rc > 0) {
int i;
bytecount += rc;
nread = libssh2_channel_read(channel, buffer, sizeof(buffer));
if(nread > 0) {
ssize_t i;
bytecount += nread;
fprintf(stderr, "We read:\n");
for(i = 0; i < rc; ++i)
for(i = 0; i < nread; ++i)
fputc(buffer[i], stderr);
fprintf(stderr, "\n");
}
else {
if(rc != LIBSSH2_ERROR_EAGAIN)
if(nread != LIBSSH2_ERROR_EAGAIN)
/* no need to output this for the EAGAIN case */
fprintf(stderr, "libssh2_channel_read returned %d\n", rc);
fprintf(stderr, "libssh2_channel_read returned %d\n",
(int)nread);
}
}
while(rc > 0);
while(nread > 0);
/* this is due to blocking that would occur otherwise so we loop on
this condition */
@ -300,7 +302,8 @@ int main(int argc, char *argv[])
if(exitsignal)
fprintf(stderr, "\nGot signal: %s\n", exitsignal);
else
fprintf(stderr, "\nEXIT: %d bytecount: %d\n", exitcode, bytecount);
fprintf(stderr, "\nEXIT: %d bytecount: %d\n",
exitcode, (int)bytecount);
libssh2_channel_free(channel);
channel = NULL;

View File

@ -56,13 +56,13 @@ enum {
static int netconf_write(LIBSSH2_CHANNEL *channel, const char *buf, size_t len)
{
int i;
ssize_t i;
ssize_t wr = 0;
do {
i = libssh2_channel_write(channel, buf, len);
if(i < 0) {
fprintf(stderr, "libssh2_channel_write: %d\n", i);
fprintf(stderr, "libssh2_channel_write: %d\n", (int)i);
return -1;
}
wr += i;
@ -71,8 +71,8 @@ static int netconf_write(LIBSSH2_CHANNEL *channel, const char *buf, size_t len)
return 0;
}
static int netconf_read_until(LIBSSH2_CHANNEL *channel, const char *endtag,
char *buf, size_t buflen)
static ssize_t netconf_read_until(LIBSSH2_CHANNEL *channel, const char *endtag,
char *buf, size_t buflen)
{
ssize_t len;
size_t rd = 0;
@ -202,7 +202,8 @@ int main(int argc, char *argv[])
fprintf(stderr, "\n");
/* check what authentication methods are available */
userauthlist = libssh2_userauth_list(session, username, strlen(username));
userauthlist = libssh2_userauth_list(session, username,
(unsigned int)strlen(username));
fprintf(stderr, "Authentication methods: %s\n", userauthlist);
if(strstr(userauthlist, "password"))
auth |= AUTH_PASSWORD;

View File

@ -11,6 +11,8 @@
#include <windows.h>
#include <winsock2.h>
#include <ws2tcpip.h>
#define recv(s, b, l, f) recv((s), (b), (int)(l), (f))
#define send(s, b, l, f) send((s), (b), (int)(l), (f))
#else
#include <sys/socket.h>
#include <netinet/in.h>
@ -157,7 +159,8 @@ int main(int argc, char *argv[])
fprintf(stderr, "\n");
/* check what authentication methods are available */
userauthlist = libssh2_userauth_list(session, username, strlen(username));
userauthlist = libssh2_userauth_list(session, username,
(unsigned int)strlen(username));
fprintf(stderr, "Authentication methods: %s\n", userauthlist);
if(strstr(userauthlist, "password"))
auth |= AUTH_PASSWORD;
@ -251,12 +254,13 @@ int main(int argc, char *argv[])
FD_SET(forwardsock, &fds);
tv.tv_sec = 0;
tv.tv_usec = 100000;
rc = select(forwardsock + 1, &fds, NULL, NULL, &tv);
rc = select((int)(forwardsock + 1), &fds, NULL, NULL, &tv);
if(-1 == rc) {
perror("select");
goto shutdown;
}
if(rc && FD_ISSET(forwardsock, &fds)) {
ssize_t nwritten;
len = recv(forwardsock, buf, sizeof(buf), 0);
if(len < 0) {
perror("read");
@ -269,30 +273,33 @@ int main(int argc, char *argv[])
}
wr = 0;
do {
i = libssh2_channel_write(channel, buf, len);
if(i < 0) {
fprintf(stderr, "libssh2_channel_write: %d\n", i);
nwritten = libssh2_channel_write(channel, buf, len);
if(nwritten < 0) {
fprintf(stderr, "libssh2_channel_write: %d\n",
(int)nwritten);
goto shutdown;
}
wr += i;
} while(i > 0 && wr < len);
wr += nwritten;
} while(nwritten > 0 && wr < len);
}
for(;;) {
ssize_t nsent;
len = libssh2_channel_read(channel, buf, sizeof(buf));
if(LIBSSH2_ERROR_EAGAIN == len)
break;
else if(len < 0) {
fprintf(stderr, "libssh2_channel_read: %d", (int)len);
fprintf(stderr, "libssh2_channel_read: %d",
(int)len);
goto shutdown;
}
wr = 0;
while(wr < len) {
i = send(forwardsock, buf + wr, len - wr, 0);
if(i <= 0) {
nsent = send(forwardsock, buf + wr, len - wr, 0);
if(nsent <= 0) {
perror("write");
goto shutdown;
}
wr += i;
wr += nsent;
}
if(libssh2_channel_eof(channel)) {
fprintf(stderr, "The remote client at %s:%d disconnected!\n",

View File

@ -214,11 +214,12 @@ static int x11_send_receive(LIBSSH2_CHANNEL *channel, int sock)
rc = libssh2_poll(fds, nfds, 0);
if(rc >0) {
rc = libssh2_channel_read(channel, buf, bufsize);
write(sock, buf, rc);
ssize_t nread;
nread = libssh2_channel_read(channel, buf, bufsize);
write(sock, buf, nread);
}
rc = select(sock + 1, &set, NULL, NULL, &timeval_out);
rc = select((int)(sock + 1), &set, NULL, NULL, &timeval_out);
if(rc > 0) {
memset((void *)buf, 0, bufsize);
@ -247,7 +248,7 @@ static int x11_send_receive(LIBSSH2_CHANNEL *channel, int sock)
int
main (int argc, char *argv[])
{
unsigned long hostaddr = 0;
uint32_t hostaddr = 0;
int sock = 0;
int rc = 0;
struct sockaddr_in sin;
@ -448,7 +449,7 @@ main (int argc, char *argv[])
}
rc = select(fileno(stdin) + 1, &set, NULL, NULL, &timeval_out);
rc = select((int)(fileno(stdin) + 1), &set, NULL, NULL, &timeval_out);
if(rc > 0) {
/* Data in stdin*/
rc = read(fileno(stdin), buf, 1);

View File

@ -41,8 +41,8 @@
#endif
#endif
#include "openssh_fixture.h"
#include "session_fixture.h"
#include "openssh_fixture.h"
#include "libssh2_config.h"
#ifdef HAVE_WINSOCK2_H
@ -66,6 +66,12 @@
#include <string.h>
#include <stdarg.h>
#if defined(WIN32) && (defined(_M_X64) || defined(__x86_64__))
#define LIBSSH2_SOCKET_MASK "%lld"
#else
#define LIBSSH2_SOCKET_MASK "%d"
#endif
static int have_docker = 0;
static int run_command_varg(char **output, const char *command, va_list args)
@ -113,7 +119,7 @@ static int run_command_varg(char **output, const char *command, va_list args)
buf[0] = 0;
buf_len = 0;
while(buf_len < (sizeof(buf) - 1) &&
fgets(&buf[buf_len], sizeof(buf) - buf_len, pipe) != NULL) {
fgets(&buf[buf_len], (int)(sizeof(buf) - buf_len), pipe) != NULL) {
buf_len = strlen(buf);
}
@ -327,30 +333,30 @@ static int port_from_container(char *container_id, char **port_out)
}
}
static int open_socket_to_container(char *container_id)
static libssh2_socket_t open_socket_to_container(char *container_id)
{
char *ip_address = NULL;
char *port_string = NULL;
unsigned long hostaddr;
uint32_t hostaddr;
libssh2_socket_t sock;
struct sockaddr_in sin;
int counter = 0;
int ret;
libssh2_socket_t ret = LIBSSH2_INVALID_SOCKET;
if(have_docker) {
ret = ip_address_from_container(container_id, &ip_address);
if(ret != 0) {
int res;
res = ip_address_from_container(container_id, &ip_address);
if(res != 0) {
fprintf(stderr, "Failed to get IP address for container %s\n",
container_id);
ret = -1;
goto cleanup;
}
ret = port_from_container(container_id, &port_string);
if(ret != 0) {
res = port_from_container(container_id, &port_string);
if(res != 0) {
fprintf(stderr, "Failed to get port for container %s\n",
container_id);
ret = -1;
goto cleanup;
}
}
else {
@ -365,7 +371,6 @@ static int open_socket_to_container(char *container_id)
env = "4711";
}
port_string = strdup(env);
ret = 0;
}
/* 0.0.0.0 is returned by Docker for Windows, because the container
@ -377,16 +382,15 @@ static int open_socket_to_container(char *container_id)
}
hostaddr = inet_addr(ip_address);
if(hostaddr == (unsigned long)(-1)) {
if(hostaddr == (uint32_t)(-1)) {
fprintf(stderr, "Failed to convert %s host address\n", ip_address);
ret = -1;
goto cleanup;
}
sock = socket(AF_INET, SOCK_STREAM, 0);
if(sock <= 0) {
fprintf(stderr, "Failed to open socket (%d)\n", sock);
ret = -1;
if(sock == LIBSSH2_INVALID_SOCKET) {
fprintf(stderr,
"Failed to open socket (" LIBSSH2_SOCKET_MASK ")\n", sock);
goto cleanup;
}
@ -397,7 +401,6 @@ static int open_socket_to_container(char *container_id)
for(counter = 0; counter < 3; ++counter) {
if(connect(sock, (struct sockaddr *)(&sin),
sizeof(struct sockaddr_in)) != 0) {
ret = -1;
fprintf(stderr,
"Connection to %s:%s attempt #%d failed: retrying...\n",
ip_address, port_string, counter);
@ -408,7 +411,7 @@ static int open_socket_to_container(char *container_id)
break;
}
}
if(ret == -1) {
if(ret == LIBSSH2_INVALID_SOCKET) {
fprintf(stderr, "Failed to connect to %s:%s\n",
ip_address, port_string);
goto cleanup;
@ -460,7 +463,7 @@ void stop_openssh_fixture(void)
}
}
int open_socket_to_openssh_server(void)
libssh2_socket_t open_socket_to_openssh_server(void)
{
return open_socket_to_container(running_container_id);
}

View File

@ -40,6 +40,6 @@
int start_openssh_fixture(void);
void stop_openssh_fixture(void);
int open_socket_to_openssh_server(void);
libssh2_socket_t open_socket_to_openssh_server(void);
#endif

View File

@ -65,13 +65,13 @@
#include <assert.h>
LIBSSH2_SESSION *connected_session = NULL;
int connected_socket = -1;
libssh2_socket_t connected_socket = LIBSSH2_INVALID_SOCKET;
static int connect_to_server(void)
{
int rc;
connected_socket = open_socket_to_openssh_server();
if(connected_socket <= 0) {
if(connected_socket == LIBSSH2_INVALID_SOCKET) {
return -1;
}
@ -91,7 +91,7 @@ static void setup_fixture_workdir(void)
#else
char wd_buf[MAXPATHLEN];
#endif
char *wd = getenv("FIXTURE_WORKDIR");
const char *wd = getenv("FIXTURE_WORKDIR");
#ifdef FIXTURE_WORKDIR
if(!wd) {
wd = FIXTURE_WORKDIR;

View File

@ -32,7 +32,7 @@
int main(int argc, char *argv[])
{
unsigned long hostaddr;
uint32_t hostaddr;
libssh2_socket_t sock;
int i, auth_pw = 0;
struct sockaddr_in sin;
@ -108,7 +108,8 @@ int main(int argc, char *argv[])
printf("\n");
/* check what authentication methods are available */
userauthlist = libssh2_userauth_list(session, username, strlen(username));
userauthlist = libssh2_userauth_list(session, username,
(unsigned int)strlen(username));
printf("Authentication methods: %s\n", userauthlist);
if(strstr(userauthlist, "password") != NULL) {
auth_pw |= 1;

View File

@ -15,7 +15,8 @@ int test(LIBSSH2_SESSION *session)
LIBSSH2_CHANNEL *channel;
const char *userauth_list =
libssh2_userauth_list(session, USERNAME, strlen(USERNAME));
libssh2_userauth_list(session, USERNAME,
(unsigned int)strlen(USERNAME));
if(userauth_list == NULL) {
print_last_session_error("libssh2_userauth_list");
return 1;
@ -28,7 +29,7 @@ int test(LIBSSH2_SESSION *session)
}
rc = libssh2_userauth_publickey_fromfile_ex(
session, USERNAME, strlen(USERNAME),
session, USERNAME, (unsigned int)strlen(USERNAME),
srcdir_path(KEY_FILE_PUBLIC), srcdir_path(KEY_FILE_PRIVATE),
NULL);
if(rc != 0) {

View File

@ -33,13 +33,13 @@ int test(LIBSSH2_SESSION *session)
if(type == LIBSSH2_HOSTKEY_TYPE_ECDSA_256) {
rc = libssh2_base64_decode(session, &expected_hostkey, &expected_len,
EXPECTED_ECDSA_HOSTKEY,
strlen(EXPECTED_ECDSA_HOSTKEY));
EXPECTED_ECDSA_HOSTKEY,
(unsigned int)strlen(EXPECTED_ECDSA_HOSTKEY));
}
else if(type == LIBSSH2_HOSTKEY_TYPE_RSA) {
rc = libssh2_base64_decode(session, &expected_hostkey, &expected_len,
EXPECTED_RSA_HOSTKEY,
strlen(EXPECTED_RSA_HOSTKEY));
EXPECTED_RSA_HOSTKEY,
(unsigned int)strlen(EXPECTED_RSA_HOSTKEY));
}
else {
fprintf(stderr, "Unexpected type of hostkey: %i\n", type);

View File

@ -26,7 +26,7 @@ static void kbd_callback(const char *name, int name_len,
if(num_prompts == 1) {
responses[0].text = strdup(WRONG_PASSWORD);
responses[0].length = strlen(WRONG_PASSWORD);
responses[0].length = (unsigned int)strlen(WRONG_PASSWORD);
}
}
@ -35,7 +35,8 @@ int test(LIBSSH2_SESSION *session)
int rc;
const char *userauth_list =
libssh2_userauth_list(session, USERNAME, strlen(USERNAME));
libssh2_userauth_list(session, USERNAME,
(unsigned int)strlen(USERNAME));
if(userauth_list == NULL) {
print_last_session_error("libssh2_userauth_list");
return 1;
@ -49,7 +50,7 @@ int test(LIBSSH2_SESSION *session)
}
rc = libssh2_userauth_keyboard_interactive_ex(
session, USERNAME, strlen(USERNAME), kbd_callback);
session, USERNAME, (unsigned int)strlen(USERNAME), kbd_callback);
if(rc == 0) {
fprintf(stderr,
"Keyboard-interactive auth succeeded with wrong response\n");

View File

@ -28,7 +28,7 @@ static void kbd_callback(const char *name, int name_len,
if(num_prompts == 1) {
responses[0].text = strdup(PASSWORD);
responses[0].length = strlen(PASSWORD);
responses[0].length = (unsigned int)strlen(PASSWORD);
}
}
@ -37,7 +37,8 @@ int test(LIBSSH2_SESSION *session)
int rc;
const char *userauth_list =
libssh2_userauth_list(session, USERNAME, strlen(USERNAME));
libssh2_userauth_list(session, USERNAME,
(unsigned int)strlen(USERNAME));
if(userauth_list == NULL) {
print_last_session_error("libssh2_userauth_list");
return 1;
@ -51,7 +52,7 @@ int test(LIBSSH2_SESSION *session)
}
rc = libssh2_userauth_keyboard_interactive_ex(
session, USERNAME, strlen(USERNAME), kbd_callback);
session, USERNAME, (unsigned int)strlen(USERNAME), kbd_callback);
if(rc != 0) {
print_last_session_error("libssh2_userauth_keyboard_interactive_ex");
return 1;

View File

@ -13,7 +13,8 @@ int test(LIBSSH2_SESSION *session)
int rc;
const char *userauth_list =
libssh2_userauth_list(session, USERNAME, strlen(USERNAME));
libssh2_userauth_list(session, USERNAME,
(unsigned int)strlen(USERNAME));
if(userauth_list == NULL) {
print_last_session_error("libssh2_userauth_list");
return 1;
@ -25,8 +26,10 @@ int test(LIBSSH2_SESSION *session)
return 1;
}
rc = libssh2_userauth_password_ex(session, USERNAME, strlen(USERNAME),
WRONG_PASSWORD, strlen(WRONG_PASSWORD),
rc = libssh2_userauth_password_ex(session, USERNAME,
(unsigned int)strlen(USERNAME),
WRONG_PASSWORD,
(unsigned int)strlen(WRONG_PASSWORD),
NULL);
if(rc == 0) {
fprintf(stderr, "Password auth succeeded with wrong password\n");

View File

@ -14,7 +14,8 @@ int test(LIBSSH2_SESSION *session)
int rc;
const char *userauth_list =
libssh2_userauth_list(session, WRONG_USERNAME, strlen(WRONG_USERNAME));
libssh2_userauth_list(session, WRONG_USERNAME,
(unsigned int)strlen(WRONG_USERNAME));
if(userauth_list == NULL) {
print_last_session_error("libssh2_userauth_list");
return 1;
@ -27,8 +28,9 @@ int test(LIBSSH2_SESSION *session)
}
rc = libssh2_userauth_password_ex(session, WRONG_USERNAME,
strlen(WRONG_USERNAME), PASSWORD,
strlen(PASSWORD), NULL);
(unsigned int)strlen(WRONG_USERNAME),
PASSWORD,
(unsigned int)strlen(PASSWORD), NULL);
if(rc == 0) {
fprintf(stderr, "Password auth succeeded with wrong username\n");
return 1;

View File

@ -14,7 +14,8 @@ int test(LIBSSH2_SESSION *session)
int rc;
const char *userauth_list =
libssh2_userauth_list(session, USERNAME, strlen(USERNAME));
libssh2_userauth_list(session, USERNAME,
(unsigned int)strlen(USERNAME));
if(userauth_list == NULL) {
print_last_session_error("libssh2_userauth_list");
return 1;
@ -26,8 +27,10 @@ int test(LIBSSH2_SESSION *session)
return 1;
}
rc = libssh2_userauth_password_ex(session, USERNAME, strlen(USERNAME),
PASSWORD, strlen(PASSWORD), NULL);
rc = libssh2_userauth_password_ex(session, USERNAME,
(unsigned int)strlen(USERNAME),
PASSWORD,
(unsigned int)strlen(PASSWORD), NULL);
if(rc != 0) {
print_last_session_error("libssh2_userauth_password_ex");
return 1;

View File

@ -14,7 +14,8 @@ int test(LIBSSH2_SESSION *session)
int rc;
const char *userauth_list =
libssh2_userauth_list(session, USERNAME, strlen(USERNAME));
libssh2_userauth_list(session, USERNAME,
(unsigned int)strlen(USERNAME));
if(userauth_list == NULL) {
print_last_session_error("libssh2_userauth_list");
return 1;
@ -27,7 +28,7 @@ int test(LIBSSH2_SESSION *session)
}
rc = libssh2_userauth_publickey_fromfile_ex(
session, USERNAME, strlen(USERNAME),
session, USERNAME, (unsigned int)strlen(USERNAME),
srcdir_path(KEY_FILE_PUBLIC), srcdir_path(KEY_FILE_PRIVATE),
NULL);
if(rc == 0) {

View File

@ -15,7 +15,8 @@ int test(LIBSSH2_SESSION *session)
int rc;
const char *userauth_list =
libssh2_userauth_list(session, USERNAME, strlen(USERNAME));
libssh2_userauth_list(session, USERNAME,
(unsigned int)strlen(USERNAME));
if(userauth_list == NULL) {
print_last_session_error("libssh2_userauth_list");
return 1;
@ -28,7 +29,7 @@ int test(LIBSSH2_SESSION *session)
}
rc = libssh2_userauth_publickey_fromfile_ex(
session, USERNAME, strlen(USERNAME),
session, USERNAME, (unsigned int)strlen(USERNAME),
srcdir_path(KEY_FILE_PUBLIC), srcdir_path(KEY_FILE_PRIVATE), NULL);
if(rc != 0) {
print_last_session_error("libssh2_userauth_publickey_fromfile_ex");

View File

@ -15,7 +15,8 @@ int test(LIBSSH2_SESSION *session)
int rc;
const char *userauth_list = NULL;
userauth_list = libssh2_userauth_list(session, USERNAME, strlen(USERNAME));
userauth_list = libssh2_userauth_list(session, USERNAME,
(unsigned int)strlen(USERNAME));
if(userauth_list == NULL) {
print_last_session_error("libssh2_userauth_list");
return 1;
@ -28,7 +29,7 @@ int test(LIBSSH2_SESSION *session)
}
rc = libssh2_userauth_publickey_fromfile_ex(
session, USERNAME, strlen(USERNAME),
session, USERNAME, (unsigned int)strlen(USERNAME),
srcdir_path(KEY_FILE_PUBLIC), srcdir_path(KEY_FILE_PRIVATE),
NULL);
if(rc != 0) {

View File

@ -15,7 +15,8 @@ int test(LIBSSH2_SESSION *session)
int rc;
const char *userauth_list = NULL;
userauth_list = libssh2_userauth_list(session, USERNAME, strlen(USERNAME));
userauth_list = libssh2_userauth_list(session, USERNAME,
(unsigned int)strlen(USERNAME));
if(userauth_list == NULL) {
print_last_session_error("libssh2_userauth_list");
return 1;
@ -28,7 +29,7 @@ int test(LIBSSH2_SESSION *session)
}
rc = libssh2_userauth_publickey_fromfile_ex(
session, USERNAME, strlen(USERNAME),
session, USERNAME, (unsigned int)strlen(USERNAME),
srcdir_path(KEY_FILE_PUBLIC), srcdir_path(KEY_FILE_PRIVATE),
NULL);
if(rc != 0) {

View File

@ -18,7 +18,8 @@ int test(LIBSSH2_SESSION *session)
size_t len = 0;
const char *userauth_list = NULL;
userauth_list = libssh2_userauth_list(session, USERNAME, strlen(USERNAME));
userauth_list = libssh2_userauth_list(session, USERNAME,
(unsigned int)strlen(USERNAME));
if(userauth_list == NULL) {
print_last_session_error("libssh2_userauth_list");
return 1;

View File

@ -16,7 +16,8 @@ int test(LIBSSH2_SESSION *session)
int rc;
const char *userauth_list = NULL;
userauth_list = libssh2_userauth_list(session, USERNAME, strlen(USERNAME));
userauth_list = libssh2_userauth_list(session, USERNAME,
(unsigned int)strlen(USERNAME));
if(userauth_list == NULL) {
print_last_session_error("libssh2_userauth_list");
return 1;
@ -29,7 +30,7 @@ int test(LIBSSH2_SESSION *session)
}
rc = libssh2_userauth_publickey_fromfile_ex(
session, USERNAME, strlen(USERNAME),
session, USERNAME, (unsigned int)strlen(USERNAME),
srcdir_path(KEY_FILE_PUBLIC), srcdir_path(KEY_FILE_PRIVATE),
PASSWORD);
if(rc != 0) {

View File

@ -16,7 +16,8 @@ int test(LIBSSH2_SESSION *session)
int rc;
const char *userauth_list =
libssh2_userauth_list(session, USERNAME, strlen(USERNAME));
libssh2_userauth_list(session, USERNAME,
(unsigned int)strlen(USERNAME));
if(userauth_list == NULL) {
print_last_session_error("libssh2_userauth_list");
return 1;
@ -29,7 +30,7 @@ int test(LIBSSH2_SESSION *session)
}
rc = libssh2_userauth_publickey_fromfile_ex(
session, USERNAME, strlen(USERNAME),
session, USERNAME, (unsigned int)strlen(USERNAME),
srcdir_path(KEY_FILE_PUBLIC), srcdir_path(KEY_FILE_PRIVATE),
PASSWORD);
if(rc != 0) {

View File

@ -15,7 +15,8 @@ int test(LIBSSH2_SESSION *session)
int rc;
const char *userauth_list =
libssh2_userauth_list(session, USERNAME, strlen(USERNAME));
libssh2_userauth_list(session, USERNAME,
(unsigned int)strlen(USERNAME));
if(userauth_list == NULL) {
print_last_session_error("libssh2_userauth_list");
return 1;
@ -28,7 +29,7 @@ int test(LIBSSH2_SESSION *session)
}
rc = libssh2_userauth_publickey_fromfile_ex(
session, USERNAME, strlen(USERNAME),
session, USERNAME, (unsigned int)strlen(USERNAME),
srcdir_path(KEY_FILE_PUBLIC), srcdir_path(KEY_FILE_PRIVATE),
NULL);
if(rc != 0) {

View File

@ -15,7 +15,8 @@ int test(LIBSSH2_SESSION *session)
int rc;
const char *userauth_list =
libssh2_userauth_list(session, USERNAME, strlen(USERNAME));
libssh2_userauth_list(session, USERNAME,
(unsigned int)strlen(USERNAME));
if(userauth_list == NULL) {
print_last_session_error("libssh2_userauth_list");
return 1;
@ -28,7 +29,7 @@ int test(LIBSSH2_SESSION *session)
}
rc = libssh2_userauth_publickey_fromfile_ex(
session, USERNAME, strlen(USERNAME),
session, USERNAME, (unsigned int)strlen(USERNAME),
srcdir_path(KEY_FILE_PUBLIC), srcdir_path(KEY_FILE_PRIVATE),
NULL);
if(rc != 0) {

View File

@ -15,7 +15,8 @@ int test(LIBSSH2_SESSION *session)
int rc;
const char *userauth_list = NULL;
userauth_list = libssh2_userauth_list(session, USERNAME, strlen(USERNAME));
userauth_list = libssh2_userauth_list(session, USERNAME,
(unsigned int)strlen(USERNAME));
if(userauth_list == NULL) {
print_last_session_error("libssh2_userauth_list");
return 1;
@ -28,7 +29,7 @@ int test(LIBSSH2_SESSION *session)
}
rc = libssh2_userauth_publickey_fromfile_ex(
session, USERNAME, strlen(USERNAME),
session, USERNAME, (unsigned int)strlen(USERNAME),
srcdir_path(KEY_FILE_PUBLIC), srcdir_path(KEY_FILE_PRIVATE),
NULL);
if(rc != 0) {

View File

@ -15,7 +15,8 @@ int test(LIBSSH2_SESSION *session)
int rc;
const char *userauth_list =
libssh2_userauth_list(session, USERNAME, strlen(USERNAME));
libssh2_userauth_list(session, USERNAME,
(unsigned int)strlen(USERNAME));
if(userauth_list == NULL) {
print_last_session_error("libssh2_userauth_list");
return 1;
@ -28,7 +29,7 @@ int test(LIBSSH2_SESSION *session)
}
rc = libssh2_userauth_publickey_fromfile_ex(
session, USERNAME, strlen(USERNAME),
session, USERNAME, (unsigned int)strlen(USERNAME),
srcdir_path(KEY_FILE_PUBLIC), srcdir_path(KEY_FILE_PRIVATE),
NULL);
if(rc != 0) {

View File

@ -35,7 +35,8 @@ int test(LIBSSH2_SESSION *session)
LIBSSH2_CHANNEL *channel;
const char *userauth_list =
libssh2_userauth_list(session, USERNAME, strlen(USERNAME));
libssh2_userauth_list(session, USERNAME,
(unsigned int)strlen(USERNAME));
if(userauth_list == NULL) {
print_last_session_error("libssh2_userauth_list");
return 1;
@ -48,7 +49,7 @@ int test(LIBSSH2_SESSION *session)
}
rc = libssh2_userauth_publickey_fromfile_ex(
session, USERNAME, strlen(USERNAME),
session, USERNAME, (unsigned int)strlen(USERNAME),
srcdir_path(KEY_FILE_PUBLIC), srcdir_path(KEY_FILE_PRIVATE), NULL);
if(rc != 0) {
print_last_session_error("libssh2_userauth_publickey_fromfile_ex");
@ -73,7 +74,7 @@ int test(LIBSSH2_SESSION *session)
char buf[1024];
ssize_t err = libssh2_channel_read(channel, buf, sizeof(buf));
if(err < 0)
fprintf(stderr, "Unable to read response: %zd\n", err);
fprintf(stderr, "Unable to read response: %d\n", (int)err);
else {
int i;
for(i = 0; i < err; ++i) {