mirror of
https://git.proxmox.com/git/fwupd
synced 2025-08-07 23:37:53 +00:00
trivial: Remove fwupd_remote_build_uri()
This also removes the long-deprecated fwupd_remote_get_uri() and fwupd_remote_get_uri_asc()
This commit is contained in:
parent
ba73c76d69
commit
b86ef97b36
@ -18,3 +18,6 @@ Migration from Version 0.9.x
|
|||||||
* Rename fwupd_client_get_devices_simple -> fwupd_client_get_devices
|
* Rename fwupd_client_get_devices_simple -> fwupd_client_get_devices
|
||||||
* Rename fwupd_client_get_details_local -> fwupd_client_get_details
|
* Rename fwupd_client_get_details_local -> fwupd_client_get_details
|
||||||
* Rename fwupd_client_update_metadata_with_id -> fwupd_client_update_metadata
|
* Rename fwupd_client_update_metadata_with_id -> fwupd_client_update_metadata
|
||||||
|
* Rename fwupd_remote_get_uri -> fwupd_remote_get_metadata_uri
|
||||||
|
* Rename fwupd_remote_get_uri_asc -> fwupd_remote_get_metadata_uri_sig
|
||||||
|
* Rename fwupd_remote_build_uri -> fwupd_remote_build_firmware_uri
|
||||||
|
@ -23,13 +23,6 @@
|
|||||||
#define __FWUPD_DEPRECATED_H
|
#define __FWUPD_DEPRECATED_H
|
||||||
|
|
||||||
#include "fwupd-client.h"
|
#include "fwupd-client.h"
|
||||||
#include "fwupd-remote.h"
|
|
||||||
|
|
||||||
SoupURI *fwupd_remote_get_uri (FwupdRemote *self)
|
|
||||||
G_DEPRECATED_FOR(fwupd_remote_get_metadata_uri);
|
|
||||||
SoupURI *fwupd_remote_get_uri_asc (FwupdRemote *self)
|
|
||||||
G_DEPRECATED_FOR(fwupd_remote_get_metadata_uri_sig);
|
|
||||||
|
|
||||||
|
|
||||||
/* matches */
|
/* matches */
|
||||||
G_DEPRECATED_FOR(fwupd_device_add_guid)
|
G_DEPRECATED_FOR(fwupd_device_add_guid)
|
||||||
|
@ -21,6 +21,8 @@
|
|||||||
|
|
||||||
#include "config.h"
|
#include "config.h"
|
||||||
|
|
||||||
|
#include <libsoup/soup.h>
|
||||||
|
|
||||||
#include "fwupd-deprecated.h"
|
#include "fwupd-deprecated.h"
|
||||||
#include "fwupd-error.h"
|
#include "fwupd-error.h"
|
||||||
#include "fwupd-remote-private.h"
|
#include "fwupd-remote-private.h"
|
||||||
@ -45,8 +47,6 @@ struct _FwupdRemote
|
|||||||
gchar *filename_cache_sig;
|
gchar *filename_cache_sig;
|
||||||
gchar *filename_source;
|
gchar *filename_source;
|
||||||
gboolean enabled;
|
gboolean enabled;
|
||||||
SoupURI *uri;
|
|
||||||
SoupURI *uri_asc;
|
|
||||||
gint priority;
|
gint priority;
|
||||||
guint64 mtime;
|
guint64 mtime;
|
||||||
gchar **order_after;
|
gchar **order_after;
|
||||||
@ -68,10 +68,6 @@ fwupd_remote_set_username (FwupdRemote *self, const gchar *username)
|
|||||||
if (username != NULL && username[0] == '\0')
|
if (username != NULL && username[0] == '\0')
|
||||||
username = NULL;
|
username = NULL;
|
||||||
self->username = g_strdup (username);
|
self->username = g_strdup (username);
|
||||||
if (self->uri != NULL)
|
|
||||||
soup_uri_set_user (self->uri, username);
|
|
||||||
if (self->uri_asc != NULL)
|
|
||||||
soup_uri_set_user (self->uri_asc, username);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
@ -87,10 +83,6 @@ fwupd_remote_set_password (FwupdRemote *self, const gchar *password)
|
|||||||
if (password != NULL && password[0] == '\0')
|
if (password != NULL && password[0] == '\0')
|
||||||
password = NULL;
|
password = NULL;
|
||||||
self->password = g_strdup (password);
|
self->password = g_strdup (password);
|
||||||
if (self->uri != NULL)
|
|
||||||
soup_uri_set_password (self->uri, password);
|
|
||||||
if (self->uri_asc != NULL)
|
|
||||||
soup_uri_set_password (self->uri_asc, password);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
@ -131,6 +123,57 @@ fwupd_remote_get_suffix_for_keyring_kind (FwupdKeyringKind keyring_kind)
|
|||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static SoupURI *
|
||||||
|
fwupd_remote_build_uri (FwupdRemote *self, const gchar *url, GError **error)
|
||||||
|
{
|
||||||
|
SoupURI *uri;
|
||||||
|
|
||||||
|
g_return_val_if_fail (FWUPD_IS_REMOTE (self), NULL);
|
||||||
|
g_return_val_if_fail (url != NULL, NULL);
|
||||||
|
g_return_val_if_fail (error == NULL || *error == NULL, NULL);
|
||||||
|
|
||||||
|
/* create URI, substituting if required */
|
||||||
|
if (self->firmware_base_uri != NULL) {
|
||||||
|
g_autoptr(SoupURI) uri_tmp = NULL;
|
||||||
|
g_autofree gchar *basename = NULL;
|
||||||
|
g_autofree gchar *url2 = NULL;
|
||||||
|
uri_tmp = soup_uri_new (url);
|
||||||
|
if (uri_tmp == NULL) {
|
||||||
|
g_set_error (error,
|
||||||
|
FWUPD_ERROR,
|
||||||
|
FWUPD_ERROR_INVALID_FILE,
|
||||||
|
"Failed to parse URI '%s'", url);
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
basename = g_path_get_basename (soup_uri_get_path (uri_tmp));
|
||||||
|
url2 = g_build_filename (self->firmware_base_uri, basename, NULL);
|
||||||
|
uri = soup_uri_new (url2);
|
||||||
|
if (uri == NULL) {
|
||||||
|
g_set_error (error,
|
||||||
|
FWUPD_ERROR,
|
||||||
|
FWUPD_ERROR_INVALID_FILE,
|
||||||
|
"Failed to parse URI '%s'", url2);
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
uri = soup_uri_new (url);
|
||||||
|
if (uri == NULL) {
|
||||||
|
g_set_error (error,
|
||||||
|
FWUPD_ERROR,
|
||||||
|
FWUPD_ERROR_INVALID_FILE,
|
||||||
|
"Failed to parse URI '%s'", url);
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/* set the username and password */
|
||||||
|
if (self->username != NULL)
|
||||||
|
soup_uri_set_user (uri, self->username);
|
||||||
|
if (self->password != NULL)
|
||||||
|
soup_uri_set_password (uri, self->password);
|
||||||
|
return uri;
|
||||||
|
}
|
||||||
|
|
||||||
/* note, this has to be set before username and password */
|
/* note, this has to be set before username and password */
|
||||||
static void
|
static void
|
||||||
fwupd_remote_set_metadata_uri (FwupdRemote *self, const gchar *metadata_uri)
|
fwupd_remote_set_metadata_uri (FwupdRemote *self, const gchar *metadata_uri)
|
||||||
@ -138,25 +181,27 @@ fwupd_remote_set_metadata_uri (FwupdRemote *self, const gchar *metadata_uri)
|
|||||||
const gchar *suffix;
|
const gchar *suffix;
|
||||||
g_autofree gchar *basename = NULL;
|
g_autofree gchar *basename = NULL;
|
||||||
g_autofree gchar *basename_asc = NULL;
|
g_autofree gchar *basename_asc = NULL;
|
||||||
|
g_autoptr(SoupURI) uri = NULL;
|
||||||
|
g_autoptr(SoupURI) uri_asc = NULL;
|
||||||
|
|
||||||
|
/* build the URI */
|
||||||
|
uri = soup_uri_new (metadata_uri);
|
||||||
|
if (uri == NULL)
|
||||||
|
return;
|
||||||
|
|
||||||
/* save this so we can export the object as a GVariant */
|
/* save this so we can export the object as a GVariant */
|
||||||
self->metadata_uri = g_strdup (metadata_uri);
|
self->metadata_uri = g_strdup (metadata_uri);
|
||||||
|
|
||||||
/* build the URI */
|
|
||||||
self->uri = soup_uri_new (metadata_uri);
|
|
||||||
if (self->uri == NULL)
|
|
||||||
return;
|
|
||||||
|
|
||||||
/* generate some plausible local filenames */
|
/* generate some plausible local filenames */
|
||||||
basename = g_path_get_basename (soup_uri_get_path (self->uri));
|
basename = g_path_get_basename (soup_uri_get_path (uri));
|
||||||
self->filename = g_strdup_printf ("%s-%s", self->id, basename);
|
self->filename = g_strdup_printf ("%s-%s", self->id, basename);
|
||||||
|
|
||||||
/* generate the signature URI too */
|
/* generate the signature URI too */
|
||||||
suffix = fwupd_remote_get_suffix_for_keyring_kind (self->keyring_kind);
|
suffix = fwupd_remote_get_suffix_for_keyring_kind (self->keyring_kind);
|
||||||
if (suffix != NULL) {
|
if (suffix != NULL) {
|
||||||
self->metadata_uri_sig = g_strconcat (metadata_uri, suffix, NULL);
|
self->metadata_uri_sig = g_strconcat (metadata_uri, suffix, NULL);
|
||||||
self->uri_asc = fwupd_remote_build_uri (self, self->metadata_uri_sig, NULL);
|
uri_asc = fwupd_remote_build_uri (self, self->metadata_uri_sig, NULL);
|
||||||
basename_asc = g_path_get_basename (soup_uri_get_path (self->uri_asc));
|
basename_asc = g_path_get_basename (soup_uri_get_path (uri_asc));
|
||||||
self->filename_asc = g_strdup_printf ("%s-%s", self->id, basename_asc);
|
self->filename_asc = g_strdup_printf ("%s-%s", self->id, basename_asc);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -318,7 +363,7 @@ fwupd_remote_load_from_filename (FwupdRemote *self,
|
|||||||
fwupd_remote_set_metadata_uri (self, metadata_uri);
|
fwupd_remote_set_metadata_uri (self, metadata_uri);
|
||||||
|
|
||||||
/* check the URI was valid */
|
/* check the URI was valid */
|
||||||
if (self->uri == NULL) {
|
if (self->metadata_uri == NULL) {
|
||||||
g_set_error (error,
|
g_set_error (error,
|
||||||
FWUPD_ERROR,
|
FWUPD_ERROR,
|
||||||
FWUPD_ERROR_INVALID_FILE,
|
FWUPD_ERROR_INVALID_FILE,
|
||||||
@ -626,70 +671,6 @@ fwupd_remote_get_title (FwupdRemote *self)
|
|||||||
return self->title;
|
return self->title;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* fwupd_remote_build_uri:
|
|
||||||
* @self: A #FwupdRemote
|
|
||||||
* @url: the URL to use
|
|
||||||
* @error: the #GError, or %NULL
|
|
||||||
*
|
|
||||||
* Builds a URI for the URL using the username and password set for the remote,
|
|
||||||
* including any basename URI substitution.
|
|
||||||
*
|
|
||||||
* Returns: (transfer full): a #SoupURI, or %NULL for error
|
|
||||||
*
|
|
||||||
* Since: 0.9.3
|
|
||||||
**/
|
|
||||||
SoupURI *
|
|
||||||
fwupd_remote_build_uri (FwupdRemote *self, const gchar *url, GError **error)
|
|
||||||
{
|
|
||||||
SoupURI *uri;
|
|
||||||
|
|
||||||
g_return_val_if_fail (FWUPD_IS_REMOTE (self), NULL);
|
|
||||||
g_return_val_if_fail (url != NULL, NULL);
|
|
||||||
g_return_val_if_fail (error == NULL || *error == NULL, NULL);
|
|
||||||
|
|
||||||
/* create URI, substituting if required */
|
|
||||||
if (self->firmware_base_uri != NULL) {
|
|
||||||
g_autoptr(SoupURI) uri_tmp = NULL;
|
|
||||||
g_autofree gchar *basename = NULL;
|
|
||||||
g_autofree gchar *url2 = NULL;
|
|
||||||
uri_tmp = soup_uri_new (url);
|
|
||||||
if (uri_tmp == NULL) {
|
|
||||||
g_set_error (error,
|
|
||||||
FWUPD_ERROR,
|
|
||||||
FWUPD_ERROR_INVALID_FILE,
|
|
||||||
"Failed to parse URI '%s'", url);
|
|
||||||
return NULL;
|
|
||||||
}
|
|
||||||
basename = g_path_get_basename (soup_uri_get_path (uri_tmp));
|
|
||||||
url2 = g_build_filename (self->firmware_base_uri, basename, NULL);
|
|
||||||
uri = soup_uri_new (url2);
|
|
||||||
if (uri == NULL) {
|
|
||||||
g_set_error (error,
|
|
||||||
FWUPD_ERROR,
|
|
||||||
FWUPD_ERROR_INVALID_FILE,
|
|
||||||
"Failed to parse URI '%s'", url2);
|
|
||||||
return NULL;
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
uri = soup_uri_new (url);
|
|
||||||
if (uri == NULL) {
|
|
||||||
g_set_error (error,
|
|
||||||
FWUPD_ERROR,
|
|
||||||
FWUPD_ERROR_INVALID_FILE,
|
|
||||||
"Failed to parse URI '%s'", url);
|
|
||||||
return NULL;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/* set the username and password from the metadata URI */
|
|
||||||
if (self->uri != NULL) {
|
|
||||||
soup_uri_set_user (uri, soup_uri_get_user (self->uri));
|
|
||||||
soup_uri_set_password (uri, soup_uri_get_password (self->uri));
|
|
||||||
}
|
|
||||||
return uri;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* fwupd_remote_build_firmware_uri:
|
* fwupd_remote_build_firmware_uri:
|
||||||
* @self: A #FwupdRemote
|
* @self: A #FwupdRemote
|
||||||
@ -712,40 +693,6 @@ fwupd_remote_build_firmware_uri (FwupdRemote *self, const gchar *url, GError **e
|
|||||||
return soup_uri_to_string (uri, FALSE);
|
return soup_uri_to_string (uri, FALSE);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* fwupd_remote_get_uri:
|
|
||||||
* @self: A #FwupdRemote
|
|
||||||
*
|
|
||||||
* Gets the URI for the remote metadata.
|
|
||||||
*
|
|
||||||
* Returns: (transfer none): a #SoupURI, or %NULL for invalid.
|
|
||||||
*
|
|
||||||
* Since: 0.9.3
|
|
||||||
**/
|
|
||||||
SoupURI *
|
|
||||||
fwupd_remote_get_uri (FwupdRemote *self)
|
|
||||||
{
|
|
||||||
g_return_val_if_fail (FWUPD_IS_REMOTE (self), NULL);
|
|
||||||
return self->uri;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* fwupd_remote_get_uri_asc:
|
|
||||||
* @self: A #FwupdRemote
|
|
||||||
*
|
|
||||||
* Gets the URI for the remote signature.
|
|
||||||
*
|
|
||||||
* Returns: (transfer none): a #SoupURI, or %NULL for invalid.
|
|
||||||
*
|
|
||||||
* Since: 0.9.3
|
|
||||||
**/
|
|
||||||
SoupURI *
|
|
||||||
fwupd_remote_get_uri_asc (FwupdRemote *self)
|
|
||||||
{
|
|
||||||
g_return_val_if_fail (FWUPD_IS_REMOTE (self), NULL);
|
|
||||||
return self->uri_asc;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* fwupd_remote_get_metadata_uri:
|
* fwupd_remote_get_metadata_uri:
|
||||||
* @self: A #FwupdRemote
|
* @self: A #FwupdRemote
|
||||||
@ -1055,10 +1002,6 @@ fwupd_remote_finalize (GObject *obj)
|
|||||||
g_free (self->filename_source);
|
g_free (self->filename_source);
|
||||||
g_strfreev (self->order_after);
|
g_strfreev (self->order_after);
|
||||||
g_strfreev (self->order_before);
|
g_strfreev (self->order_before);
|
||||||
if (self->uri != NULL)
|
|
||||||
soup_uri_free (self->uri);
|
|
||||||
if (self->uri_asc != NULL)
|
|
||||||
soup_uri_free (self->uri_asc);
|
|
||||||
|
|
||||||
G_OBJECT_CLASS (fwupd_remote_parent_class)->finalize (obj);
|
G_OBJECT_CLASS (fwupd_remote_parent_class)->finalize (obj);
|
||||||
}
|
}
|
||||||
|
@ -22,8 +22,6 @@
|
|||||||
#ifndef __FWUPD_REMOTE_H
|
#ifndef __FWUPD_REMOTE_H
|
||||||
#define __FWUPD_REMOTE_H
|
#define __FWUPD_REMOTE_H
|
||||||
|
|
||||||
#include <libsoup/soup.h>
|
|
||||||
|
|
||||||
#include "fwupd-enums.h"
|
#include "fwupd-enums.h"
|
||||||
|
|
||||||
G_BEGIN_DECLS
|
G_BEGIN_DECLS
|
||||||
@ -63,9 +61,6 @@ FwupdKeyringKind fwupd_remote_get_keyring_kind (FwupdRemote *self);
|
|||||||
gchar *fwupd_remote_build_firmware_uri (FwupdRemote *self,
|
gchar *fwupd_remote_build_firmware_uri (FwupdRemote *self,
|
||||||
const gchar *url,
|
const gchar *url,
|
||||||
GError **error);
|
GError **error);
|
||||||
SoupURI *fwupd_remote_build_uri (FwupdRemote *self,
|
|
||||||
const gchar *url,
|
|
||||||
GError **error);
|
|
||||||
|
|
||||||
G_END_DECLS
|
G_END_DECLS
|
||||||
|
|
||||||
|
@ -61,7 +61,7 @@ fwupd = shared_library(
|
|||||||
pkgg = import('pkgconfig')
|
pkgg = import('pkgconfig')
|
||||||
pkgg.generate(
|
pkgg.generate(
|
||||||
libraries : fwupd,
|
libraries : fwupd,
|
||||||
requires : [ 'gio-2.0', 'libsoup-2.4' ],
|
requires : [ 'gio-2.0' ],
|
||||||
subdirs : 'fwupd-1',
|
subdirs : 'fwupd-1',
|
||||||
version : meson.project_version(),
|
version : meson.project_version(),
|
||||||
name : 'fwupd',
|
name : 'fwupd',
|
||||||
|
@ -1339,6 +1339,7 @@ fu_util_update_device_with_release (FuUtilPrivate *priv,
|
|||||||
const gchar *uri_tmp;
|
const gchar *uri_tmp;
|
||||||
g_autofree gchar *basename = NULL;
|
g_autofree gchar *basename = NULL;
|
||||||
g_autofree gchar *fn = NULL;
|
g_autofree gchar *fn = NULL;
|
||||||
|
g_autofree gchar *uri_str = NULL;
|
||||||
g_autoptr(SoupURI) uri = NULL;
|
g_autoptr(SoupURI) uri = NULL;
|
||||||
|
|
||||||
/* work out what remote-specific URI fields this should use */
|
/* work out what remote-specific URI fields this should use */
|
||||||
@ -1365,11 +1366,11 @@ fu_util_update_device_with_release (FuUtilPrivate *priv,
|
|||||||
fn, priv->flags, NULL, error);
|
fn, priv->flags, NULL, error);
|
||||||
}
|
}
|
||||||
|
|
||||||
uri = fwupd_remote_build_uri (remote, uri_tmp, error);
|
uri_str = fwupd_remote_build_firmware_uri (remote, uri_tmp, error);
|
||||||
if (uri == NULL)
|
if (uri_str == NULL)
|
||||||
return FALSE;
|
return FALSE;
|
||||||
} else {
|
} else {
|
||||||
uri = soup_uri_new (uri_tmp);
|
uri_str = g_strdup (uri_tmp);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* download file */
|
/* download file */
|
||||||
@ -1381,6 +1382,7 @@ fu_util_update_device_with_release (FuUtilPrivate *priv,
|
|||||||
if (!fu_common_mkdir_parent (fn, error))
|
if (!fu_common_mkdir_parent (fn, error))
|
||||||
return FALSE;
|
return FALSE;
|
||||||
checksums = fwupd_release_get_checksums (rel);
|
checksums = fwupd_release_get_checksums (rel);
|
||||||
|
uri = soup_uri_new (uri_tmp);
|
||||||
if (!fu_util_download_file (priv, uri, fn,
|
if (!fu_util_download_file (priv, uri, fn,
|
||||||
fwupd_checksum_get_best (checksums),
|
fwupd_checksum_get_best (checksums),
|
||||||
error))
|
error))
|
||||||
|
Loading…
Reference in New Issue
Block a user