diff options
Diffstat (limited to 'lib')
-rw-r--r-- | lib/ftp.c | 4 | ||||
-rw-r--r-- | lib/sslgen.c | 2 |
2 files changed, 3 insertions, 3 deletions
@@ -1586,7 +1586,7 @@ static CURLcode ftp_state_pasv_resp(struct connectdata *conn, } } if(ptr) { - newport = num; + newport = (unsigned short)(num & 0xffff); if (conn->bits.tunnel_proxy) /* proxy tunnel -> use other host info because ip_addr_str is the @@ -1650,7 +1650,7 @@ static CURLcode ftp_state_pasv_resp(struct connectdata *conn, else snprintf(newhost, sizeof(newhost), "%d.%d.%d.%d", ip[0], ip[1], ip[2], ip[3]); - newport = (port[0]<<8) + port[1]; + newport = (unsigned short)(((port[0]<<8) + port[1]) & 0xffff); } else if(ftpc->count1 == 0) { /* EPSV failed, move on to PASV */ diff --git a/lib/sslgen.c b/lib/sslgen.c index f110a51ea..5b75c3807 100644 --- a/lib/sslgen.c +++ b/lib/sslgen.c @@ -608,7 +608,7 @@ bool Curl_ssl_data_pending(struct connectdata *conn, /* OpenSSL-specific */ if(conn->ssl[connindex].handle) /* SSL is in use */ - return SSL_pending(conn->ssl[connindex].handle); + return (bool)(0 != SSL_pending(conn->ssl[connindex].handle)); #else (void)conn; (void)connindex; |