http utils: Make a generic FlatpakHttpSession instead of SoupSession

Its still just a SoupSession, but now the implementation is more
centralized and can be something else down the line.
This commit is contained in:
Alexander Larsson 2022-06-13 14:13:15 +02:00 committed by Alexander Larsson
parent d4508905a5
commit b1083a4c41
10 changed files with 123 additions and 99 deletions

View File

@ -221,9 +221,9 @@ install_from (FlatpakDir *dir,
if (g_str_has_prefix (filename, "http:") ||
g_str_has_prefix (filename, "https:"))
{
g_autoptr(SoupSession) soup_session = NULL;
soup_session = flatpak_create_soup_session (PACKAGE_STRING);
file_data = flatpak_load_uri (soup_session, filename, 0, NULL, NULL, NULL, NULL, cancellable, error);
g_autoptr(FlatpakHttpSession) http_session = NULL;
http_session = flatpak_create_http_session (PACKAGE_STRING);
file_data = flatpak_load_uri (http_session, filename, 0, NULL, NULL, NULL, NULL, cancellable, error);
if (file_data == NULL)
{
g_prefix_error (error, "Can't load uri %s: ", filename);

View File

@ -244,10 +244,10 @@ load_options (const char *remote_name,
{
const char *options_data;
gsize options_size;
g_autoptr(SoupSession) soup_session = NULL;
g_autoptr(FlatpakHttpSession) http_session = NULL;
soup_session = flatpak_create_soup_session (PACKAGE_STRING);
bytes = flatpak_load_uri (soup_session, filename, 0, NULL, NULL, NULL, NULL, NULL, &local_error);
http_session = flatpak_create_http_session (PACKAGE_STRING);
bytes = flatpak_load_uri (http_session, filename, 0, NULL, NULL, NULL, NULL, NULL, &local_error);
if (bytes == NULL)
{

View File

@ -165,7 +165,7 @@ static gboolean flatpak_dir_lookup_remote_filter (FlatpakDir *self,
GRegex **deny_regex,
GError **error);
static void ensure_soup_session (FlatpakDir *self);
static void ensure_http_session (FlatpakDir *self);
static void flatpak_dir_log (FlatpakDir *self,
const char *file,
@ -241,7 +241,7 @@ struct FlatpakDir
GRegex *masked;
GRegex *pinned;
SoupSession *soup_session;
FlatpakHttpSession *http_session;
};
G_LOCK_DEFINE_STATIC (config_cache);
@ -1160,14 +1160,14 @@ flatpak_remote_state_fetch_commit_object (FlatpakRemoteState *self,
if (!ostree_repo_remote_get_url (dir->repo, self->remote_name, &base_url, error))
return NULL;
ensure_soup_session (dir);
ensure_http_session (dir);
part1 = g_strndup (checksum, 2);
part2 = g_strdup_printf ("%s.commit", checksum + 2);
object_url = g_build_filename (base_url, "objects", part1, part2, NULL);
bytes = flatpak_load_uri (dir->soup_session, object_url, 0, token,
bytes = flatpak_load_uri (dir->http_session, object_url, 0, token,
NULL, NULL, NULL,
cancellable, error);
if (bytes == NULL)
@ -2586,7 +2586,7 @@ flatpak_dir_finalize (GObject *object)
if (self->system_helper_bus != (gpointer) 1)
g_clear_object (&self->system_helper_bus);
g_clear_object (&self->soup_session);
g_clear_pointer (&self->http_session, flatpak_http_session_free);
g_clear_pointer (&self->summary_cache, g_hash_table_unref);
g_clear_pointer (&self->remote_filters, g_hash_table_unref);
g_clear_pointer (&self->masked, g_regex_unref);
@ -4937,7 +4937,7 @@ flatpak_dir_update_oci_index (FlatpakDir *self,
if (index_cache == NULL)
return NULL;
ensure_soup_session (self);
ensure_http_session (self);
if (!ostree_repo_remote_get_url (self->repo,
remote,
@ -4945,7 +4945,7 @@ flatpak_dir_update_oci_index (FlatpakDir *self,
error))
return NULL;
if (!flatpak_oci_index_ensure_cached (self->soup_session, oci_uri,
if (!flatpak_oci_index_ensure_cached (self->http_session, oci_uri,
index_cache, index_uri_out,
cancellable, &local_error))
{
@ -5043,9 +5043,9 @@ flatpak_dir_update_appstream_oci (FlatpakDir *self,
FALSE, &icons_dfd, error))
return FALSE;
ensure_soup_session (self);
ensure_http_session (self);
appstream = flatpak_oci_index_make_appstream (self->soup_session,
appstream = flatpak_oci_index_make_appstream (self->http_session,
index_cache,
index_uri,
arch,
@ -5476,15 +5476,15 @@ repo_pull (OstreeRepo *self,
}
static void
ensure_soup_session (FlatpakDir *self)
ensure_http_session (FlatpakDir *self)
{
if (g_once_init_enter (&self->soup_session))
if (g_once_init_enter (&self->http_session))
{
SoupSession *soup_session;
FlatpakHttpSession *http_session;
soup_session = flatpak_create_soup_session (PACKAGE_STRING);
http_session = flatpak_create_http_session (PACKAGE_STRING);
g_once_init_leave (&self->soup_session, soup_session);
g_once_init_leave (&self->http_session, http_session);
}
}
@ -5687,8 +5687,8 @@ flatpak_dir_pull_extra_data (FlatpakDir *self,
}
else
{
ensure_soup_session (self);
bytes = flatpak_load_uri (self->soup_session, extra_data_uri, 0, NULL,
ensure_http_session (self);
bytes = flatpak_load_uri (self->http_session, extra_data_uri, 0, NULL,
extra_data_progress_report, progress, NULL,
cancellable, error);
}
@ -12070,7 +12070,7 @@ remote_verify_signature (OstreeRepo *repo,
}
static GBytes *
load_uri_with_fallback (SoupSession *soup_session,
load_uri_with_fallback (FlatpakHttpSession *http_session,
const char *uri,
const char *uri2,
FlatpakHTTPFlags flags,
@ -12081,7 +12081,7 @@ load_uri_with_fallback (SoupSession *soup_session,
g_autoptr(GError) local_error = NULL;
GBytes *res;
res = flatpak_load_uri (soup_session, uri, flags, token,
res = flatpak_load_uri (http_session, uri, flags, token,
NULL, NULL, NULL,
cancellable, &local_error);
if (res)
@ -12093,7 +12093,7 @@ load_uri_with_fallback (SoupSession *soup_session,
return NULL;
}
return flatpak_load_uri (soup_session, uri2, flags, token,
return flatpak_load_uri (http_session, uri2, flags, token,
NULL, NULL, NULL,
cancellable, error);
}
@ -12117,7 +12117,7 @@ flatpak_dir_remote_fetch_summary_index (FlatpakDir *self,
g_autoptr(GBytes) index_sig = NULL;
gboolean gpg_verify_summary;
ensure_soup_session (self);
ensure_http_session (self);
if (!ostree_repo_remote_get_url (self->repo, name_or_uri, &url, error))
return FALSE;
@ -12169,7 +12169,7 @@ flatpak_dir_remote_fetch_summary_index (FlatpakDir *self,
g_debug ("Fetching summary index file for remote %s", name_or_uri);
dl_index = flatpak_load_uri (self->soup_session, index_url, 0, NULL,
dl_index = flatpak_load_uri (self->http_session, index_url, 0, NULL,
NULL, NULL, NULL,
cancellable, error);
if (dl_index == NULL)
@ -12198,7 +12198,7 @@ flatpak_dir_remote_fetch_summary_index (FlatpakDir *self,
g_autoptr(GError) dl_sig_error = NULL;
g_autoptr (GBytes) dl_index_sig = NULL;
dl_index_sig = load_uri_with_fallback (self->soup_session, index_sig_url, index_sig_url2, 0, NULL,
dl_index_sig = load_uri_with_fallback (self->http_session, index_sig_url, index_sig_url2, 0, NULL,
cancellable, &dl_sig_error);
if (dl_index_sig == NULL)
{
@ -12267,7 +12267,7 @@ flatpak_dir_remote_fetch_indexed_summary (FlatpakDir *self,
g_autofree char *checksum = NULL;
g_autofree char *cache_name = NULL;
ensure_soup_session (self);
ensure_http_session (self);
if (!ostree_repo_remote_get_url (self->repo, name_or_uri, &url, error))
return FALSE;
@ -12340,7 +12340,7 @@ flatpak_dir_remote_fetch_indexed_summary (FlatpakDir *self,
g_debug ("Fetching indexed summary delta %s for remote %s", delta_filename, name_or_uri);
g_autoptr(GBytes) delta = flatpak_load_uri (self->soup_session, delta_url, 0, NULL,
g_autoptr(GBytes) delta = flatpak_load_uri (self->http_session, delta_url, 0, NULL,
NULL, NULL, NULL,
cancellable, &delta_error);
if (delta == NULL)
@ -12367,7 +12367,7 @@ flatpak_dir_remote_fetch_indexed_summary (FlatpakDir *self,
g_autofree char *filename = g_strconcat (checksum, ".gz", NULL);
g_debug ("Fetching indexed summary file %s for remote %s", filename, name_or_uri);
g_autofree char *subsummary_url = g_build_filename (url, "summaries", filename, NULL);
summary_z = flatpak_load_uri (self->soup_session, subsummary_url, 0, NULL,
summary_z = flatpak_load_uri (self->http_session, subsummary_url, 0, NULL,
NULL, NULL, NULL,
cancellable, error);
if (summary_z == NULL)

View File

@ -160,24 +160,24 @@ FlatpakOciSignature *flatpak_oci_verify_signature (OstreeRepo *repo,
GBytes *signature,
GError **error);
gboolean flatpak_oci_index_ensure_cached (SoupSession *soup_session,
const char *uri,
GFile *index,
char **index_uri_out,
GCancellable *cancellable,
GError **error);
gboolean flatpak_oci_index_ensure_cached (FlatpakHttpSession *http_session,
const char *uri,
GFile *index,
char **index_uri_out,
GCancellable *cancellable,
GError **error);
GVariant *flatpak_oci_index_make_summary (GFile *index,
const char *index_uri,
GCancellable *cancellable,
GError **error);
GBytes *flatpak_oci_index_make_appstream (SoupSession *soup_session,
GFile *index,
const char *index_uri,
const char *arch,
int icons_dfd,
GCancellable *cancellable,
GError **error);
GBytes *flatpak_oci_index_make_appstream (FlatpakHttpSession *http_session,
GFile *index,
const char *index_uri,
const char *arch,
int icons_dfd,
GCancellable *cancellable,
GError **error);
#endif /* __FLATPAK_OCI_REGISTRY_H__ */

View File

@ -68,6 +68,7 @@ struct FlatpakOciRegistry
int dfd;
/* Remote repos */
FlatpakHttpSession *http_session;
SoupSession *soup_session;
GUri *base_uri;
};
@ -112,6 +113,7 @@ flatpak_oci_registry_finalize (GObject *object)
close (self->dfd);
g_clear_object (&self->soup_session);
g_clear_pointer (&self->http_session, flatpak_http_session_free);
g_clear_pointer (&self->base_uri, g_uri_unref);
g_free (self->uri);
g_free (self->token);
@ -346,7 +348,7 @@ choose_alt_uri (GUri *base_uri,
}
static GBytes *
remote_load_file (SoupSession *soup_session,
remote_load_file (FlatpakHttpSession *http_session,
GUri *base,
const char *subpath,
const char **alt_uris,
@ -366,7 +368,7 @@ remote_load_file (SoupSession *soup_session,
return NULL;
}
bytes = flatpak_load_uri (soup_session,
bytes = flatpak_load_uri (http_session,
uri_s, FLATPAK_HTTP_FLAGS_ACCEPT_OCI,
token,
NULL, NULL, out_content_type,
@ -388,7 +390,7 @@ flatpak_oci_registry_load_file (FlatpakOciRegistry *self,
if (self->dfd != -1)
return local_load_file (self->dfd, subpath, cancellable, error);
else
return remote_load_file (self->soup_session, self->base_uri, subpath, alt_uris, self->token, out_content_type, cancellable, error);
return remote_load_file (self->http_session, self->base_uri, subpath, alt_uris, self->token, out_content_type, cancellable, error);
}
static JsonNode *
@ -549,6 +551,7 @@ flatpak_oci_registry_ensure_remote (FlatpakOciRegistry *self,
return FALSE;
}
self->http_session = flatpak_create_http_session (PACKAGE_STRING);
self->soup_session = flatpak_create_soup_session (PACKAGE_STRING);
baseuri = g_uri_parse (self->uri, FLATPAK_HTTP_URI_FLAGS | G_URI_FLAGS_PARSE_RELAXED, NULL);
if (baseuri == NULL)
@ -817,7 +820,7 @@ flatpak_oci_registry_download_blob (FlatpakOciRegistry *self,
if (fd == -1)
return -1;
if (!flatpak_download_http_uri (self->soup_session, uri_s,
if (!flatpak_download_http_uri (self->http_session, uri_s,
FLATPAK_HTTP_FLAGS_ACCEPT_OCI,
out_stream,
self->token,
@ -909,7 +912,7 @@ flatpak_oci_registry_mirror_blob (FlatpakOciRegistry *self,
out_stream = g_unix_output_stream_new (tmpf.fd, FALSE);
if (!flatpak_download_http_uri (source_registry->soup_session, uri_s,
if (!flatpak_download_http_uri (source_registry->http_session, uri_s,
FLATPAK_HTTP_FLAGS_ACCEPT_OCI, out_stream,
self->token,
progress_cb, user_data,
@ -2073,7 +2076,7 @@ flatpak_oci_registry_find_delta_manifest (FlatpakOciRegistry *registry,
g_autofree char *uri_s = parse_relative_uri (registry->base_uri, delta_manifest_url, NULL);
if (uri_s != NULL)
bytes = flatpak_load_uri (registry->soup_session,
bytes = flatpak_load_uri (registry->http_session,
uri_s, FLATPAK_HTTP_FLAGS_ACCEPT_OCI,
registry->token,
NULL, NULL, NULL,
@ -2737,12 +2740,12 @@ compare_image_by_ref (ImageInfo *a,
}
gboolean
flatpak_oci_index_ensure_cached (SoupSession *soup_session,
const char *uri,
GFile *index,
char **index_uri_out,
GCancellable *cancellable,
GError **error)
flatpak_oci_index_ensure_cached (FlatpakHttpSession *http_session,
const char *uri,
GFile *index,
char **index_uri_out,
GCancellable *cancellable,
GError **error)
{
g_autofree char *index_path = g_file_get_path (index);
g_autoptr(GUri) base_uri = NULL;
@ -2835,7 +2838,7 @@ flatpak_oci_index_ensure_cached (SoupSession *soup_session,
query_uri_s = g_uri_to_string_partial (query_uri, G_URI_HIDE_PASSWORD);
success = flatpak_cache_http_uri (soup_session,
success = flatpak_cache_http_uri (http_session,
query_uri_s,
FLATPAK_HTTP_FLAGS_STORE_COMPRESSED,
AT_FDCWD, index_path,
@ -3071,15 +3074,15 @@ flatpak_oci_index_make_summary (GFile *index,
}
static gboolean
add_icon_image (SoupSession *soup_session,
const char *index_uri,
int icons_dfd,
GHashTable *used_icons,
const char *subdir,
const char *id,
const char *icon_data,
GCancellable *cancellable,
GError **error)
add_icon_image (FlatpakHttpSession *http_session,
const char *index_uri,
int icons_dfd,
GHashTable *used_icons,
const char *subdir,
const char *id,
const char *icon_data,
GCancellable *cancellable,
GError **error)
{
g_autofree char *icon_name = g_strconcat (id, ".png", NULL);
g_autofree char *icon_path = g_build_filename (subdir, icon_name, NULL);
@ -3123,7 +3126,7 @@ add_icon_image (SoupSession *soup_session,
if (icon_uri_s == NULL)
return FALSE;
if (!flatpak_cache_http_uri (soup_session, icon_uri_s,
if (!flatpak_cache_http_uri (http_session, icon_uri_s,
0 /* flags */,
icons_dfd, icon_path,
NULL, NULL,
@ -3141,7 +3144,7 @@ add_icon_image (SoupSession *soup_session,
}
static void
add_image_to_appstream (SoupSession *soup_session,
add_image_to_appstream (FlatpakHttpSession *http_session,
const char *index_uri,
FlatpakXml *appstream_root,
int icons_dfd,
@ -3232,7 +3235,7 @@ add_image_to_appstream (SoupSession *soup_session,
const char *icon_data = get_image_metadata (image, icon_sizes[i].label);
if (icon_data)
{
if (!add_icon_image (soup_session,
if (!add_icon_image (http_session,
index_uri,
icons_dfd,
used_icons,
@ -3317,13 +3320,13 @@ clean_unused_icons (int icons_dfd,
}
GBytes *
flatpak_oci_index_make_appstream (SoupSession *soup_session,
GFile *index,
const char *index_uri,
const char *arch,
int icons_dfd,
GCancellable *cancellable,
GError **error)
flatpak_oci_index_make_appstream (FlatpakHttpSession *http_session,
GFile *index,
const char *index_uri,
const char *arch,
int icons_dfd,
GCancellable *cancellable,
GError **error)
{
g_autoptr(FlatpakOciIndexResponse) response = NULL;
g_autoptr(FlatpakXml) appstream_root = NULL;
@ -3351,7 +3354,7 @@ flatpak_oci_index_make_appstream (SoupSession *soup_session,
{
FlatpakOciIndexImage *image = r->images[j];
if (g_strcmp0 (image->architecture, oci_arch) == 0)
add_image_to_appstream (soup_session,
add_image_to_appstream (http_session,
index_uri,
appstream_root, icons_dfd, used_icons,
r, image,
@ -3367,7 +3370,7 @@ flatpak_oci_index_make_appstream (SoupSession *soup_session,
{
FlatpakOciIndexImage *image = list->images[k];
if (g_strcmp0 (image->architecture, oci_arch) == 0)
add_image_to_appstream (soup_session,
add_image_to_appstream (http_session,
index_uri,
appstream_root, icons_dfd, used_icons,
r, image,

View File

@ -22,7 +22,6 @@
#include <stdio.h>
#include <glib/gi18n-lib.h>
#include <libsoup/soup.h>
#include "flatpak-auth-private.h"
#include "flatpak-error.h"
@ -4314,7 +4313,7 @@ load_flatpakrepo_file (FlatpakTransaction *self,
g_autoptr(GBytes) dep_data = NULL;
g_autoptr(GKeyFile) dep_keyfile = g_key_file_new ();
g_autoptr(GError) local_error = NULL;
g_autoptr(SoupSession) soup_session = NULL;
g_autoptr(FlatpakHttpSession) http_session = NULL;
if (priv->disable_deps)
return TRUE;
@ -4324,8 +4323,8 @@ load_flatpakrepo_file (FlatpakTransaction *self,
!g_str_has_prefix (dep_url, "file:"))
return flatpak_fail_error (error, FLATPAK_ERROR_INVALID_DATA, _("Flatpakrepo URL %s not file, HTTP or HTTPS"), dep_url);
soup_session = flatpak_create_soup_session (PACKAGE_STRING);
dep_data = flatpak_load_uri (soup_session, dep_url, 0, NULL, NULL, NULL, NULL, cancellable, error);
http_session = flatpak_create_http_session (PACKAGE_STRING);
dep_data = flatpak_load_uri (http_session, dep_url, 0, NULL, NULL, NULL, NULL, cancellable, error);
if (dep_data == NULL)
{
g_prefix_error (error, _("Can't load dependent file %s: "), dep_url);

View File

@ -22,7 +22,6 @@
#define __FLATPAK_UTILS_HTTP_H__
#include <string.h>
#include <libsoup/soup.h>
typedef enum {
@ -34,9 +33,15 @@ typedef enum {
GQuark flatpak_http_error_quark (void);
SoupSession * flatpak_create_soup_session (const char *user_agent);
typedef struct FlatpakHttpSession FlatpakHttpSession;
FlatpakHttpSession* flatpak_create_http_session (const char *user_agent);
void flatpak_http_session_free (FlatpakHttpSession* http_session);
G_DEFINE_AUTOPTR_CLEANUP_FUNC(FlatpakHttpSession, flatpak_http_session_free)
typedef enum {
FLATPAK_HTTP_FLAGS_NONE = 0,
FLATPAK_HTTP_FLAGS_ACCEPT_OCI = 1 << 0,
@ -46,7 +51,7 @@ typedef enum {
typedef void (*FlatpakLoadUriProgress) (guint64 downloaded_bytes,
gpointer user_data);
GBytes * flatpak_load_uri (SoupSession *soup_session,
GBytes * flatpak_load_uri (FlatpakHttpSession *http_session,
const char *uri,
FlatpakHTTPFlags flags,
const char *token,
@ -55,7 +60,7 @@ GBytes * flatpak_load_uri (SoupSession *soup_session,
char **out_content_type,
GCancellable *cancellable,
GError **error);
gboolean flatpak_download_http_uri (SoupSession *soup_session,
gboolean flatpak_download_http_uri (FlatpakHttpSession *http_session,
const char *uri,
FlatpakHTTPFlags flags,
GOutputStream *out,
@ -64,7 +69,7 @@ gboolean flatpak_download_http_uri (SoupSession *soup_session,
gpointer user_data,
GCancellable *cancellable,
GError **error);
gboolean flatpak_cache_http_uri (SoupSession *soup_session,
gboolean flatpak_cache_http_uri (FlatpakHttpSession *http_session,
const char *uri,
FlatpakHTTPFlags flags,
int dest_dfd,

View File

@ -552,6 +552,20 @@ flatpak_create_soup_session (const char *user_agent)
return soup_session;
}
FlatpakHttpSession *
flatpak_create_http_session (const char *user_agent)
{
return (FlatpakHttpSession *)flatpak_create_soup_session (user_agent);
}
void
flatpak_http_session_free (FlatpakHttpSession* http_session)
{
SoupSession *soup_session = (SoupSession *)http_session;
g_object_unref (soup_session);
}
/* Check whether a particular operation should be retried. This is entirely
* based on how it failed (if at all) last time, and whether the operation has
* some retries left. The retry count is set when the operation is first
@ -585,7 +599,7 @@ flatpak_http_should_retry_request (const GError *error,
}
static GBytes *
flatpak_load_http_uri_once (SoupSession *soup_session,
flatpak_load_http_uri_once (FlatpakHttpSession *http_session,
const char *uri,
FlatpakHTTPFlags flags,
const char *token,
@ -595,6 +609,7 @@ flatpak_load_http_uri_once (SoupSession *soup_session,
GCancellable *cancellable,
GError **error)
{
SoupSession *soup_session = (SoupSession *)http_session;
GBytes *bytes = NULL;
g_autoptr(GMainContext) context = NULL;
g_autoptr(SoupRequestHTTP) request = NULL;
@ -652,7 +667,7 @@ flatpak_load_http_uri_once (SoupSession *soup_session,
}
GBytes *
flatpak_load_uri (SoupSession *soup_session,
flatpak_load_uri (FlatpakHttpSession *http_session,
const char *uri,
FlatpakHTTPFlags flags,
const char *token,
@ -693,7 +708,7 @@ flatpak_load_uri (SoupSession *soup_session,
progress (0, user_data); /* Reset the progress */
}
bytes = flatpak_load_http_uri_once (soup_session, uri, flags,
bytes = flatpak_load_http_uri_once (http_session, uri, flags,
token, progress, user_data, out_content_type,
cancellable, &local_error);
@ -708,7 +723,7 @@ flatpak_load_uri (SoupSession *soup_session,
}
static gboolean
flatpak_download_http_uri_once (SoupSession *soup_session,
flatpak_download_http_uri_once (FlatpakHttpSession *http_session,
const char *uri,
FlatpakHTTPFlags flags,
GOutputStream *out,
@ -719,6 +734,7 @@ flatpak_download_http_uri_once (SoupSession *soup_session,
GCancellable *cancellable,
GError **error)
{
SoupSession *soup_session = (SoupSession *)http_session;
g_autoptr(SoupRequestHTTP) request = NULL;
g_autoptr(GMainContext) context = NULL;
LoadUriData data = { NULL };
@ -773,7 +789,7 @@ flatpak_download_http_uri_once (SoupSession *soup_session,
}
gboolean
flatpak_download_http_uri (SoupSession *soup_session,
flatpak_download_http_uri (FlatpakHttpSession *http_session,
const char *uri,
FlatpakHTTPFlags flags,
GOutputStream *out,
@ -801,7 +817,7 @@ flatpak_download_http_uri (SoupSession *soup_session,
progress (0, user_data); /* Reset the progress */
}
if (flatpak_download_http_uri_once (soup_session, uri, flags,
if (flatpak_download_http_uri_once (http_session, uri, flags,
out, token,
progress, user_data,
&bytes_written,
@ -856,7 +872,7 @@ sync_and_rename_tmpfile (GLnxTmpfile *tmpfile,
}
static gboolean
flatpak_cache_http_uri_once (SoupSession *soup_session,
flatpak_cache_http_uri_once (FlatpakHttpSession *http_session,
const char *uri,
FlatpakHTTPFlags flags,
int dest_dfd,
@ -866,6 +882,7 @@ flatpak_cache_http_uri_once (SoupSession *soup_session,
GCancellable *cancellable,
GError **error)
{
SoupSession *soup_session = (SoupSession *)http_session;
g_autoptr(SoupRequestHTTP) request = NULL;
g_autoptr(GMainContext) context = NULL;
g_autoptr(CacheHttpData) cache_data = NULL;
@ -1023,7 +1040,7 @@ flatpak_cache_http_uri_once (SoupSession *soup_session,
}
gboolean
flatpak_cache_http_uri (SoupSession *soup_session,
flatpak_cache_http_uri (FlatpakHttpSession *http_session,
const char *uri,
FlatpakHTTPFlags flags,
int dest_dfd,
@ -1049,7 +1066,7 @@ flatpak_cache_http_uri (SoupSession *soup_session,
progress (0, user_data); /* Reset the progress */
}
if (flatpak_cache_http_uri_once (soup_session, uri, flags,
if (flatpak_cache_http_uri_once (http_session, uri, flags,
dest_dfd, dest_subpath,
progress, user_data,
cancellable, &local_error))

View File

@ -33,7 +33,7 @@ FlatpakAuthenticator *authenticator;
static GMainLoop *main_loop = NULL;
static guint name_owner_id = 0;
static gboolean no_idle_exit = FALSE;
static SoupSession *http_session = NULL;
static FlatpakHttpSession *http_session = NULL;
#define IDLE_TIMEOUT_SECS 10 * 60
@ -769,7 +769,7 @@ main (int argc,
g_debug ("Started flatpak-authenticator");
http_session = flatpak_create_soup_session (PACKAGE_STRING);
http_session = flatpak_create_http_session (PACKAGE_STRING);
session_bus = g_bus_get_sync (G_BUS_TYPE_SESSION, NULL, &error);
if (session_bus == NULL)

View File

@ -3,7 +3,7 @@
int
main (int argc, char *argv[])
{
g_autoptr(SoupSession) session = flatpak_create_soup_session (PACKAGE_STRING);
g_autoptr(FlatpakHttpSession) session = flatpak_create_http_session (PACKAGE_STRING);
GError *error = NULL;
const char *url, *dest;
int flags = 0;