summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBastien Nocera <hadess@hadess.net>2022-07-06 10:29:51 +0200
committerBastien Nocera <hadess@hadess.net>2022-07-06 10:29:51 +0200
commitdad75b143a0381231237df3181c70f132b9129e0 (patch)
treebf0e05f90924a2bef0950722a79d66f2ccefc110
parent8b5c91fe668647f2d99c4ce5269babfd1b585808 (diff)
downloadgrilo-plugins-dad75b143a0381231237df3181c70f132b9129e0.tar.gz
dleyna: Port to GUri and remove libsoup dependency
Remove libsoup dependency and bump glib dependency to 2.66 so we can use GUri instead of SoupURI.
-rw-r--r--meson.build4
-rw-r--r--src/dleyna/grl-dleyna-utils.c21
-rw-r--r--src/dleyna/grl-dleyna-utils.h2
3 files changed, 12 insertions, 15 deletions
diff --git a/meson.build b/meson.build
index f539cd2..5d20f1a 100644
--- a/meson.build
+++ b/meson.build
@@ -26,7 +26,7 @@ libdir = get_option('libdir')
datadir = get_option('datadir')
pluginsdir =join_paths(libdir, 'grilo-@0@.@1@'.format(grl_major, grl_minor))
-glib2_required = '2.44'
+glib2_required = '2.66'
grilo_required = '0.3.8'
glib2_required_info = '>= @0@'.format(glib2_required)
grilo_required_info = '>= @0@'.format(grilo_required)
@@ -125,7 +125,7 @@ OPT_DEPS = 2
plugins = [ # NAME, REQ_DEPS, OPT_DEPS
['bookmarks', [gio_dep, libxml_dep, gom_dep], []],
['chromaprint', [gstreamer_dep], []],
- ['dleyna', [gio_dep, gio_unix_dep, libsoup24_dep], []],
+ ['dleyna', [gio_dep, gio_unix_dep], []],
['dmap', [libdmapsharing_dep, libxml_dep], []],
['filesystem', [grilo_pls_dep], []],
['flickr', [grilo_net_dep, libxml_dep, oauth_dep], [goa_dep]],
diff --git a/src/dleyna/grl-dleyna-utils.c b/src/dleyna/grl-dleyna-utils.c
index cbfbe21..ba5c0c8 100644
--- a/src/dleyna/grl-dleyna-utils.c
+++ b/src/dleyna/grl-dleyna-utils.c
@@ -27,7 +27,6 @@
#include <string.h>
#include <stdlib.h>
#include <gio/gio.h>
-#include <libsoup/soup.h>
#ifdef G_OS_UNIX
#include <sys/types.h>
@@ -337,15 +336,19 @@ grl_dleyna_util_uri_is_localhost (const gchar *uri,
char hostname_buffer[HOSTNAME_LENGTH+1];
const char *host;
GInetAddress *ip_address;
- SoupURI *s_uri;
+ g_autoptr(GUri) g_uri = NULL;
- s_uri = soup_uri_new (uri);
+ g_uri = g_uri_parse (uri,
+ G_URI_FLAGS_HAS_PASSWORD |
+ G_URI_FLAGS_ENCODED_PATH |
+ G_URI_FLAGS_ENCODED_QUERY |
+ G_URI_FLAGS_ENCODED_FRAGMENT |
+ G_URI_FLAGS_SCHEME_NORMALIZE, NULL);
- host = soup_uri_get_host (s_uri);
+ host = g_uri_get_host (g_uri);
if (host == NULL) {
*localhost = FALSE;
*localuser = FALSE;
- soup_uri_free (s_uri);
return;
}
@@ -358,18 +361,16 @@ grl_dleyna_util_uri_is_localhost (const gchar *uri,
if (addresses == NULL) {
*localhost = FALSE;
*localuser = FALSE;
- soup_uri_free (s_uri);
return;
}
*localhost = TRUE;
- sockaddr = G_SOCKET_ADDRESS (g_inet_socket_address_new (addresses->data, s_uri->port));
+ sockaddr = G_SOCKET_ADDRESS (g_inet_socket_address_new (addresses->data, g_uri_get_port (g_uri)));
*localuser = is_our_user (sockaddr);
g_object_unref (sockaddr);
g_list_free_full (addresses, g_object_unref);
- soup_uri_free (s_uri);
return;
}
@@ -377,7 +378,6 @@ grl_dleyna_util_uri_is_localhost (const gchar *uri,
if (ip_address == NULL) {
*localhost = FALSE;
*localuser = FALSE;
- soup_uri_free (s_uri);
return;
}
@@ -385,7 +385,7 @@ grl_dleyna_util_uri_is_localhost (const gchar *uri,
if (*localhost) {
GSocketAddress *sockaddr;
- sockaddr = G_SOCKET_ADDRESS (g_inet_socket_address_new (ip_address, s_uri->port));
+ sockaddr = G_SOCKET_ADDRESS (g_inet_socket_address_new (ip_address, g_uri_get_port (g_uri)));
*localuser = is_our_user (sockaddr);
g_object_unref (sockaddr);
@@ -394,7 +394,6 @@ grl_dleyna_util_uri_is_localhost (const gchar *uri,
}
g_object_unref (ip_address);
- soup_uri_free (s_uri);
}
#else
diff --git a/src/dleyna/grl-dleyna-utils.h b/src/dleyna/grl-dleyna-utils.h
index b342db8..31cf35d 100644
--- a/src/dleyna/grl-dleyna-utils.h
+++ b/src/dleyna/grl-dleyna-utils.h
@@ -21,8 +21,6 @@
#ifndef _GRL_DLEYNA_UTILS_H_
#define _GRL_DLEYNA_UTILS_H_
-#include <libsoup/soup.h>
-
G_BEGIN_DECLS
void grl_dleyna_util_uri_is_localhost (const gchar *uri,