aboutsummaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
Diffstat (limited to 'lib')
-rw-r--r--lib/inet_pton.c4
-rw-r--r--lib/ssluse.c17
-rw-r--r--lib/url.c4
3 files changed, 16 insertions, 9 deletions
diff --git a/lib/inet_pton.c b/lib/inet_pton.c
index 26a13724f..285284fd1 100644
--- a/lib/inet_pton.c
+++ b/lib/inet_pton.c
@@ -221,8 +221,8 @@ inet_pton6(const char *src, unsigned char *dst)
* Since some memmove()'s erroneously fail to handle
* overlapping regions, we'll do the shift by hand.
*/
- const int n = tp - colonp;
- int i;
+ const long n = tp - colonp;
+ long i;
for (i = 1; i <= n; i++) {
endp[- i] = colonp[n - i];
diff --git a/lib/ssluse.c b/lib/ssluse.c
index 840fbc2c9..d0f5501fe 100644
--- a/lib/ssluse.c
+++ b/lib/ssluse.c
@@ -1644,9 +1644,16 @@ ossl_connect_step2(struct connectdata *conn, int sockindex)
static int asn1_object_dump(ASN1_OBJECT *a, char *buf, size_t len)
{
- int i = i2t_ASN1_OBJECT(buf, len, a);
- if (i >= (int)len)
- return 1; /* too small buffer! */
+ int i, ilen;
+
+ if((ilen = (int)len) < 0)
+ return 1; /* buffer too big */
+
+ i = i2t_ASN1_OBJECT(buf, ilen, a);
+
+ if(i >= ilen)
+ return 1; /* buffer too small */
+
return 0;
}
@@ -2244,9 +2251,9 @@ ossl_connect_common(struct connectdata *conn,
if(connssl->connecting_state == ssl_connect_2_reading
|| connssl->connecting_state == ssl_connect_2_writing) {
- int writefd = ssl_connect_2_writing==
+ curl_socket_t writefd = ssl_connect_2_writing==
connssl->connecting_state?sockfd:CURL_SOCKET_BAD;
- int readfd = ssl_connect_2_reading==
+ curl_socket_t readfd = ssl_connect_2_reading==
connssl->connecting_state?sockfd:CURL_SOCKET_BAD;
while(1) {
diff --git a/lib/url.c b/lib/url.c
index e22ddee6e..d1393d2e6 100644
--- a/lib/url.c
+++ b/lib/url.c
@@ -3176,13 +3176,13 @@ static CURLcode ParseURLAndFillConnection(struct SessionHandle *data,
char *percent = strstr (conn->host.name, "%25");
if (percent) {
char *endp;
- unsigned int scope = strtoul (percent + 3, &endp, 10);
+ unsigned long scope = strtoul (percent + 3, &endp, 10);
if (*endp == ']') {
/* The address scope was well formed. Knock it out of the hostname. */
memmove(percent, endp, strlen(endp)+1);
if (!data->state.this_is_a_follow)
/* Don't honour a scope given in a Location: header */
- conn->scope = scope;
+ conn->scope = (unsigned int)scope;
} else
infof(data, "Invalid IPv6 address format\n");
}