http: fix compile-time warnings
authorTomohiro Kusumi <kusumi.tomohiro@gmail.com>
Fri, 17 Aug 2018 22:22:00 +0000 (15:22 -0700)
committerJens Axboe <axboe@kernel.dk>
Fri, 17 Aug 2018 23:28:20 +0000 (17:28 -0600)
Fix following warnings on RHEL6 and variants.

engines/http.c: In function 'fio_http_setup':
engines/http.c:611: warning: call to '_curl_easy_setopt_err_seek_cb' declared with attribute warning: curl_easy_setopt expects a curl_seek_callback argument for this option
engines/http.c: In function 'fio_http_queue':
engines/http.c:549: warning: call to '_curl_easy_setopt_err_curl_off_t' declared with attribute warning: curl_easy_setopt expects a curl_off_t argument for this option

For engines/http.c:611, pass &_http_seek instead of cast, since
lack of cast isn't fio's issue. See below comments for details.

"Re: [PATCH] http: fix compile-time warnings"
https://www.spinics.net/lists/fio/msg07246.html

Signed-off-by: Jens Axboe <axboe@kernel.dk>
engines/http.c

index cb66ebe..93fcd0d 100644 (file)
@@ -546,7 +546,7 @@ static enum fio_q_status fio_http_queue(struct thread_data *td,
        } else if (io_u->ddir == DDIR_TRIM) {
                curl_easy_setopt(http->curl, CURLOPT_HTTPGET, 1L);
                curl_easy_setopt(http->curl, CURLOPT_CUSTOMREQUEST, "DELETE");
-               curl_easy_setopt(http->curl, CURLOPT_INFILESIZE_LARGE, 0);
+               curl_easy_setopt(http->curl, CURLOPT_INFILESIZE_LARGE, (curl_off_t)0);
                curl_easy_setopt(http->curl, CURLOPT_READDATA, NULL);
                curl_easy_setopt(http->curl, CURLOPT_WRITEDATA, NULL);
                res = curl_easy_perform(http->curl);
@@ -608,7 +608,7 @@ static int fio_http_setup(struct thread_data *td)
        }
        curl_easy_setopt(http->curl, CURLOPT_READFUNCTION, _http_read);
        curl_easy_setopt(http->curl, CURLOPT_WRITEFUNCTION, _http_write);
-       curl_easy_setopt(http->curl, CURLOPT_SEEKFUNCTION, _http_seek);
+       curl_easy_setopt(http->curl, CURLOPT_SEEKFUNCTION, &_http_seek);
        if (o->user && o->pass) {
                curl_easy_setopt(http->curl, CURLOPT_USERNAME, o->user);
                curl_easy_setopt(http->curl, CURLOPT_PASSWORD, o->pass);