* dbus/dbus-auth-script.c (_dbus_auth_script_run): added UNIX_ONLY and WIN_ONLY comma...
authorRalf Habacker <ralf.habacker@freenet.de>
Sat, 23 Jun 2007 07:45:17 +0000 (07:45 +0000)
committerRalf Habacker <ralf.habacker@freenet.de>
Sat, 23 Jun 2007 07:45:17 +0000 (07:45 +0000)
* test/data/auth/external-root.auth-script: limit execution to unix

ChangeLog
dbus/dbus-auth-script.c
test/data/auth/external-root.auth-script

index 58cb591..f000a99 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2007-06-23  Ralf Habacker  <ralf.habacker@freenet.de>
+
+       * dbus/dbus-auth-script.c (_dbus_auth_script_run): added UNIX_ONLY and 
+       WIN_ONLY commands for auth scripts
+       * test/data/auth/external-root.auth-script: limit execution to unix
+
 2007-06-21  Havoc Pennington  <hp@redhat.com>
 
        * dbus/dbus-tranport.c (auth_via_default_rules): made the verbose spam
index b23fbfc..79006b9 100644 (file)
@@ -324,6 +324,38 @@ _dbus_auth_script_run (const DBusString *filename)
           /* Ignore this comment */
           goto next_iteration;
         }
+#ifdef DBUS_WIN
+      else if (_dbus_string_starts_with_c_str (&line,
+                                               "WIN_ONLY"))
+        {
+          /* Ignore this line */
+          goto next_iteration;
+        }
+      else if (_dbus_string_starts_with_c_str (&line,
+                                               "UNIX_ONLY"))
+        {
+          /* skip this file */
+          _dbus_warn ("skipping unix only auth script\n");
+          retval = TRUE;
+          goto out;
+        }
+#endif
+#ifdef DBUS_UNIX
+      else if (_dbus_string_starts_with_c_str (&line,
+                                               "UNIX_ONLY"))
+        {
+          /* Ignore this line */
+          goto next_iteration;
+        }
+      else if (_dbus_string_starts_with_c_str (&line,
+                                               "WIN_ONLY"))
+        {
+          /* skip this file */
+          _dbus_warn ("skipping windows only auth script\n");
+          retval = TRUE;
+          goto out;
+        }
+#endif
       else if (_dbus_string_starts_with_c_str (&line,
                                                "CLIENT"))
         {
index ca5b94a..b4c4b43 100644 (file)
@@ -1,5 +1,5 @@
 ## this tests we can auth EXTERNAL as ourselves, with root credentials
-
+UNIX_ONLY
 SERVER
 ROOT_CREDENTIALS
 ## 30 is ASCII '0' in hex