diff --git a/libfwupd/fwupd-client.c b/libfwupd/fwupd-client.c index 3907f22a3..02b35c029 100644 --- a/libfwupd/fwupd-client.c +++ b/libfwupd/fwupd-client.c @@ -321,7 +321,16 @@ fwupd_client_set_host_security_id(FwupdClient *self, const gchar *host_security_ fwupd_client_object_notify(self, "host-security-id"); } -static void +/** + * fwupd_client_set_daemon_version: + * @self: a #FwupdClient + * @daemon_version: A semantic version, e.g. "1.2.3" + * + * Sets the daemon version number. + * + * Since: 1.8.11 + **/ +void fwupd_client_set_daemon_version(FwupdClient *self, const gchar *daemon_version) { FwupdClientPrivate *priv = GET_PRIVATE(self); @@ -5035,6 +5044,7 @@ fwupd_client_set_user_agent_for_package(FwupdClient *self, g_return_if_fail(FWUPD_IS_CLIENT(self)); g_return_if_fail(package_name != NULL); g_return_if_fail(package_version != NULL); + g_return_if_fail(priv->daemon_version != NULL); /* application name and version */ g_string_append_printf(str, "%s/%s", package_name, package_version); diff --git a/libfwupd/fwupd-client.h b/libfwupd/fwupd-client.h index f4952c458..15771f558 100644 --- a/libfwupd/fwupd-client.h +++ b/libfwupd/fwupd-client.h @@ -435,6 +435,8 @@ guint fwupd_client_get_percentage(FwupdClient *self); const gchar * fwupd_client_get_daemon_version(FwupdClient *self); +void +fwupd_client_set_daemon_version(FwupdClient *self, const gchar *daemon_version); const gchar * fwupd_client_get_host_bkc(FwupdClient *self); const gchar * diff --git a/libfwupd/fwupd.map b/libfwupd/fwupd.map index 3405fb93f..7d856954f 100644 --- a/libfwupd/fwupd.map +++ b/libfwupd/fwupd.map @@ -916,6 +916,7 @@ LIBFWUPD_1.8.11 { fwupd_client_quit; fwupd_client_quit_async; fwupd_client_quit_finish; + fwupd_client_set_daemon_version; fwupd_client_uninhibit; fwupd_client_uninhibit_async; fwupd_client_uninhibit_finish; diff --git a/src/fu-tool.c b/src/fu-tool.c index 9eb4c7e7c..31532edfb 100644 --- a/src/fu-tool.c +++ b/src/fu-tool.c @@ -22,6 +22,7 @@ #include #include "fwupd-bios-setting-private.h" +#include "fwupd-client-private.h" #include "fwupd-common-private.h" #include "fwupd-device-private.h" #include "fwupd-enums-private.h" @@ -3657,6 +3658,7 @@ main(int argc, char *argv[]) /* used for monitoring and downloading */ priv->client = fwupd_client_new(); fwupd_client_set_main_context(priv->client, priv->main_ctx); + fwupd_client_set_daemon_version(priv->client, PACKAGE_VERSION); fwupd_client_set_user_agent_for_package(priv->client, "fwupdtool", PACKAGE_VERSION); g_signal_connect(FWUPD_CLIENT(priv->client), "notify::percentage",