mirror of
https://gitlab.freedesktop.org/NetworkManager/NetworkManager.git
synced 2026-02-27 22:10:40 +01:00
cloud-setup: rename get/Get identifiers to req and Req
We're going to extend those to issue methods other than GET. Also, "request" would've been too long, "req" looks nicer. Conflicts: code formatting, missing trivial commit in, provider-azure and gcp, missing494819bbbf("cloud-setup: move common code for get_config() to base class and improve cancellation") (cherry picked from commit85ce088616) (cherry picked from commit6e8cfbae32) (cherry picked from commit20cd11ee49) (cherry picked from commit9ce530fa7a) (cherry picked from commitd6d161a31d) (cherry picked from commit977fc2c8c5) (cherry picked from commit89ee76409b) (cherry picked from commite3d23c7ee0) (cherry picked from commit3a0f3ff46f)
This commit is contained in:
parent
9a434ad4ca
commit
5009cf5d54
3 changed files with 82 additions and 82 deletions
|
|
@ -104,12 +104,12 @@ typedef struct {
|
|||
} GetResult;
|
||||
|
||||
static void
|
||||
_get_result_free (gpointer data)
|
||||
_req_result_free (gpointer data)
|
||||
{
|
||||
GetResult *get_result = data;
|
||||
GetResult *req_result = data;
|
||||
|
||||
g_bytes_unref (get_result->response_data);
|
||||
nm_g_slice_free (get_result);
|
||||
g_bytes_unref (req_result->response_data);
|
||||
nm_g_slice_free (req_result);
|
||||
}
|
||||
|
||||
typedef struct {
|
||||
|
|
@ -156,7 +156,7 @@ static void
|
|||
_ehandle_complete (EHandleData *edata,
|
||||
GError *error_take)
|
||||
{
|
||||
GetResult *get_result;
|
||||
GetResult *req_result;
|
||||
gs_free char *str_tmp_1 = NULL;
|
||||
long response_code = -1;
|
||||
|
||||
|
|
@ -200,15 +200,15 @@ _ehandle_complete (EHandleData *edata,
|
|||
|
||||
_ehandle_free_ehandle (edata);
|
||||
|
||||
get_result = g_slice_new (GetResult);
|
||||
*get_result = (GetResult) {
|
||||
req_result = g_slice_new (GetResult);
|
||||
*req_result = (GetResult) {
|
||||
.response_code = response_code,
|
||||
/* This ensures that response_data is always NUL terminated. This is an important guarantee
|
||||
* that NMHttpClient makes. */
|
||||
.response_data = g_string_free_to_bytes (g_steal_pointer (&edata->recv_data)),
|
||||
};
|
||||
|
||||
g_task_return_pointer (edata->task, get_result, _get_result_free);
|
||||
g_task_return_pointer (edata->task, req_result, _req_result_free);
|
||||
|
||||
_ehandle_free (edata);
|
||||
}
|
||||
|
|
@ -259,7 +259,7 @@ _get_cancelled_cb (GObject *object, gpointer user_data)
|
|||
}
|
||||
|
||||
static void
|
||||
nm_http_client_get (NMHttpClient *self,
|
||||
nm_http_client_req (NMHttpClient *self,
|
||||
const char *url,
|
||||
int timeout_msec,
|
||||
gssize max_data,
|
||||
|
|
@ -282,7 +282,7 @@ nm_http_client_get (NMHttpClient *self,
|
|||
|
||||
edata = g_slice_new (EHandleData);
|
||||
*edata = (EHandleData) {
|
||||
.task = nm_g_task_new (self, cancellable, nm_http_client_get, callback, user_data),
|
||||
.task = nm_g_task_new (self, cancellable, nm_http_client_req, callback, user_data),
|
||||
.recv_data = g_string_sized_new (NM_MIN (max_data, 245)),
|
||||
.max_data = max_data,
|
||||
.url = g_strdup (url),
|
||||
|
|
@ -352,30 +352,30 @@ nm_http_client_get (NMHttpClient *self,
|
|||
}
|
||||
|
||||
static gboolean
|
||||
nm_http_client_get_finish (NMHttpClient *self,
|
||||
nm_http_client_req_finish (NMHttpClient *self,
|
||||
GAsyncResult *result,
|
||||
long *out_response_code,
|
||||
GBytes **out_response_data,
|
||||
GError **error)
|
||||
{
|
||||
GetResult *get_result;
|
||||
GetResult *req_result;
|
||||
|
||||
g_return_val_if_fail (NM_IS_HTTP_CLIENT (self), FALSE);
|
||||
g_return_val_if_fail (nm_g_task_is_valid (result, self, nm_http_client_get), FALSE);
|
||||
g_return_val_if_fail (nm_g_task_is_valid (result, self, nm_http_client_req), FALSE);
|
||||
|
||||
get_result = g_task_propagate_pointer (G_TASK (result), error);
|
||||
if (!get_result) {
|
||||
req_result = g_task_propagate_pointer (G_TASK (result), error);
|
||||
if (!req_result) {
|
||||
NM_SET_OUT (out_response_code, -1);
|
||||
NM_SET_OUT (out_response_data, NULL);
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
NM_SET_OUT (out_response_code, get_result->response_code);
|
||||
NM_SET_OUT (out_response_code, req_result->response_code);
|
||||
|
||||
/* response_data is binary, but is also guaranteed to be NUL terminated! */
|
||||
NM_SET_OUT (out_response_data, g_steal_pointer (&get_result->response_data));
|
||||
NM_SET_OUT (out_response_data, g_steal_pointer (&req_result->response_data));
|
||||
|
||||
_get_result_free (get_result);
|
||||
_req_result_free (req_result);
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
|
@ -386,62 +386,62 @@ typedef struct {
|
|||
GTask *task;
|
||||
char *uri;
|
||||
const char *const *http_headers;
|
||||
NMHttpClientPollGetCheckFcn check_fcn;
|
||||
NMHttpClientPollReqCheckFcn check_fcn;
|
||||
gpointer check_user_data;
|
||||
GBytes *response_data;
|
||||
gsize request_max_data;
|
||||
long response_code;
|
||||
int request_timeout_ms;
|
||||
} PollGetData;
|
||||
} PollReqData;
|
||||
|
||||
static void
|
||||
_poll_get_data_free (gpointer data)
|
||||
_poll_req_data_free (gpointer data)
|
||||
{
|
||||
PollGetData *poll_get_data = data;
|
||||
PollReqData *poll_req_data = data;
|
||||
|
||||
g_free (poll_get_data->uri);
|
||||
g_free (poll_req_data->uri);
|
||||
|
||||
nm_clear_pointer (&poll_get_data->response_data, g_bytes_unref);
|
||||
g_free((gpointer) poll_get_data->http_headers);
|
||||
nm_clear_pointer (&poll_req_data->response_data, g_bytes_unref);
|
||||
g_free((gpointer) poll_req_data->http_headers);
|
||||
|
||||
nm_g_slice_free (poll_get_data);
|
||||
nm_g_slice_free (poll_req_data);
|
||||
}
|
||||
|
||||
static void
|
||||
_poll_get_probe_start_fcn (GCancellable *cancellable,
|
||||
_poll_req_probe_start_fcn (GCancellable *cancellable,
|
||||
gpointer probe_user_data,
|
||||
GAsyncReadyCallback callback,
|
||||
gpointer user_data)
|
||||
{
|
||||
PollGetData *poll_get_data = probe_user_data;
|
||||
PollReqData *poll_req_data = probe_user_data;
|
||||
|
||||
/* balanced by _poll_get_probe_finish_fcn() */
|
||||
g_object_ref (poll_get_data->task);
|
||||
/* balanced by _poll_req_probe_finish_fcn() */
|
||||
g_object_ref (poll_req_data->task);
|
||||
|
||||
nm_http_client_get (g_task_get_source_object (poll_get_data->task),
|
||||
poll_get_data->uri,
|
||||
poll_get_data->request_timeout_ms,
|
||||
poll_get_data->request_max_data,
|
||||
poll_get_data->http_headers,
|
||||
nm_http_client_req (g_task_get_source_object (poll_req_data->task),
|
||||
poll_req_data->uri,
|
||||
poll_req_data->request_timeout_ms,
|
||||
poll_req_data->request_max_data,
|
||||
poll_req_data->http_headers,
|
||||
cancellable,
|
||||
callback,
|
||||
user_data);
|
||||
}
|
||||
|
||||
static gboolean
|
||||
_poll_get_probe_finish_fcn (GObject *source,
|
||||
_poll_req_probe_finish_fcn (GObject *source,
|
||||
GAsyncResult *result,
|
||||
gpointer probe_user_data,
|
||||
GError **error)
|
||||
{
|
||||
PollGetData *poll_get_data = probe_user_data;
|
||||
_nm_unused gs_unref_object GTask *task = poll_get_data->task; /* balance ref from _poll_get_probe_start_fcn() */
|
||||
PollReqData *poll_req_data = probe_user_data;
|
||||
_nm_unused gs_unref_object GTask *task = poll_req_data->task; /* balance ref from _poll_req_probe_start_fcn() */
|
||||
gboolean success;
|
||||
gs_free_error GError *local_error = NULL;
|
||||
long response_code;
|
||||
gs_unref_bytes GBytes *response_data = NULL;
|
||||
|
||||
success = nm_http_client_get_finish (g_task_get_source_object (poll_get_data->task),
|
||||
success = nm_http_client_req_finish (g_task_get_source_object (poll_req_data->task),
|
||||
result,
|
||||
&response_code,
|
||||
&response_data,
|
||||
|
|
@ -455,10 +455,10 @@ _poll_get_probe_finish_fcn (GObject *source,
|
|||
return FALSE;
|
||||
}
|
||||
|
||||
if (poll_get_data->check_fcn) {
|
||||
success = poll_get_data->check_fcn (response_code,
|
||||
if (poll_req_data->check_fcn) {
|
||||
success = poll_req_data->check_fcn (response_code,
|
||||
response_data,
|
||||
poll_get_data->check_user_data,
|
||||
poll_req_data->check_user_data,
|
||||
&local_error);
|
||||
} else
|
||||
success = (response_code == 200);
|
||||
|
|
@ -471,32 +471,32 @@ _poll_get_probe_finish_fcn (GObject *source,
|
|||
if (!success)
|
||||
return FALSE;
|
||||
|
||||
poll_get_data->response_code = response_code;
|
||||
poll_get_data->response_data = g_steal_pointer (&response_data);
|
||||
poll_req_data->response_code = response_code;
|
||||
poll_req_data->response_data = g_steal_pointer (&response_data);
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
static void
|
||||
_poll_get_done_cb (GObject *source,
|
||||
_poll_req_done_cb (GObject *source,
|
||||
GAsyncResult *result,
|
||||
gpointer user_data)
|
||||
{
|
||||
PollGetData *poll_get_data = user_data;
|
||||
PollReqData *poll_req_data = user_data;
|
||||
gs_free_error GError *error = NULL;
|
||||
gboolean success;
|
||||
|
||||
success = nmcs_utils_poll_finish (result, NULL, &error);
|
||||
|
||||
if (error)
|
||||
g_task_return_error (poll_get_data->task, g_steal_pointer (&error));
|
||||
g_task_return_error (poll_req_data->task, g_steal_pointer (&error));
|
||||
else
|
||||
g_task_return_boolean (poll_get_data->task, success);
|
||||
g_task_return_boolean (poll_req_data->task, success);
|
||||
|
||||
g_object_unref (poll_get_data->task);
|
||||
g_object_unref (poll_req_data->task);
|
||||
}
|
||||
|
||||
void
|
||||
nm_http_client_poll_get (NMHttpClient *self,
|
||||
nm_http_client_poll_req (NMHttpClient *self,
|
||||
const char *uri,
|
||||
int request_timeout_ms,
|
||||
gssize request_max_data,
|
||||
|
|
@ -504,13 +504,13 @@ nm_http_client_poll_get (NMHttpClient *self,
|
|||
int ratelimit_timeout_ms,
|
||||
const char *const *http_headers,
|
||||
GCancellable *cancellable,
|
||||
NMHttpClientPollGetCheckFcn check_fcn,
|
||||
NMHttpClientPollReqCheckFcn check_fcn,
|
||||
gpointer check_user_data,
|
||||
GAsyncReadyCallback callback,
|
||||
gpointer user_data)
|
||||
{
|
||||
nm_auto_pop_gmaincontext GMainContext *context = NULL;
|
||||
PollGetData *poll_get_data;
|
||||
PollReqData *poll_req_data;
|
||||
|
||||
g_return_if_fail (NM_IS_HTTP_CLIENT (self));
|
||||
g_return_if_fail (uri && uri[0]);
|
||||
|
|
@ -520,9 +520,9 @@ nm_http_client_poll_get (NMHttpClient *self,
|
|||
g_return_if_fail (ratelimit_timeout_ms >= -1);
|
||||
g_return_if_fail (!cancellable || G_CANCELLABLE (cancellable));
|
||||
|
||||
poll_get_data = g_slice_new (PollGetData);
|
||||
*poll_get_data = (PollGetData) {
|
||||
.task = nm_g_task_new (self, cancellable, nm_http_client_poll_get, callback, user_data),
|
||||
poll_req_data = g_slice_new (PollReqData);
|
||||
*poll_req_data = (PollReqData) {
|
||||
.task = nm_g_task_new (self, cancellable, nm_http_client_poll_req, callback, user_data),
|
||||
.uri = g_strdup (uri),
|
||||
.request_timeout_ms = request_timeout_ms,
|
||||
.request_max_data = request_max_data,
|
||||
|
|
@ -533,43 +533,43 @@ nm_http_client_poll_get (NMHttpClient *self,
|
|||
};
|
||||
|
||||
if (http_headers) {
|
||||
poll_get_data->http_headers =
|
||||
poll_req_data->http_headers =
|
||||
nm_utils_strv_dup_packed(http_headers, -1) ?: g_new(const char *, 1);
|
||||
}
|
||||
|
||||
nmcs_wait_for_objects_register (poll_get_data->task);
|
||||
nmcs_wait_for_objects_register (poll_req_data->task);
|
||||
|
||||
g_task_set_task_data (poll_get_data->task,
|
||||
poll_get_data,
|
||||
_poll_get_data_free);
|
||||
g_task_set_task_data (poll_req_data->task,
|
||||
poll_req_data,
|
||||
_poll_req_data_free);
|
||||
|
||||
context = nm_g_main_context_push_thread_default_if_necessary (nm_http_client_get_main_context (self));
|
||||
|
||||
nmcs_utils_poll (poll_timeout_ms,
|
||||
ratelimit_timeout_ms,
|
||||
0,
|
||||
_poll_get_probe_start_fcn,
|
||||
_poll_get_probe_finish_fcn,
|
||||
poll_get_data,
|
||||
_poll_req_probe_start_fcn,
|
||||
_poll_req_probe_finish_fcn,
|
||||
poll_req_data,
|
||||
cancellable,
|
||||
_poll_get_done_cb,
|
||||
poll_get_data);
|
||||
_poll_req_done_cb,
|
||||
poll_req_data);
|
||||
}
|
||||
|
||||
gboolean
|
||||
nm_http_client_poll_get_finish (NMHttpClient *self,
|
||||
nm_http_client_poll_req_finish (NMHttpClient *self,
|
||||
GAsyncResult *result,
|
||||
long *out_response_code,
|
||||
GBytes **out_response_data,
|
||||
GError **error)
|
||||
{
|
||||
PollGetData *poll_get_data;
|
||||
PollReqData *poll_req_data;
|
||||
GTask *task;
|
||||
gboolean success;
|
||||
gs_free_error GError *local_error = NULL;
|
||||
|
||||
g_return_val_if_fail (NM_HTTP_CLIENT (self), FALSE);
|
||||
g_return_val_if_fail (nm_g_task_is_valid (result, self, nm_http_client_poll_get), FALSE);
|
||||
g_return_val_if_fail (nm_g_task_is_valid (result, self, nm_http_client_poll_req), FALSE);
|
||||
|
||||
task = G_TASK (result);
|
||||
|
||||
|
|
@ -583,10 +583,10 @@ nm_http_client_poll_get_finish (NMHttpClient *self,
|
|||
return FALSE;
|
||||
}
|
||||
|
||||
poll_get_data = g_task_get_task_data (task);
|
||||
poll_req_data = g_task_get_task_data (task);
|
||||
|
||||
NM_SET_OUT (out_response_code, poll_get_data->response_code);
|
||||
NM_SET_OUT (out_response_data, g_steal_pointer (&poll_get_data->response_data));
|
||||
NM_SET_OUT (out_response_code, poll_req_data->response_code);
|
||||
NM_SET_OUT (out_response_data, g_steal_pointer (&poll_req_data->response_data));
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -25,12 +25,12 @@ GMainContext *nm_http_client_get_main_context (NMHttpClient *self);
|
|||
|
||||
/*****************************************************************************/
|
||||
|
||||
typedef gboolean (*NMHttpClientPollGetCheckFcn) (long response_code,
|
||||
typedef gboolean (*NMHttpClientPollReqCheckFcn) (long response_code,
|
||||
GBytes *response_data,
|
||||
gpointer check_user_data,
|
||||
GError **error);
|
||||
|
||||
void nm_http_client_poll_get (NMHttpClient *self,
|
||||
void nm_http_client_poll_req (NMHttpClient *self,
|
||||
const char *uri,
|
||||
int request_timeout_ms,
|
||||
gssize request_max_data,
|
||||
|
|
@ -38,12 +38,12 @@ void nm_http_client_poll_get (NMHttpClient *self,
|
|||
int ratelimit_timeout_ms,
|
||||
const char *const *http_headers,
|
||||
GCancellable *cancellable,
|
||||
NMHttpClientPollGetCheckFcn check_fcn,
|
||||
NMHttpClientPollReqCheckFcn check_fcn,
|
||||
gpointer check_user_data,
|
||||
GAsyncReadyCallback callback,
|
||||
gpointer user_data);
|
||||
|
||||
gboolean nm_http_client_poll_get_finish (NMHttpClient *self,
|
||||
gboolean nm_http_client_poll_req_finish (NMHttpClient *self,
|
||||
GAsyncResult *result,
|
||||
long *out_response_code,
|
||||
GBytes **out_response_data,
|
||||
|
|
|
|||
|
|
@ -92,7 +92,7 @@ _detect_get_meta_data_done_cb (GObject *source,
|
|||
gs_free_error GError *error = NULL;
|
||||
gboolean success;
|
||||
|
||||
success = nm_http_client_poll_get_finish (NM_HTTP_CLIENT (source),
|
||||
success = nm_http_client_poll_req_finish (NM_HTTP_CLIENT (source),
|
||||
result,
|
||||
NULL,
|
||||
NULL,
|
||||
|
|
@ -132,7 +132,7 @@ detect (NMCSProvider *provider,
|
|||
|
||||
http_client = nmcs_provider_get_http_client (provider);
|
||||
|
||||
nm_http_client_poll_get (http_client,
|
||||
nm_http_client_poll_req (http_client,
|
||||
(uri = _ec2_uri_concat ("latest/meta-data/")),
|
||||
HTTP_TIMEOUT_MS,
|
||||
256*1024,
|
||||
|
|
@ -200,7 +200,7 @@ _get_config_fetch_done_cb (NMHttpClient *http_client,
|
|||
|
||||
nm_utils_user_data_unpack (user_data, &iface_data, &hwaddr);
|
||||
|
||||
success = nm_http_client_poll_get_finish (http_client,
|
||||
success = nm_http_client_poll_req_finish (http_client,
|
||||
result,
|
||||
NULL,
|
||||
&response_data,
|
||||
|
|
@ -316,7 +316,7 @@ _get_config_metadata_ready_cb (GObject *source,
|
|||
|
||||
nm_g_slice_free (metadata_data);
|
||||
|
||||
nm_http_client_poll_get_finish (NM_HTTP_CLIENT (source),
|
||||
nm_http_client_poll_req_finish (NM_HTTP_CLIENT (source),
|
||||
result,
|
||||
NULL,
|
||||
NULL,
|
||||
|
|
@ -387,7 +387,7 @@ _get_config_metadata_ready_cb (GObject *source,
|
|||
_LOGD ("get-config: start fetching meta data for #%"G_GSSIZE_FORMAT", %s (%s)", config_iface_data->iface_idx, hwaddr, v_mac_data->path);
|
||||
|
||||
iface_data->n_pending++;
|
||||
nm_http_client_poll_get (http_client,
|
||||
nm_http_client_poll_req (http_client,
|
||||
(uri1 = _ec2_uri_interfaces (v_mac_data->path,
|
||||
NM_STR_HAS_SUFFIX (v_mac_data->path, "/")
|
||||
? ""
|
||||
|
|
@ -405,7 +405,7 @@ _get_config_metadata_ready_cb (GObject *source,
|
|||
nm_utils_user_data_pack (iface_data, hwaddr));
|
||||
|
||||
iface_data->n_pending++;
|
||||
nm_http_client_poll_get (http_client,
|
||||
nm_http_client_poll_req (http_client,
|
||||
(uri2 = _ec2_uri_interfaces (v_mac_data->path,
|
||||
NM_STR_HAS_SUFFIX (v_mac_data->path, "/")
|
||||
? ""
|
||||
|
|
@ -526,7 +526,7 @@ get_config (NMCSProvider *provider,
|
|||
* MAC addresses, then we poll until we see them. They might not yet be
|
||||
* around from the start...
|
||||
*/
|
||||
nm_http_client_poll_get (nmcs_provider_get_http_client (provider),
|
||||
nm_http_client_poll_req (nmcs_provider_get_http_client (provider),
|
||||
(uri = _ec2_uri_interfaces ()),
|
||||
HTTP_TIMEOUT_MS,
|
||||
256 * 1024,
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue