diff --git a/src/misc.c b/src/misc.c index 0d4f5b5f..c0c144ef 100644 --- a/src/misc.c +++ b/src/misc.c @@ -746,11 +746,11 @@ int _libssh2_get_u32(struct string_buf *buf, uint32_t *out) int _libssh2_get_u64(struct string_buf *buf, libssh2_uint64_t *out) { + unsigned char *p = buf->dataptr; if (!_libssh2_check_length(buf, 8)) { return -1; } - unsigned char *p = buf->dataptr; *out = _libssh2_ntohu64(p); buf->dataptr += 8; buf->offset += 8; diff --git a/src/transport.c b/src/transport.c index 071c50e0..df59d6f1 100644 --- a/src/transport.c +++ b/src/transport.c @@ -482,7 +482,7 @@ int _libssh2_transport_read(LIBSSH2_SESSION * session) /* copy the data from index 5 to the end of the blocksize from the temporary buffer to the start of the decrypted buffer */ - if (blocksize - 5 <= total_num) { + if (blocksize - 5 <= (int) total_num) { memcpy(p->wptr, &block[5], blocksize - 5); p->wptr += blocksize - 5; /* advance write pointer */ } else { @@ -564,7 +564,7 @@ int _libssh2_transport_read(LIBSSH2_SESSION * session) copy them as-is to the target buffer */ if(numbytes > 0) { - if (numbytes <= total_num - (p->wptr - p->payload)) { + if (numbytes <= (int)(total_num - (p->wptr - p->payload))) { memcpy(p->wptr, &p->buf[p->readidx], numbytes); } else {