summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHans de Goede <hdegoede@redhat.com>2012-03-19 13:36:19 +0100
committerHans de Goede <hdegoede@redhat.com>2012-03-19 15:07:24 +0100
commit5bd4c8c65fed3265202b63cddcc89d17380cc1d3 (patch)
tree689df332def452e62d3990d05b5eacab10be7c67
parente316f29bd6645ab30ca90d4e7a8331de6e4f9792 (diff)
Rename console_kit* to session_info*
This is a preparation patch for adding libsystemd-login support. Signed-off-by: Hans de Goede <hdegoede@redhat.com>
-rw-r--r--Makefile.am2
-rw-r--r--src/console-kit.c34
-rw-r--r--src/session-info.h (renamed from src/console-kit.h)22
-rw-r--r--src/vdagentd.c44
4 files changed, 53 insertions, 49 deletions
diff --git a/Makefile.am b/Makefile.am
index 304ca7b..c6aa647 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -18,7 +18,7 @@ if HAVE_CONSOLE_KIT
src_spice_vdagentd_SOURCES += src/console-kit.c
endif
-noinst_HEADERS = src/console-kit.h \
+noinst_HEADERS = src/session-info.h \
src/vdagentd-proto-strings.h \
src/vdagent-x11.h \
src/udscs.h \
diff --git a/src/console-kit.c b/src/console-kit.c
index eb15939..5ce3ccb 100644
--- a/src/console-kit.c
+++ b/src/console-kit.c
@@ -1,6 +1,6 @@
-/* console-kit.h vdagentd ConsoleKit integration code
+/* console-kit.c vdagentd ConsoleKit integration code
- Copyright 2010 Red Hat, Inc.
+ Copyright 2010-2012 Red Hat, Inc.
Red Hat Authors:
Hans de Goede <hdegoede@redhat.com>
@@ -19,14 +19,14 @@
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
-#include "console-kit.h"
+#include "session-info.h"
#include <dbus/dbus.h>
#include <stdbool.h>
#include <unistd.h>
#include <stdlib.h>
#include <string.h>
-struct console_kit {
+struct session_info {
DBusConnection *connection;
int fd;
char *seat;
@@ -34,12 +34,12 @@ struct console_kit {
FILE *errfile;
};
-static char *console_kit_get_first_seat(struct console_kit *ck);
-static char *console_kit_check_active_session_change(struct console_kit *ck);
+static char *console_kit_get_first_seat(struct session_info *ck);
+static char *console_kit_check_active_session_change(struct session_info *ck);
-struct console_kit *console_kit_create(FILE *errfile)
+struct session_info *session_info_create(FILE *errfile)
{
- struct console_kit *ck;
+ struct session_info *ck;
DBusError error;
char match[1024];
@@ -64,12 +64,12 @@ struct console_kit *console_kit_create(FILE *errfile)
if (!dbus_connection_get_unix_fd(ck->connection, &ck->fd)) {
fprintf(ck->errfile, "Unable to get connection fd\n");
- console_kit_destroy(ck);
+ session_info_destroy(ck);
return NULL;
}
if (!console_kit_get_first_seat(ck)) {
- console_kit_destroy(ck);
+ session_info_destroy(ck);
return NULL;
}
@@ -81,14 +81,14 @@ struct console_kit *console_kit_create(FILE *errfile)
dbus_bus_add_match(ck->connection, match, &error);
if (dbus_error_is_set(&error)) {
fprintf(ck->errfile, "Match Error (%s)\n", error.message);
- console_kit_destroy(ck);
+ session_info_destroy(ck);
return NULL;
}
return ck;
}
-void console_kit_destroy(struct console_kit *ck)
+void session_info_destroy(struct session_info *ck)
{
if (!ck)
return;
@@ -99,12 +99,12 @@ void console_kit_destroy(struct console_kit *ck)
free(ck);
}
-int console_kit_get_fd(struct console_kit *ck)
+int session_info_get_fd(struct session_info *ck)
{
return ck->fd;
}
-static char *console_kit_get_first_seat(struct console_kit *ck)
+static char *console_kit_get_first_seat(struct session_info *ck)
{
DBusError error;
DBusMessage *message = NULL;
@@ -168,7 +168,7 @@ exit:
return ck->seat;
}
-const char *console_kit_get_active_session(struct console_kit *ck)
+const char *session_info_get_active_session(struct session_info *ck)
{
DBusError error;
DBusMessage *message = NULL;
@@ -235,7 +235,7 @@ exit:
return console_kit_check_active_session_change(ck);
}
-char *console_kit_session_for_pid(struct console_kit *ck, uint32_t pid)
+char *session_info_session_for_pid(struct session_info *ck, uint32_t pid)
{
DBusError error;
DBusMessage *message = NULL;
@@ -305,7 +305,7 @@ exit:
return ssid;
}
-static char *console_kit_check_active_session_change(struct console_kit *ck)
+static char *console_kit_check_active_session_change(struct session_info *ck)
{
DBusMessage *message = NULL;
DBusMessageIter iter;
diff --git a/src/console-kit.h b/src/session-info.h
index f041f86..73f9d86 100644
--- a/src/console-kit.h
+++ b/src/session-info.h
@@ -1,6 +1,6 @@
/* console-kit.h vdagentd ConsoleKit integration code - header
- Copyright 2010 Red Hat, Inc.
+ Copyright 2010-2012 Red Hat, Inc.
Red Hat Authors:
Hans de Goede <hdegoede@redhat.com>
@@ -19,21 +19,25 @@
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
-#ifndef __CONSOLE_KIT_H
-#define __CONSOLE_KIT_H
+#ifndef __SESSION_INFO_H
+#define __SESSION_INFO_H
#include <stdio.h>
#include <stdint.h>
-struct console_kit;
+#if defined HAVE_CONSOLE_KIT
+#define HAVE_SESSION_INFO
+#endif
+
+struct session_info;
-struct console_kit *console_kit_create(FILE *errfile);
-void console_kit_destroy(struct console_kit *ck);
+struct session_info *session_info_create(FILE *errfile);
+void session_info_destroy(struct session_info *ck);
-int console_kit_get_fd(struct console_kit *ck);
+int session_info_get_fd(struct session_info *ck);
-const char *console_kit_get_active_session(struct console_kit *ck);
+const char *session_info_get_active_session(struct session_info *ck);
/* Note result must be free()-ed by caller */
-char *console_kit_session_for_pid(struct console_kit *ck, uint32_t pid);
+char *session_info_session_for_pid(struct session_info *ck, uint32_t pid);
#endif
diff --git a/src/vdagentd.c b/src/vdagentd.c
index ea5a0d0..803f42d 100644
--- a/src/vdagentd.c
+++ b/src/vdagentd.c
@@ -1,6 +1,6 @@
/* vdagentd.c vdagentd (daemon) code
- Copyright 2010 Red Hat, Inc.
+ Copyright 2010-2012 Red Hat, Inc.
Red Hat Authors:
Hans de Goede <hdegoede@redhat.com>
@@ -40,7 +40,7 @@
#include "vdagentd-uinput.h"
#include "vdagentd-xorg-conf.h"
#include "vdagent-virtio-port.h"
-#include "console-kit.h"
+#include "session-info.h"
struct agent_data {
char *session;
@@ -58,14 +58,14 @@ static const char *uinput_device = "/dev/uinput";
static int debug = 0;
static struct udscs_server *server = NULL;
static struct vdagent_virtio_port *virtio_port = NULL;
-#ifdef HAVE_CONSOLE_KIT
-static struct console_kit *console_kit = NULL;
+#ifdef HAVE_SESSION_INFO
+static struct session_info *session_info = NULL;
#endif
static struct vdagentd_uinput *uinput = NULL;
static VDAgentMonitorsConfig *mon_config = NULL;
static uint32_t *capabilities = NULL;
static int capabilities_size = 0;
-#ifdef HAVE_CONSOLE_KIT
+#ifdef HAVE_SESSION_INFO
static const char *active_session = NULL;
#else
static unsigned int session_count = 0;
@@ -448,7 +448,7 @@ static void check_xorg_resolution(void)
}
}
-#ifdef HAVE_CONSOLE_KIT
+#ifdef HAVE_SESSION_INFO
static int connection_matches_active_session(struct udscs_connection **connp,
void *priv)
{
@@ -484,9 +484,9 @@ void update_active_session_connection(void)
struct udscs_connection *new_conn = NULL;
int n;
-#ifdef HAVE_CONSOLE_KIT
+#ifdef HAVE_SESSION_INFO
if (!active_session)
- active_session = console_kit_get_active_session(console_kit);
+ active_session = session_info_get_active_session(session_info);
n = udscs_server_for_all_clients(server, connection_matches_active_session,
(void*)&new_conn);
@@ -515,9 +515,9 @@ void agent_connect(struct udscs_connection *conn)
udscs_destroy_connection(&conn);
return;
}
-#ifdef HAVE_CONSOLE_KIT
+#ifdef HAVE_SESSION_INFO
pid = udscs_get_peer_cred(conn).pid;
- agent_data->session = console_kit_session_for_pid(console_kit, pid);
+ agent_data->session = session_info_session_for_pid(session_info, pid);
#else
session_count++;
if (session_count == 1) {
@@ -549,7 +549,7 @@ void agent_disconnect(struct udscs_connection *conn)
{
struct agent_data *agent_data = udscs_get_user_data(conn);
-#ifndef HAVE_CONSOLE_KIT
+#ifndef HAVE_SESSION_INFO
if (conn == active_session_conn)
active_session_conn = NULL;
#endif
@@ -559,7 +559,7 @@ void agent_disconnect(struct udscs_connection *conn)
update_active_session_connection();
free(agent_data);
-#ifndef HAVE_CONSOLE_KIT
+#ifndef HAVE_SESSION_INFO
session_count--;
#endif
}
@@ -680,8 +680,8 @@ void main_loop(void)
if (n >= nfds)
nfds = n + 1;
-#ifdef HAVE_CONSOLE_KIT
- ck_fd = console_kit_get_fd(console_kit);
+#ifdef HAVE_SESSION_INFO
+ ck_fd = session_info_get_fd(session_info);
FD_SET(ck_fd, &readfds);
if (ck_fd >= nfds)
nfds = ck_fd + 1;
@@ -715,9 +715,9 @@ void main_loop(void)
}
}
-#ifdef HAVE_CONSOLE_KIT
+#ifdef HAVE_SESSION_INFO
if (FD_ISSET(ck_fd, &readfds)) {
- active_session = console_kit_get_active_session(console_kit);
+ active_session = session_info_get_active_session(session_info);
update_active_session_connection();
}
#endif
@@ -814,10 +814,10 @@ int main(int argc, char *argv[])
}
#endif
-#ifdef HAVE_CONSOLE_KIT
- console_kit = console_kit_create(logfile);
- if (!console_kit) {
- fprintf(logfile, "Fatal could not connect to console kit\n");
+#ifdef HAVE_SESSION_INFO
+ session_info = session_info_create(logfile);
+ if (!session_info) {
+ fprintf(logfile, "Fatal could not get session information\n");
vdagentd_uinput_destroy(&uinput);
udscs_destroy_server(server);
if (logfile != stderr)
@@ -833,8 +833,8 @@ int main(int argc, char *argv[])
vdagentd_uinput_destroy(&uinput);
vdagent_virtio_port_flush(&virtio_port);
vdagent_virtio_port_destroy(&virtio_port);
-#ifdef HAVE_CONSOLE_KIT
- console_kit_destroy(console_kit);
+#ifdef HAVE_SESSION_INFO
+ session_info_destroy(session_info);
#endif
udscs_destroy_server(server);
if (unlink(VDAGENTD_SOCKET) != 0)