Index: glib2.0-2.37.93/gio/tests/credentials.c
===================================================================
--- glib2.0-2.37.93.orig/gio/tests/credentials.c	2013-09-21 15:36:39.466285325 +0400
+++ glib2.0-2.37.93/gio/tests/credentials.c	2013-09-21 21:16:06.603083378 +0400
@@ -57,6 +57,7 @@
       getpid ());
   g_assert_no_error (error);
 
+#if !G_CREDENTIALS_USE_SOLARIS_UCRED
   set = g_credentials_set_unix_user (other, not_me, &error);
   g_assert_no_error (error);
   g_assert (set);
@@ -64,6 +65,7 @@
   g_assert_cmpuint (g_credentials_get_unix_user (other, &error), ==, not_me);
   g_assert (!g_credentials_is_same_user (creds, other, &error));
   g_assert_no_error (error);
+#endif
 
   stringified = g_credentials_to_string (creds);
   g_test_message ("%s", stringified);
@@ -97,6 +99,14 @@
           g_assert_cmpuint (native->uid, ==, geteuid ());
           g_assert_cmpuint (native->pid, ==, getpid ());
         }
+#elif G_CREDENTIALS_USE_SOLARIS_UCRED
+        {
+          ucred_t *native = g_credentials_get_native (creds,
+              G_CREDENTIALS_TYPE_SOLARIS_UCRED);
+
+          g_assert_cmpuint (ucred_geteuid(native), ==, geteuid ());
+          g_assert_cmpuint (ucred_getpid(native), ==, getpid ());
+        }
 #else
 #error "G_CREDENTIALS_SUPPORTED is set but there is no test for this platform"
 #endif
