[gnome-software/wip/kalev/soup-session: 2/2] Use same user agent with all soup requests



commit 56167112d5c030f344f60ee9430778b78fd2ba66
Author: Kalev Lember <klember redhat com>
Date:   Fri Nov 27 15:54:25 2015 +0100

    Use same user agent with all soup requests
    
    Previously, we would use "gnome-software/x.y.z" in some requests and
    "gnome-software" in others. This commit factors out gs_user_agent() and
    switches all soup_session_new() calls to use it, to ensure that the same
    user agent is used everywhere.

 src/gs-shell-details.c                        |    3 +--
 src/gs-utils.c                                |    6 ++++++
 src/gs-utils.h                                |    1 +
 src/plugins/gs-plugin-fedora-tagger-ratings.c |    3 +--
 src/plugins/gs-plugin-fedora-tagger-usage.c   |    3 +--
 src/plugins/gs-plugin-fwupd.c                 |    7 +------
 src/plugins/gs-plugin-icons.c                 |    3 +--
 7 files changed, 12 insertions(+), 14 deletions(-)
---
diff --git a/src/gs-shell-details.c b/src/gs-shell-details.c
index 590ad41..a360701 100644
--- a/src/gs-shell-details.c
+++ b/src/gs-shell-details.c
@@ -1446,8 +1446,7 @@ gs_shell_details_init (GsShellDetails *self)
        gtk_widget_init_template (GTK_WIDGET (self));
 
        /* setup networking */
-       self->session = soup_session_new_with_options (SOUP_SESSION_USER_AGENT,
-                                                      "gnome-software",
+       self->session = soup_session_new_with_options (SOUP_SESSION_USER_AGENT, gs_user_agent (),
                                                       NULL);
 
        gtk_list_box_set_header_func (GTK_LIST_BOX (self->list_box_addons),
diff --git a/src/gs-utils.c b/src/gs-utils.c
index 0ea2cbc..f83efee 100644
--- a/src/gs-utils.c
+++ b/src/gs-utils.c
@@ -487,4 +487,10 @@ gs_utils_get_file_age (const gchar *fn)
        return now - mtime;
 }
 
+const gchar *
+gs_user_agent (void)
+{
+       return PACKAGE_NAME "/" PACKAGE_VERSION;
+}
+
 /* vim: set noexpandtab: */
diff --git a/src/gs-utils.h b/src/gs-utils.h
index 1bbc09c..48f9f05 100644
--- a/src/gs-utils.h
+++ b/src/gs-utils.h
@@ -59,6 +59,7 @@ void  gs_image_set_from_pixbuf_with_scale     (GtkImage               *image,
                                                 gint                    scale);
 void   gs_image_set_from_pixbuf                (GtkImage               *image,
                                                 const GdkPixbuf        *pixbuf);
+const gchar     *gs_user_agent                 (void);
 
 G_END_DECLS
 
diff --git a/src/plugins/gs-plugin-fedora-tagger-ratings.c b/src/plugins/gs-plugin-fedora-tagger-ratings.c
index 4051746..0ac0350 100644
--- a/src/plugins/gs-plugin-fedora-tagger-ratings.c
+++ b/src/plugins/gs-plugin-fedora-tagger-ratings.c
@@ -61,8 +61,7 @@ gs_plugin_initialize (GsPlugin *plugin)
                                                  "gnome-software",
                                                  "fedora-tagger.db",
                                                  NULL);
-       plugin->priv->session = soup_session_new_with_options (SOUP_SESSION_USER_AGENT,
-                                                              "gnome-software",
+       plugin->priv->session = soup_session_new_with_options (SOUP_SESSION_USER_AGENT, gs_user_agent (),
                                                               NULL);
 
        /* check that we are running on Fedora */
diff --git a/src/plugins/gs-plugin-fedora-tagger-usage.c b/src/plugins/gs-plugin-fedora-tagger-usage.c
index 53697ca..9be1a25 100644
--- a/src/plugins/gs-plugin-fedora-tagger-usage.c
+++ b/src/plugins/gs-plugin-fedora-tagger-usage.c
@@ -53,8 +53,7 @@ gs_plugin_initialize (GsPlugin *plugin)
        g_autoptr(GSettings) settings = NULL;
 
        plugin->priv = GS_PLUGIN_GET_PRIVATE (GsPluginPrivate);
-       plugin->priv->session = soup_session_new_with_options (SOUP_SESSION_USER_AGENT,
-                                                              "gnome-software",
+       plugin->priv->session = soup_session_new_with_options (SOUP_SESSION_USER_AGENT, gs_user_agent (),
                                                               NULL);
 
        /* this is opt-in, and turned off by default */
diff --git a/src/plugins/gs-plugin-fwupd.c b/src/plugins/gs-plugin-fwupd.c
index 4626628..0d9fad8 100644
--- a/src/plugins/gs-plugin-fwupd.c
+++ b/src/plugins/gs-plugin-fwupd.c
@@ -59,15 +59,10 @@ gs_plugin_get_name (void)
 void
 gs_plugin_initialize (GsPlugin *plugin)
 {
-       g_autofree gchar *user_agent = NULL;
-
        plugin->priv = GS_PLUGIN_GET_PRIVATE (GsPluginPrivate);
        plugin->priv->to_download = g_ptr_array_new_with_free_func (g_free);
        plugin->priv->to_ignore = g_ptr_array_new_with_free_func (g_free);
-
-       user_agent = g_strdup_printf ("%s/%s", PACKAGE_NAME, PACKAGE_VERSION);
-       plugin->priv->session = soup_session_new_with_options (SOUP_SESSION_USER_AGENT,
-                                                              user_agent,
+       plugin->priv->session = soup_session_new_with_options (SOUP_SESSION_USER_AGENT, gs_user_agent (),
                                                               NULL);
        /* this disables the double-compression of the firmware.xml.gz file */
        soup_session_remove_feature_by_type (plugin->priv->session,
diff --git a/src/plugins/gs-plugin-icons.c b/src/plugins/gs-plugin-icons.c
index aee873f..61fd0ef 100644
--- a/src/plugins/gs-plugin-icons.c
+++ b/src/plugins/gs-plugin-icons.c
@@ -50,8 +50,7 @@ void
 gs_plugin_initialize (GsPlugin *plugin)
 {
        plugin->priv = GS_PLUGIN_GET_PRIVATE (GsPluginPrivate);
-       plugin->priv->session = soup_session_new_with_options (SOUP_SESSION_USER_AGENT,
-                                                              "gnome-software",
+       plugin->priv->session = soup_session_new_with_options (SOUP_SESSION_USER_AGENT, gs_user_agent (),
                                                               NULL);
 }
 


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]