Package: dbus-1
Version: 0.23.2-3
Severity: important
Tags: patch

Use of the <policy group="..." tag in dbus configuration files causes
a segfault. I've attached the patch from the Ubuntu dbus-1 packages which 
appears
to fix the fault

-- System Information:
Debian Release: 3.0
  APT prefers testing
  APT policy: (103, 'testing'), (102, 'unstable'), (101, 'experimental')
Architecture: i386 (i686)
Kernel: Linux 2.6.10-1-686-smp
Locale: LANG=C, LC_CTYPE=C (charmap=ANSI_X3.4-1968)

Versions of packages dbus-1 depends on:
ii  adduser                     3.62         Add and remove users and groups
ii  debianutils                 2.8.4        Miscellaneous utilities specific t
ii  libc6                       2.3.2.ds1-20 GNU C Library: Shared libraries an
ii  libexpat1                   1.95.8-1     XML parsing C library - runtime li

-- no debconf information
diff -Nur dbus-0.23/dbus/dbus-userdb.c dbus-0.23.new/dbus/dbus-userdb.c
--- dbus-0.23/dbus/dbus-userdb.c        2004-08-29 04:14:52.000000000 +0200
+++ dbus-0.23.new/dbus/dbus-userdb.c    2005-02-14 13:45:03.779521400 +0100
@@ -176,11 +176,24 @@
           return NULL;
         }
 
-      if (!_dbus_group_info_fill_gid (info, gid, error))
+
+      if (gid != DBUS_GID_UNSET)
         {
-          _DBUS_ASSERT_ERROR_IS_SET (error);
-          free_group_info (info);
-          return NULL;
+          if (!_dbus_group_info_fill_gid (info, gid, error))
+            {
+              _DBUS_ASSERT_ERROR_IS_SET (error);
+              free_group_info (info);
+              return NULL;
+            }
+        }
+      else
+        {
+          if (!_dbus_group_info_fill (info, groupname, error))
+           {
+             _DBUS_ASSERT_ERROR_IS_SET (error);
+             free_group_info (info);
+             return NULL;
+           }
         }
 
       if (!_dbus_hash_table_insert_ulong (db->groups, info->gid, info))

Reply via email to