[X2Go-Commits] [libx2goclient] 08/18: src/x2goclient-network.c: implement session-path property.
git-admin at x2go.org
git-admin at x2go.org
Mon Aug 19 15:47:03 CEST 2019
This is an automated email from the git hooks/post-receive script.
x2go pushed a commit to branch master
in repository libx2goclient.
commit 5cbd63232a34388dd22fb66072d0cda2aba3cb8d
Author: Mihai Moldovan <ionic at ionic.de>
Date: Mon Aug 19 14:13:13 2019 +0200
src/x2goclient-network.c: implement session-path property.
---
src/x2goclient-network.c | 23 +++++++++++++++++++++++
1 file changed, 23 insertions(+)
diff --git a/src/x2goclient-network.c b/src/x2goclient-network.c
index 6278f55..7532b76 100644
--- a/src/x2goclient-network.c
+++ b/src/x2goclient-network.c
@@ -53,6 +53,7 @@ typedef struct X2GoClientNetworkPrivate_ {
GString *socket_spec;
GSocketAddress *socket;
X2GoClientNetworkOptions *options;
+ gchar *session_path; /* Will eventually be replaced with a session object, probably. */
} X2GoClientNetworkPrivate;
G_DEFINE_ABSTRACT_TYPE_WITH_PRIVATE (X2GoClientNetwork, x2goclient_network, G_TYPE_OBJECT);
@@ -69,6 +70,7 @@ enum {
X2GO_NET_PROP_SOCKET_SPEC = 1,
X2GO_NET_PROP_SOCKET,
X2GO_NET_PROP_OPTIONS,
+ X2GO_NET_PROP_SESSION_PATH,
X2GO_NET_N_PROPERTIES
};
@@ -103,6 +105,17 @@ static void x2goclient_network_class_init (X2GoClientNetworkClass *klass) {
X2GOCLIENT_TYPE_NETWORK_OPTIONS,
G_PARAM_READWRITE);
+ GString *default_session_path = g_string_new (g_get_home_dir ());
+ g_string_append (default_session_path, "/.libx2goclient/");
+ net_obj_properties[X2GO_NET_PROP_SESSION_PATH] = g_param_spec_string ("session-path", _("Base path to session data"),
+ _("The file system path that will be used as the "
+ "session data base path. SSH-related files will "
+ "land there."),
+ default_session_path->str,
+ G_PARAM_CONSTRUCT_ONLY | G_PARAM_READWRITE);
+ g_string_free (default_session_path, TRUE);
+ default_session_path = NULL;
+
g_object_class_install_properties (object_class, X2GO_NET_N_PROPERTIES, net_obj_properties);
}
@@ -124,6 +137,8 @@ static void x2goclient_network_finalize (GObject *object) {
g_string_free (priv->socket_spec, TRUE);
priv->socket_spec = NULL;
+ g_free (priv->session_path);
+ priv->session_path = NULL;
(G_OBJECT_CLASS (x2goclient_network_parent_class))->finalize (object);
}
@@ -158,6 +173,11 @@ static void x2goclient_network_set_property (GObject *object, guint prop_id, con
priv->socket_spec = g_value_dup_boxed (value);
priv->socket = x2goclient_network_parse_sockspec (self, priv->socket_spec);
break;
+ case (X2GO_NET_PROP_SESSION_PATH):
+ g_free (priv->session_path);
+ priv->session_path = NULL;
+ priv->session_path = g_value_dup_string (value);
+ break;
case (X2GO_NET_PROP_OPTIONS):
g_clear_object (&(priv->options));
priv->options = g_value_dup_object (value);
@@ -179,6 +199,9 @@ static void x2goclient_network_get_property (GObject *object, guint prop_id, GVa
case (X2GO_NET_PROP_OPTIONS):
g_value_set_object (value, priv->options);
break;
+ case (X2GO_NET_PROP_SESSION_PATH):
+ g_value_set_string (value, priv->session_path);
+ break;
default:
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, param_spec);
break;
--
Alioth's /home/x2go-admin/maintenancescripts/git/hooks/post-receive-email on /srv/git/code.x2go.org/libx2goclient.git
More information about the x2go-commits
mailing list