X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=gio%2Fgdbusauthmechanismsha1.c;h=bca42a8453b73f8292ec10817556a95dfd0b1f0d;hb=32f2e9a85beedeea36ac7623f68f6eb878465d44;hp=405698e00a0b44b9285e4db56de10cfc33436fa8;hpb=0cf467c2ca92ece9625dbc54ad3065ad5298f735;p=platform%2Fupstream%2Fglib.git diff --git a/gio/gdbusauthmechanismsha1.c b/gio/gdbusauthmechanismsha1.c index 405698e..bca42a8 100644 --- a/gio/gdbusauthmechanismsha1.c +++ b/gio/gdbusauthmechanismsha1.c @@ -23,22 +23,21 @@ #include "config.h" #include +#include +#include +#include +#ifdef HAVE_UNISTD_H +#include +#endif + +#include #include "gdbusauthmechanismsha1.h" #include "gcredentials.h" #include "gdbuserror.h" #include "gioenumtypes.h" #include "gioerror.h" - -#ifdef G_OS_UNIX -#include -#include -#include -#endif - -#include - -#include +#include "gdbusprivate.h" #include "glibintl.h" #include "gioalias.h" @@ -282,7 +281,7 @@ ensure_keyring_directory (GError **error) goto out; } #else -#error Please implement permission checking on non-UNIX platforms +#warning Please implement permission checking on this non-UNIX platform #endif } goto out; @@ -585,22 +584,22 @@ keyring_release_lock (const gchar *path, ret = FALSE; lock = g_strdup_printf ("%s.lock", path); - if (g_unlink (lock) != 0) + if (close (lock_fd) != 0) { g_set_error (error, G_IO_ERROR, g_io_error_from_errno (errno), - _("Error unlinking lock-file `%s': %s"), + _("Error closing (unlinked) lock-file `%s': %s"), lock, strerror (errno)); goto out; } - if (close (lock_fd) != 0) + if (g_unlink (lock) != 0) { g_set_error (error, G_IO_ERROR, g_io_error_from_errno (errno), - _("Error closing (unlinked) lock-file `%s': %s"), + _("Error unlinking lock-file `%s': %s"), lock, strerror (errno)); goto out; @@ -955,11 +954,11 @@ mechanism_server_initiate (GDBusAuthMechanism *mechanism, } } #elif defined(G_OS_WIN32) - GCredentials *credentials; - credentials = g_credentials_new_for_process (); - if (g_strcmp0 (g_credentials_get_windows_user (credentials), initial_response) == 0) + gchar *sid; + sid = _g_dbus_win32_get_user_sid (); + if (g_strcmp0 (initial_response, sid) == 0) m->priv->state = G_DBUS_AUTH_MECHANISM_STATE_HAVE_DATA_TO_SEND; - g_object_unref (credentials); + g_free (sid); #else #error Please implement for your OS #endif @@ -1111,13 +1110,9 @@ mechanism_client_initiate (GDBusAuthMechanism *mechanism, #ifdef G_OS_UNIX initial_response = g_strdup_printf ("%" G_GINT64_FORMAT, (gint64) getuid ()); #elif defined (G_OS_WIN32) - { - GCredentials *credentials; - credentials = g_credentials_new_for_process (); - initial_response = g_strdup (g_credentials_get_windows_user (credentials)); - g_object_unref (credentials); - } +initial_response = _g_dbus_win32_get_user_sid (); #else +#error Please implement for your OS #endif g_assert (initial_response != NULL);