http.c: make finish_active_slot() and handle_curl_result() static

They used to be used directly by remote-curl.c for the smart-http
protocol. But they got wrapped by run_one_slot() in beed336 (http:
never use curl_easy_perform, 2014-02-18).  Any future users are
expected to follow that route.

Reviewed-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Junio C Hamano
2015-01-14 15:40:46 -08:00
parent 563d4e59bd
commit b90a3d7b32
2 changed files with 32 additions and 34 deletions

64
http.c
View File

@ -114,6 +114,37 @@ size_t fwrite_null(char *ptr, size_t eltsize, size_t nmemb, void *strbuf)
return eltsize * nmemb; return eltsize * nmemb;
} }
static void closedown_active_slot(struct active_request_slot *slot)
{
active_requests--;
slot->in_use = 0;
}
static void finish_active_slot(struct active_request_slot *slot)
{
closedown_active_slot(slot);
curl_easy_getinfo(slot->curl, CURLINFO_HTTP_CODE, &slot->http_code);
if (slot->finished != NULL)
(*slot->finished) = 1;
/* Store slot results so they can be read after the slot is reused */
if (slot->results != NULL) {
slot->results->curl_result = slot->curl_result;
slot->results->http_code = slot->http_code;
#if LIBCURL_VERSION_NUM >= 0x070a08
curl_easy_getinfo(slot->curl, CURLINFO_HTTPAUTH_AVAIL,
&slot->results->auth_avail);
#else
slot->results->auth_avail = 0;
#endif
}
/* Run callback if appropriate */
if (slot->callback_func != NULL)
slot->callback_func(slot->callback_data);
}
#ifdef USE_CURL_MULTI #ifdef USE_CURL_MULTI
static void process_curl_messages(void) static void process_curl_messages(void)
{ {
@ -730,12 +761,6 @@ void run_active_slot(struct active_request_slot *slot)
#endif #endif
} }
static void closedown_active_slot(struct active_request_slot *slot)
{
active_requests--;
slot->in_use = 0;
}
static void release_active_slot(struct active_request_slot *slot) static void release_active_slot(struct active_request_slot *slot)
{ {
closedown_active_slot(slot); closedown_active_slot(slot);
@ -752,31 +777,6 @@ static void release_active_slot(struct active_request_slot *slot)
#endif #endif
} }
void finish_active_slot(struct active_request_slot *slot)
{
closedown_active_slot(slot);
curl_easy_getinfo(slot->curl, CURLINFO_HTTP_CODE, &slot->http_code);
if (slot->finished != NULL)
(*slot->finished) = 1;
/* Store slot results so they can be read after the slot is reused */
if (slot->results != NULL) {
slot->results->curl_result = slot->curl_result;
slot->results->http_code = slot->http_code;
#if LIBCURL_VERSION_NUM >= 0x070a08
curl_easy_getinfo(slot->curl, CURLINFO_HTTPAUTH_AVAIL,
&slot->results->auth_avail);
#else
slot->results->auth_avail = 0;
#endif
}
/* Run callback if appropriate */
if (slot->callback_func != NULL)
slot->callback_func(slot->callback_data);
}
void finish_all_active_slots(void) void finish_all_active_slots(void)
{ {
struct active_request_slot *slot = active_queue_head; struct active_request_slot *slot = active_queue_head;
@ -839,7 +839,7 @@ char *get_remote_object_url(const char *url, const char *hex,
return strbuf_detach(&buf, NULL); return strbuf_detach(&buf, NULL);
} }
int handle_curl_result(struct slot_results *results) static int handle_curl_result(struct slot_results *results)
{ {
/* /*
* If we see a failing http code with CURLE_OK, we have turned off * If we see a failing http code with CURLE_OK, we have turned off

2
http.h
View File

@ -85,9 +85,7 @@ extern curlioerr ioctl_buffer(CURL *handle, int cmd, void *clientp);
extern struct active_request_slot *get_active_slot(void); extern struct active_request_slot *get_active_slot(void);
extern int start_active_slot(struct active_request_slot *slot); extern int start_active_slot(struct active_request_slot *slot);
extern void run_active_slot(struct active_request_slot *slot); extern void run_active_slot(struct active_request_slot *slot);
extern void finish_active_slot(struct active_request_slot *slot);
extern void finish_all_active_slots(void); extern void finish_all_active_slots(void);
extern int handle_curl_result(struct slot_results *results);
/* /*
* This will run one slot to completion in a blocking manner, similar to how * This will run one slot to completion in a blocking manner, similar to how