examples: fix/silence -Wsign-conversion

- extend `FD_SET()` hack to all platforms (was only Cygwin).
  Warnings may also happen in other envs, e.g. OmniOS.
  Ref: https://github.com/libssh2/libssh2/actions/runs/8854199687/job/24316762831#step:3:2021

- tidy-up `CURLcode` vs `int` use.

- cast an unsigned to `long` before passing to `curl_easy_setopt()`.

Cherry-picked from #13489
Follow-up to 3829759bd0 #12489
Closes #13501
This commit is contained in:
Viktor Szakats 2024-04-27 21:09:01 +02:00
parent 7ca0a3791b
commit 5b9955e0bd
No known key found for this signature in database
GPG Key ID: B5ABD165E2AEF201
4 changed files with 8 additions and 11 deletions

View File

@ -44,7 +44,7 @@ int main(void)
long my_scope_id;
curl_easy_setopt(curl, CURLOPT_URL, "https://example.com");
my_scope_id = if_nametoindex("eth0");
my_scope_id = (long)if_nametoindex("eth0");
curl_easy_setopt(curl, CURLOPT_ADDRESS_SCOPE, my_scope_id);
/* Perform the request, res gets the return code */

View File

@ -50,9 +50,9 @@ int main(int argc, char **argv)
struct callback_data data = { 0 };
/* global initialization */
int rc = curl_global_init(CURL_GLOBAL_ALL);
CURLcode rc = curl_global_init(CURL_GLOBAL_ALL);
if(rc)
return rc;
return (int)rc;
/* initialization of easy handle */
handle = curl_easy_init();
@ -90,7 +90,7 @@ int main(int argc, char **argv)
curl_easy_cleanup(handle);
curl_global_cleanup();
return rc;
return (int)rc;
}
static long file_is_coming(struct curl_fileinfo *finfo,

View File

@ -48,7 +48,7 @@ static int wait_on_socket(curl_socket_t sockfd, int for_recv, long timeout_ms)
* warning: conversion to 'long unsigned int' from 'curl_socket_t' {aka 'int'}
* may change the sign of the result [-Wsign-conversion]
*/
#if defined(__GNUC__) && defined(__CYGWIN__)
#if defined(__GNUC__)
#pragma GCC diagnostic push
#pragma GCC diagnostic ignored "-Wsign-conversion"
#endif
@ -60,7 +60,7 @@ static int wait_on_socket(curl_socket_t sockfd, int for_recv, long timeout_ms)
else {
FD_SET(sockfd, &outfd);
}
#if defined(__GNUC__) && defined(__CYGWIN__)
#if defined(__GNUC__)
#pragma GCC diagnostic pop
#endif

View File

@ -68,16 +68,13 @@ static int recv_pong(CURL *curl, const char *expected_payload)
return (int)result;
}
static int recv_any(CURL *curl)
static CURLcode recv_any(CURL *curl)
{
size_t rlen;
const struct curl_ws_frame *meta;
char buffer[256];
CURLcode result = curl_ws_recv(curl, buffer, sizeof(buffer), &rlen, &meta);
if(result)
return result;
return 0;
return curl_ws_recv(curl, buffer, sizeof(buffer), &rlen, &meta);
}
/* close the connection */