|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
--- gnome-user-share-0.11/user_share.c.export-session-id 2007-03-06 05:30:27.000000000 -0500
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
+++ gnome-user-share-0.11/user_share.c 2007-07-12 09:22:35.000000000 -0400
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
@@ -27,6 +27,10 @@
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
#include <glib/gi18n.h>
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
#include <X11/Xlib.h>
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
+#ifdef HAVE_DBUS_1_1
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
+#include <dbus/dbus.h>
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
+#endif
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
+
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
#ifdef HAVE_AVAHI
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
#include <avahi-client/client.h>
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
#include <avahi-client/publish.h>
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
@@ -45,6 +49,7 @@
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
#include <gconf/gconf-client.h>
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
+#include <stdarg.h>
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
#include <string.h>
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
#include <stdio.h>
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
#include <stdlib.h>
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
@@ -63,6 +68,10 @@
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
#define FILE_SHARING_ENABLED "/desktop/gnome/file_sharing/enabled"
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
#define FILE_SHARING_REQUIRE_PASSWORD "/desktop/gnome/file_sharing/require_password"
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
+#ifdef HAVE_DBUS_1_1
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
+static char *dbus_session_id;
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
+#endif
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
+
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
static GMainLoop *loop = NULL;
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
static pid_t httpd_pid = 0;
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
static guint disabled_timeout_tag = 0;
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
@@ -220,6 +229,42 @@ get_share_name (void)
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
return name;
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
}
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
+#ifdef HAVE_DBUS_1_1
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
+static void
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
+init_dbus() {
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
+ /* The only use we make of D-BUS is to fetch the session BUS ID so we can export
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
+ * it via mDNS, so we connect and then immediately disconnect. If we were using
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
+ * the D-BUS session BUS for something persistent, the following code should use
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
+ * dbus_bus_get() and skip the shutdown. (Avahi uses the D-BUS _system_ bus
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
+ * internally.)
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
+ */
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
+
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
+ DBusError derror;
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
+ DBusConnection *connection;
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
+
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
+ dbus_error_init(&derror);
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
+
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
+ connection = dbus_bus_get_private(DBUS_BUS_SESSION, &derror);
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
+ if (connection == NULL) {
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
+ g_printerr("Failed to connect to session bus: %s", derror.message);
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
+ dbus_error_free(&derror);
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
+ return;
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
+ }
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
+
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
+ dbus_session_id = dbus_bus_get_id(connection, &derror);
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
+ if (dbus_session_id == NULL) {
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
+ /* This can happen if the D-BUS library has been upgraded to 1.1, but the
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
+ * user's session hasn't yet been restarted
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
+ */
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
+ g_printerr("Failed to get session BUS ID: %s", derror.message);
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
+ dbus_error_free(&derror);
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
+ }
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
+
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
+ dbus_connection_set_exit_on_disconnect(connection, FALSE);
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
+ dbus_connection_close(connection);
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
+ dbus_connection_unref(connection);
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
+}
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
+#endif
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
#ifdef HAVE_AVAHI
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
@@ -230,19 +275,64 @@ static int avahi_port = 0;
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
static AvahiEntryGroup *entry_group = NULL;
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
static char *avahi_name = NULL;
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
+static AvahiStringList*
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
+new_text_record_list (const char *first_key,
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
+ const char *first_value,
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
+ ...)
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
+{
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
+ va_list args;
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
+ const char *k;
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
+ const char *v;
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
+ AvahiStringList *list;
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
+
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
+ if (first_key == NULL)
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
+ return NULL;
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
+
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
+ list = NULL;
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
+
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
+ list = avahi_string_list_add_pair (list, first_key, first_value);
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
+
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
+ va_start (args, first_value);
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
+ k = va_arg (args, const char*);
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
+ if (k)
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
+ v = va_arg (args, const char*);
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
+ while (k != NULL) {
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
+ list = avahi_string_list_add_pair (list, k, v);
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
+
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
+ k = va_arg (args, const char*);
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
+ if (k)
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
+ v = va_arg (args, const char*);
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
+ }
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
+
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
+ va_end(args);
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
+
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
+ return list;
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
+}
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
static gboolean
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
create_service (void) {
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
int ret;
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
+ AvahiStringList *txt_records;
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
if (avahi_name == NULL) {
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
avahi_name = g_strdup (get_share_name ());
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
}
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
- ret = avahi_entry_group_add_service (entry_group, AVAHI_IF_UNSPEC, AVAHI_PROTO_UNSPEC,
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
- AVAHI_PUBLISH_USE_MULTICAST,
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
- avahi_name, "_webdav._tcp", NULL, NULL,
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
- avahi_port, "u=guest", NULL);
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
+ txt_records = new_text_record_list ("u", "guest",
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
+#ifdef HAVE_DBUS_1_1
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
+ /* This must be last */
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
+ dbus_session_id != NULL ? "org.freedesktop.od.session" : NULL, dbus_session_id,
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
+#endif
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
+ NULL);
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
+
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
+ ret = avahi_entry_group_add_service_strlst (entry_group, AVAHI_IF_UNSPEC, AVAHI_PROTO_UNSPEC,
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
+ AVAHI_PUBLISH_USE_MULTICAST,
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
+ avahi_name, "_webdav._tcp", NULL, NULL,
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
+ avahi_port,
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
+ txt_records);
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
+
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
+ avahi_string_list_free(txt_records);
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
+
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
if (ret < 0) {
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
return FALSE;
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
}
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
@@ -735,6 +825,10 @@ main (int argc, char **argv)
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
G_IO_IN,
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
x_input, xdisplay);
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
g_io_channel_unref (channel);
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
+
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
+#ifdef HAVE_DBUS_1_1
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
+ init_dbus();
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
+#endif
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
#ifdef HAVE_AVAHI
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
if (!init_avahi ()) {
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
--- gnome-user-share-0.11/configure.in.export-session-id 2007-03-06 04:56:32.000000000 -0500
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
+++ gnome-user-share-0.11/configure.in 2007-07-12 09:22:35.000000000 -0400
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
@@ -59,11 +59,17 @@ if test "x$msg_avahi" = "xno" -a "x$enab
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
AC_SUBST(HOWL_LIBS)
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
fi
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
+PKG_CHECK_EXISTS(dbus-1 >= 1.1.1, have_dbus_1_1=true, have_dbus_1_1=false)
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
+if $have_dbus_1_1 ; then
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
+ DBUS_MODULES=dbus-1
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
+ AC_DEFINE(HAVE_DBUS_1_1, 1, [Set to true if we have D-BUS 1.1])
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
+fi
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
+
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
if test "x$msg_avahi" = "xno" -a "x$msg_howl" = "xno"; then
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
AC_MSG_ERROR([Neither avahi nor howl detected. Gnome-user-share needs a mDNS implementation.])
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
fi
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
-PKG_CHECK_MODULES(USER_SHARE, glib-2.0 >= 2.2.0 gconf-2.0)
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
+PKG_CHECK_MODULES(USER_SHARE, glib-2.0 >= 2.2.0 gconf-2.0 $DBUS_MODULES)
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
AC_SUBST(USER_SHARE_CFLAGS)
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
AC_SUBST(USER_SHARE_LIBS)
|
|
![](https://seccdn.libravatar.org/avatar/df8d3cb0cdb8c2542f60cdebbd721dfda6e8a48e0276926ba4922134df82034b?s=16&d=retro) |
9b22bab |
|