# ChangeLog for sys-apps/hal
# Copyright 1999-2007 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/sys-apps/hal/ChangeLog,v 1.168 2007/04/16 19:10:43 cardoe Exp $
+# $Header: /var/cvsroot/gentoo-x86/sys-apps/hal/ChangeLog,v 1.169 2007/04/17 16:26:30 cardoe Exp $
+
+ 17 Apr 2007; Doug Goldstein <cardoe@gentoo.org>
+ -files/hal-0.5.1-old_storage_policy.patch, -files/hal-0.5.5.1-RBC.patch,
+ -files/hal-0.5.9-update_dtd.patch, files/0.5.9-hald.conf,
+ files/0.5.9-hald.rc, +files/0.5.9/11_hal_fix_segfault_probe_volume.patch,
+ +files/0.5.9/12_hal_fix-vol_label_probe_volume.patch, files/0.5.9/series,
+ -files/fix-scsi-fake-host-event.patch, hal-0.5.9.ebuild:
+ Clean up init script. Add HALD_VERBOSE to conf.d script. Add some proposed
+ patches to fix volume label segfault as experienced on sparc. Removed old
+ patches.
16 Apr 2007; Doug Goldstein <cardoe@gentoo.org> hal-0.5.9.ebuild:
keepdir /var/run/hald for the unix socket
MD5 facf81eeca7ebddff5d030acb36de31d files/0.5-hald.rc 681
RMD160 f94d4a6e4ffb3beb84eeeb8e25564fa566ecc493 files/0.5-hald.rc 681
SHA256 802f83998c50a3e030d1db2f5a8364e4bb10eebecd464683445d63cf56702161 files/0.5-hald.rc 681
-AUX 0.5.9-hald.conf 271 RMD160 8e8d879246b9c2c117287c6eb9b065d94301b774 SHA1 d25f8f7e4a0d7def2626d19b70627b754f0bae3f SHA256 68a6224f3e72325850f6ac93369dae766199da9c6cbae471a3868087e0b431be
-MD5 2720cff2a57dd5fa80fc60ab7ca37fc0 files/0.5.9-hald.conf 271
-RMD160 8e8d879246b9c2c117287c6eb9b065d94301b774 files/0.5.9-hald.conf 271
-SHA256 68a6224f3e72325850f6ac93369dae766199da9c6cbae471a3868087e0b431be files/0.5.9-hald.conf 271
-AUX 0.5.9-hald.rc 689 RMD160 b0ee69b9c0f77c3cd2768e685aeebe1fcd1f3aa7 SHA1 b5175808f1e7c33394f9df8466f5f7e176fed6e9 SHA256 16d88a37dc9bbfed732d22990f7ea13c58173552bbccdd1452c36ab947ff0d28
-MD5 76b31e84dfc74511d3fdc0b9c38e8321 files/0.5.9-hald.rc 689
-RMD160 b0ee69b9c0f77c3cd2768e685aeebe1fcd1f3aa7 files/0.5.9-hald.rc 689
-SHA256 16d88a37dc9bbfed732d22990f7ea13c58173552bbccdd1452c36ab947ff0d28 files/0.5.9-hald.rc 689
+AUX 0.5.9-hald.conf 364 RMD160 4c54ac942ecc130a585e90d07078372bfc3b5d58 SHA1 ff22e1b895a511c6fc5074672bb96e954a87eb9e SHA256 efc215155f79947827735972eb97a8a460de5084c74811da615292132888d707
+MD5 daa36e163190cfec256b83e348ba012f files/0.5.9-hald.conf 364
+RMD160 4c54ac942ecc130a585e90d07078372bfc3b5d58 files/0.5.9-hald.conf 364
+SHA256 efc215155f79947827735972eb97a8a460de5084c74811da615292132888d707 files/0.5.9-hald.conf 364
+AUX 0.5.9-hald.rc 762 RMD160 fe4a59c00cda2ca2233d2768520b848a3a0a1091 SHA1 47d7c7682246ed0beb0875f32881d33748fb98d4 SHA256 5807d0529d660e651a55c0451702cd6eebb81fec7a111c33a64b6d370d18e7f2
+MD5 ee489c8ee24ea47743ea517eb8b6a789 files/0.5.9-hald.rc 762
+RMD160 fe4a59c00cda2ca2233d2768520b848a3a0a1091 files/0.5.9-hald.rc 762
+SHA256 5807d0529d660e651a55c0451702cd6eebb81fec7a111c33a64b6d370d18e7f2 files/0.5.9-hald.rc 762
AUX 0.5.9/01_luks_mount_fix.patch 2605 RMD160 00d6b01a0c96123ce6ee66d1762a00988c363139 SHA1 d5b0ce4140b0db59942ef384df640a4749b0c24c SHA256 f1dfdd118055efbc97163273e0f3930f8badf2be3e4f1ca327654c221faa951e
MD5 526e8c9b50700bca6340f6a0d73f1aa4 files/0.5.9/01_luks_mount_fix.patch 2605
RMD160 00d6b01a0c96123ce6ee66d1762a00988c363139 files/0.5.9/01_luks_mount_fix.patch 2605
MD5 df8303f32737e072d02757f79030645d files/0.5.9/10_freebsd_storage_reprobe_fix.patch 2007
RMD160 16237bf2b64ad8745304af231be93cfb21f77039 files/0.5.9/10_freebsd_storage_reprobe_fix.patch 2007
SHA256 a7b95e31d0a30664dd1cd4539df44fb5d00ef661d43e6035bbd7d25bf0b08af0 files/0.5.9/10_freebsd_storage_reprobe_fix.patch 2007
+AUX 0.5.9/11_hal_fix_segfault_probe_volume.patch 2628 RMD160 200f2723e9f9f4220bd14bc5273a1d8c781ca4eb SHA1 66196df64d62603f2b136447481ba7240215eff6 SHA256 95026e90f0b18fc36d5e0a34ae23bf86beb4644ca3063b5709b8b5eb6d71e840
+MD5 b727ef98adc4087a8df145801a1ba3bb files/0.5.9/11_hal_fix_segfault_probe_volume.patch 2628
+RMD160 200f2723e9f9f4220bd14bc5273a1d8c781ca4eb files/0.5.9/11_hal_fix_segfault_probe_volume.patch 2628
+SHA256 95026e90f0b18fc36d5e0a34ae23bf86beb4644ca3063b5709b8b5eb6d71e840 files/0.5.9/11_hal_fix_segfault_probe_volume.patch 2628
+AUX 0.5.9/12_hal_fix-vol_label_probe_volume.patch 2720 RMD160 972107dbb7a325aeeee992454f33c860035eb755 SHA1 70ec132ada52bf39d87f11863e2a0e7d06abe24d SHA256 5e2c186ec2e24c53ec4b16921aed5ae0dfc39f7137f791341ba3dffa56d07f1a
+MD5 26a93aff650c702597a02003e897c53b files/0.5.9/12_hal_fix-vol_label_probe_volume.patch 2720
+RMD160 972107dbb7a325aeeee992454f33c860035eb755 files/0.5.9/12_hal_fix-vol_label_probe_volume.patch 2720
+SHA256 5e2c186ec2e24c53ec4b16921aed5ae0dfc39f7137f791341ba3dffa56d07f1a files/0.5.9/12_hal_fix-vol_label_probe_volume.patch 2720
AUX 0.5.9/95_gentoo_man_page.patch 18159 RMD160 cd4bf6c16e84464b11de755323ef2d0f5c1a54f9 SHA1 f9de30d705eada8e2f631e51b715b9923f732fb4 SHA256 59d81dcb273f3cdc9c7fc9f195331529642fef2c2150b3eeb3fd98ea555b1893
MD5 f6d115e0eb501aba476f4df965bfeb6c files/0.5.9/95_gentoo_man_page.patch 18159
RMD160 cd4bf6c16e84464b11de755323ef2d0f5c1a54f9 files/0.5.9/95_gentoo_man_page.patch 18159
MD5 38976c1da85ba17ba6a46f56cd1de3bf files/0.5.9/96_plugdev_allow_send.patch 1781
RMD160 08f0cbb8960d4753d15d02c8694fae09a6ef2a02 files/0.5.9/96_plugdev_allow_send.patch 1781
SHA256 090d666c8df223fc0ea30f473fa3d52412ef22aff85c1eebf609a3f00dbd652a files/0.5.9/96_plugdev_allow_send.patch 1781
-AUX 0.5.9/series 397 RMD160 87ae8b2a6bda0753e2540d9023fb7b8530bd1778 SHA1 a137d82ca164ff9c0ce2ce6819ee00bf38df0f23 SHA256 a170ed23a22f05b679f768624bda292eda4c2527c57ecae616b2959b2d2dc542
-MD5 cc273fec8ea1e803a05ce79bbf20228e files/0.5.9/series 397
-RMD160 87ae8b2a6bda0753e2540d9023fb7b8530bd1778 files/0.5.9/series 397
-SHA256 a170ed23a22f05b679f768624bda292eda4c2527c57ecae616b2959b2d2dc542 files/0.5.9/series 397
-AUX fix-scsi-fake-host-event.patch 3108 RMD160 2bda406fcb2dd92c348781a6c0958d40c79d78ea SHA1 af1d5c9a2cde091bd7abe04ed5e91a4bb815b675 SHA256 199749c188e5fb4858e4c1dac8800525377daf6a680dcd13e7096e71266ed05d
-MD5 3b6df9a24978d931781dc029c85288a9 files/fix-scsi-fake-host-event.patch 3108
-RMD160 2bda406fcb2dd92c348781a6c0958d40c79d78ea files/fix-scsi-fake-host-event.patch 3108
-SHA256 199749c188e5fb4858e4c1dac8800525377daf6a680dcd13e7096e71266ed05d files/fix-scsi-fake-host-event.patch 3108
-AUX hal-0.5.1-old_storage_policy.patch 856 RMD160 d73708510cbfebc897fe20070e3c6997559f8296 SHA1 9fb9facb27e381fb27c0658de3482c8aa0754c40 SHA256 6ea5cd467e1b7b34308c9ecc0eaf2442a3272b7c02ef75d7c0af16566e523cc2
-MD5 25cb64ec27a48a80126b6de5ff6c3340 files/hal-0.5.1-old_storage_policy.patch 856
-RMD160 d73708510cbfebc897fe20070e3c6997559f8296 files/hal-0.5.1-old_storage_policy.patch 856
-SHA256 6ea5cd467e1b7b34308c9ecc0eaf2442a3272b7c02ef75d7c0af16566e523cc2 files/hal-0.5.1-old_storage_policy.patch 856
-AUX hal-0.5.5.1-RBC.patch 660 RMD160 36368684295dcfa4809ba0fe7b6a2575d2091e1e SHA1 a845a7a324c9b9069b8a4c366d3f7e800200c2cf SHA256 6e0b71024bc857e72ce694282f098e3d5fb17b7a2dec579193878f0812360799
-MD5 54eaacd46e87bd8025da51f2f9aaf56b files/hal-0.5.5.1-RBC.patch 660
-RMD160 36368684295dcfa4809ba0fe7b6a2575d2091e1e files/hal-0.5.5.1-RBC.patch 660
-SHA256 6e0b71024bc857e72ce694282f098e3d5fb17b7a2dec579193878f0812360799 files/hal-0.5.5.1-RBC.patch 660
+AUX 0.5.9/series 476 RMD160 f206c5518ab58bab886324f73859ba45f84bfd68 SHA1 04e5272da9492e5589e0a5e567153910e97b47e2 SHA256 5dd1a70e6f89f67b477ec5e5e238fe5c7e2cc52603120965ed4a8953f23ef909
+MD5 ad260e55e13b76098bc7b27a67e583b0 files/0.5.9/series 476
+RMD160 f206c5518ab58bab886324f73859ba45f84bfd68 files/0.5.9/series 476
+SHA256 5dd1a70e6f89f67b477ec5e5e238fe5c7e2cc52603120965ed4a8953f23ef909 files/0.5.9/series 476
AUX hal-0.5.7-hald-scripts.patch 8636 RMD160 339765377e3573b382df987903f301860601668f SHA1 c2ffb779f423e07b38f12a852d942928394abc63 SHA256 d0b713f84c7bc782ba7b13f439630a995588097db2141f4a97c110036f64001a
MD5 521a06ba0845bd3246d6ed4b589f110f files/hal-0.5.7-hald-scripts.patch 8636
RMD160 339765377e3573b382df987903f301860601668f files/hal-0.5.7-hald-scripts.patch 8636
MD5 a6cfdd91f94b01684e1c3063dd07cbd8 files/hal-0.5.7.1-sr-driver.patch 654
RMD160 86a98b6ceb98f797badd3e1c653f181d498138b1 files/hal-0.5.7.1-sr-driver.patch 654
SHA256 52191c2230af31f0bf18f39a5f0e6d24728da5c7e0de627be55046561318ca55 files/hal-0.5.7.1-sr-driver.patch 654
-AUX hal-0.5.9-update_dtd.patch 749 RMD160 7d9dac09669bf8172744c731abbe9dbdf95617cd SHA1 20265432f7237b25fbe2a7b6f6c8d8c1552e459d SHA256 39e5501837d828be443802df4fe8bfb7e0d721c773a43ca2aa28cb5cb4ef9596
-MD5 9f8e703845dbaa240b11dd68264e0f7b files/hal-0.5.9-update_dtd.patch 749
-RMD160 7d9dac09669bf8172744c731abbe9dbdf95617cd files/hal-0.5.9-update_dtd.patch 749
-SHA256 39e5501837d828be443802df4fe8bfb7e0d721c773a43ca2aa28cb5cb4ef9596 files/hal-0.5.9-update_dtd.patch 749
AUX hal-unmount.dev 397 RMD160 78286dd9527bbb421082e73b0d08e06cd514d275 SHA1 31169a28448fb1eb1dfee5d1699de9a02449a6b7 SHA256 747a4c483f8a558f2c75666e9547e539475f112363f1dbfc6ea19ca393c8e89b
MD5 7ee3fd5b5ee117f14633350e5b335c2f files/hal-unmount.dev 397
RMD160 78286dd9527bbb421082e73b0d08e06cd514d275 files/hal-unmount.dev 397
MD5 709ca20b11819f2e13e381be47e19535 hal-0.5.7.1-r5.ebuild 6426
RMD160 ba28bce7126639c77de28ac2fc8d233475bb498e hal-0.5.7.1-r5.ebuild 6426
SHA256 6e020d3a29d82b993984f58ab8ef3659d837c11bce25f3ad25df6f4748e11207 hal-0.5.7.1-r5.ebuild 6426
-EBUILD hal-0.5.9.ebuild 7126 RMD160 fd02f4304d61cbd22e1b3a3cd08e6f578b031342 SHA1 45c16cf21bd30d3492ab17a083472ecf88d4a2b0 SHA256 fb49f0809af59c8a71e73f1283590b17b4e3fb42843a78ef38734a4288dfdbca
-MD5 3937f008668ccc781ecc57c3b1bbb329 hal-0.5.9.ebuild 7126
-RMD160 fd02f4304d61cbd22e1b3a3cd08e6f578b031342 hal-0.5.9.ebuild 7126
-SHA256 fb49f0809af59c8a71e73f1283590b17b4e3fb42843a78ef38734a4288dfdbca hal-0.5.9.ebuild 7126
-MISC ChangeLog 26886 RMD160 9cba32054e7202bcbd9f6d4c8901d8c0110801c4 SHA1 5dd30bc50c76796533c1a377fdc66753b4970cb9 SHA256 48d53b90ad251f752a489a994657535019457eae125c46c632ad92bb27eb7903
-MD5 38f9dcf2b3444652855f384c6417b847 ChangeLog 26886
-RMD160 9cba32054e7202bcbd9f6d4c8901d8c0110801c4 ChangeLog 26886
-SHA256 48d53b90ad251f752a489a994657535019457eae125c46c632ad92bb27eb7903 ChangeLog 26886
+EBUILD hal-0.5.9.ebuild 7169 RMD160 986a4497ad4b0c2472f49d7c08410b2f9c5bba51 SHA1 211c9ec27b37688202c6bd5f92cac978ea261a99 SHA256 fa1698d6b5b0557b77cb8c083d5c257eeaea23f787e88142db394d2d94adf0d5
+MD5 f9730846577c26d6240653b6f942963a hal-0.5.9.ebuild 7169
+RMD160 986a4497ad4b0c2472f49d7c08410b2f9c5bba51 hal-0.5.9.ebuild 7169
+SHA256 fa1698d6b5b0557b77cb8c083d5c257eeaea23f787e88142db394d2d94adf0d5 hal-0.5.9.ebuild 7169
+MISC ChangeLog 27447 RMD160 f0b25913fe1acce8f57f8d1fff9ce4977d835c26 SHA1 3f0a9520f7c04a9d08827a8ae3c4805488bd20ca SHA256 532e1aac2706e0c2027511fc21ad5034a9629edf222fc1d012d0b985799cbe66
+MD5 db35d87aeba3539af7161f1bb3b97a1e ChangeLog 27447
+RMD160 f0b25913fe1acce8f57f8d1fff9ce4977d835c26 ChangeLog 27447
+SHA256 532e1aac2706e0c2027511fc21ad5034a9629edf222fc1d012d0b985799cbe66 ChangeLog 27447
MISC metadata.xml 345 RMD160 aa6e810e9546542453ebe5d6ca46804e99f447f2 SHA1 fef829210e8555807f9b69ba5afedffb8af8d02c SHA256 0c9aeabf473a6836c25a5db2ca86b880dec1efa9e52310725e08d1e0df93447d
MD5 3317c4000387b670183d305ef9937b75 metadata.xml 345
RMD160 aa6e810e9546542453ebe5d6ca46804e99f447f2 metadata.xml 345
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.3 (GNU/Linux)
-iD8DBQFGI8n6oeSe8B0zEfwRAjXGAJ9pJ4wqVdWWG/SSCif53qkokv6tzgCaAn8P
-bL0KeFG19viNyXv9Q/vrPHY=
-=RlQY
+iD8DBQFGJPX9oeSe8B0zEfwRAnMiAJ9F8tqomr2K+ute5H8yfsyfdtm6iwCfW9km
+/8/M964JAXPVEquKn+UnkYQ=
+=I+TN
-----END PGP SIGNATURE-----
#rc-update add consolekit default since people
#forget or don't read ewarn and then complain their system is broken
#ONCE AGAIN DO NOT TOUCH THE LINE BELOW THIS
-RC_NEED
+RC_NEED=""
+
+# Should HAL be verbose to syslog? This is needed for debugging
+# HAL.
+HALD_VERBOSE="no"
#!/sbin/runscript
# Copyright 1999-2006 Gentoo Foundation
# Distributed under the terms of the GNU General Public License, v2 or later
-# $Header: /var/cvsroot/gentoo-x86/sys-apps/hal/files/0.5.9-hald.rc,v 1.3 2007/04/10 00:38:16 cardoe Exp $
+# $Header: /var/cvsroot/gentoo-x86/sys-apps/hal/files/0.5.9-hald.rc,v 1.4 2007/04/17 16:26:30 cardoe Exp $
depend() {
need dbus
}
start() {
+ [ -z "${HALD_VERBOSE}" ] && HALD_VERBOSE="no"
ebegin "Starting Hardware Abstraction Layer daemon"
if [ -f /proc/acpi/event ]; then
chmod 440 /proc/acpi/event
fi
- start-stop-daemon --start -q --exec /usr/sbin/hald -- --use-syslog
+ start-stop-daemon --start -q --exec /usr/sbin/hald -- --use-syslog --verbose=${HALD_VERBOSE}
eend $?
}
--- /dev/null
+commit f6fbf88c4af259bc4670f5d48c93ab4f70838074
+Author: Danny Kukawka <danny.kukawka@web.de>
+Date: Tue Apr 17 14:38:03 2007 +0200
+
+ fix possible segfault in probe-volume if vid->type == NULL
+
+ Fix possible segfaults in probe-volume and libhal if vid->type == NULL. Added
+ checks for vid->type != NULL to probe-volume.c and new checks for parameter
+ (LIBHAL_CHECK_PARAM_VALID) of libhal_changeset_set_property_string().
+
+ This fix also fd.o bug #10429.
+
+diff --git a/hald/linux/probing/probe-volume.c b/hald/linux/probing/probe-volume.c
+index d5963db..b5f71c0 100644
+--- a/hald/linux/probing/probe-volume.c
++++ b/hald/linux/probing/probe-volume.c
+@@ -122,8 +122,11 @@ set_volume_id_values (LibHalContext *ctx, const char *udi, LibHalChangeSet *cs,
+ libhal_changeset_set_property_string (cs, "volume.fsusage", usage);
+ HAL_DEBUG (("volume.fsusage = '%s'", usage));
+
+- libhal_changeset_set_property_string (cs, "volume.fstype", vid->type);
++ if (!libhal_changeset_set_property_string (cs, "volume.fstype", vid->type))
++ libhal_changeset_set_property_string (cs, "volume.fstype", "");
++
+ HAL_DEBUG(("volume.fstype = '%s'", vid->type));
++
+ if (vid->type_version[0] != '\0') {
+ libhal_changeset_set_property_string (cs, "volume.fsversion", vid->type_version);
+ HAL_DEBUG(("volume.fsversion = '%s'", vid->type_version));
+@@ -141,12 +144,23 @@ set_volume_id_values (LibHalContext *ctx, const char *udi, LibHalChangeSet *cs,
+ libhal_changeset_set_property_string (cs, "info.product", volume_label);
+ }
+ else {
+- snprintf (buf, sizeof (buf), "Volume (%s)", vid->type);
++ if (vid->type != NULL) {
++ snprintf (buf, sizeof (buf), "Volume (%s)", vid->type);
++ } else {
++ snprintf (buf, sizeof (buf), "Volume (unknown)");
++ }
++
+ libhal_changeset_set_property_string (cs, "info.product", buf);
++
+ }
+ g_free(volume_label);
+ } else {
+- snprintf (buf, sizeof (buf), "Volume (%s)", vid->type);
++ if (vid->type != NULL) {
++ snprintf (buf, sizeof (buf), "Volume (%s)", vid->type);
++ } else {
++ snprintf (buf, sizeof (buf), "Volume (unknown)");
++ }
++
+ libhal_changeset_set_property_string (cs, "info.product", buf);
+ }
+ }
+diff --git a/libhal/libhal.c b/libhal/libhal.c
+index 4ddac9e..fb9800a 100644
+--- a/libhal/libhal.c
++++ b/libhal/libhal.c
+@@ -3810,6 +3810,9 @@ libhal_changeset_set_property_string (LibHalChangeSet *changeset, const char *ke
+ {
+ LibHalChangeSetElement *elem;
+
++ LIBHAL_CHECK_PARAM_VALID(key, "*key", FALSE);
++ LIBHAL_CHECK_PARAM_VALID(value, "*value", FALSE);
++
+ elem = calloc (1, sizeof (LibHalChangeSetElement));
+ if (elem == NULL)
+ goto out;
--- /dev/null
+commit 674d2415aed43b43b81b262cbad2228f0477e34a
+Author: Danny Kukawka <danny.kukawka@web.de>
+Date: Tue Apr 17 15:09:22 2007 +0200
+
+ fix problems with case if vid->label[0] is '\0'
+
+ Fix problems with the case where vid->label[0] is '\0'. Don't call
+ strdup_valid_utf8 in this case, simply ignore the label in this case.
+ Cleaned up the code to prevent code duplication.
+
+ This fix fd.o bug #10362.
+
+diff --git a/hald/linux/probing/probe-volume.c b/hald/linux/probing/probe-volume.c
+index b5f71c0..b003b25 100644
+--- a/hald/linux/probing/probe-volume.c
++++ b/hald/linux/probing/probe-volume.c
+@@ -131,38 +131,34 @@ set_volume_id_values (LibHalContext *ctx, const char *udi, LibHalChangeSet *cs,
+ libhal_changeset_set_property_string (cs, "volume.fsversion", vid->type_version);
+ HAL_DEBUG(("volume.fsversion = '%s'", vid->type_version));
+ }
++
+ libhal_changeset_set_property_string (cs, "volume.uuid", vid->uuid);
+ HAL_DEBUG(("volume.uuid = '%s'", vid->uuid));
+
+- /* we need to be sure for a utf8 valid label, because dbus accept only utf8 valid strings */
+- volume_label = strdup_valid_utf8 (vid->label);
+- if( volume_label != NULL ) {
+- libhal_changeset_set_property_string (cs, "volume.label", volume_label);
+- HAL_DEBUG(("volume.label = '%s'", volume_label));
++ if(vid->label != NULL && vid->label[0] != '\0') {
++ /* we need to be sure for a utf8 valid label, because dbus accept only utf8 valid strings */
++ volume_label = strdup_valid_utf8 (vid->label);
++ if( volume_label != NULL ) {
++ libhal_changeset_set_property_string (cs, "volume.label", volume_label);
++ HAL_DEBUG(("volume.label = '%s'", volume_label));
+
+- if (strlen(volume_label) > 0) {
+- libhal_changeset_set_property_string (cs, "info.product", volume_label);
+- }
+- else {
+- if (vid->type != NULL) {
+- snprintf (buf, sizeof (buf), "Volume (%s)", vid->type);
+- } else {
+- snprintf (buf, sizeof (buf), "Volume (unknown)");
++ if (strlen(volume_label) > 0) {
++ libhal_changeset_set_property_string (cs, "info.product", volume_label);
++ g_free(volume_label);
++ return;
+ }
+
+- libhal_changeset_set_property_string (cs, "info.product", buf);
+-
+- }
+- g_free(volume_label);
+- } else {
+- if (vid->type != NULL) {
+- snprintf (buf, sizeof (buf), "Volume (%s)", vid->type);
+- } else {
+- snprintf (buf, sizeof (buf), "Volume (unknown)");
++ g_free(volume_label);
+ }
++ }
+
+- libhal_changeset_set_property_string (cs, "info.product", buf);
++ if (vid->type != NULL) {
++ snprintf (buf, sizeof (buf), "Volume (%s)", vid->type);
++ } else {
++ snprintf (buf, sizeof (buf), "Volume (unknown)");
+ }
++
++ libhal_changeset_set_property_string (cs, "info.product", buf);
+ }
+
+ static void
08_contains_not_fdi_directive.patch
09_hald_addon_keyboard_start_one.patch
10_freebsd_storage_reprobe_fix.patch
+11_hal_fix_segfault_probe_volume.patch
+12_hal_fix-vol_label_probe_volume.patch
95_gentoo_man_page.patch
96_plugdev_allow_send.patch
+++ /dev/null
-diff --git a/hald/linux/device.c b/hald/linux/device.c
-index d109e9b..1211535 100644
---- a/hald/linux/device.c
-+++ b/hald/linux/device.c
-@@ -533,27 +533,52 @@ missing_scsi_host (const gchar *sysfs_pa
- gchar path[HAL_PATH_MAX];
- HalDevice *d;
- HotplugEvent *host_event;
-+ const gchar *last_elem;
-+ gint host_num, bus_num, target_num, lun_num;
-+ int max;
-+ gint num = -1;
- int rc = FALSE;
-
-- g_strlcpy(path, sysfs_path, sizeof(path));
-- /* skip device */
-- if (!hal_util_path_ascend (path))
-+ /* catch only scsi-devices */
-+ last_elem = hal_util_get_last_element (sysfs_path);
-+ if (sscanf (last_elem, "%d:%d:%d:%d", &host_num, &bus_num, &target_num, &lun_num) != 4)
- goto out;
-- /* skip target */
-- if (!hal_util_path_ascend (path))
-+
-+ /* avoid loops */
-+ if (device_event->reposted)
- goto out;
-- if (strstr (path, "/host") == NULL)
-+
-+ /* search devpath for missing host */
-+ g_strlcpy(path, sysfs_path, sizeof(path));
-+ max = 100;
-+ while (max--) {
-+ if (!hal_util_path_ascend (path))
-+ goto out;
-+
-+ last_elem = hal_util_get_last_element (path);
-+ if (sscanf (last_elem, "host%d", &num) == 1)
-+ break;
-+ }
-+
-+ /* the device must belong to this host */
-+ if (host_num != num)
- goto out;
-
-+ /* look if host is present */
- d = hal_device_store_match_key_value_string (hald_get_gdl (),
- "linux.sysfs_path",
- path);
-+
-+ /* skip "add" if host is already created */
- if (action == HOTPLUG_ACTION_ADD && d != NULL)
- goto out;
-+
-+ /* skip "remove" if host does not exist */
- if (action == HOTPLUG_ACTION_REMOVE && d == NULL)
- goto out;
-- rc = TRUE;
-
-+ /* fake host event */
-+ rc = TRUE;
- host_event = g_new0 (HotplugEvent, 1);
- host_event->action = action;
- host_event->type = HOTPLUG_EVENT_SYSFS_DEVICE;
-@@ -561,15 +586,17 @@ missing_scsi_host (const gchar *sysfs_pa
- g_strlcpy (host_event->sysfs.sysfs_path, path, sizeof (host_event->sysfs.sysfs_path));
- host_event->sysfs.net_ifindex = -1;
-
-+ /* insert host before our event, so we can see it as parent */
- if (action == HOTPLUG_ACTION_ADD) {
- hotplug_event_enqueue_at_front (device_event);
- hotplug_event_enqueue_at_front (host_event);
- hotplug_event_reposted (device_event);
- goto out;
- }
-+
-+ /* remove host */
- if (action == HOTPLUG_ACTION_REMOVE)
- hotplug_event_enqueue (host_event);
--
- out:
- return rc;
- }
-diff --git a/hald/linux/hotplug.c b/hald/linux/hotplug.c
-index 986b96c..96c8540 100644
---- a/hald/linux/hotplug.c
-+++ b/hald/linux/hotplug.c
-@@ -74,6 +74,7 @@ hotplug_event_reposted (void *end_token)
- {
- HotplugEvent *hotplug_event = (HotplugEvent *) end_token;
-
-+ hotplug_event->reposted = TRUE;
- hotplug_events_in_progress = g_slist_remove (hotplug_events_in_progress, hotplug_event);
- }
-
-diff --git a/hald/linux/hotplug.h b/hald/linux/hotplug.h
-index 2daf982..b9c3501 100644
---- a/hald/linux/hotplug.h
-+++ b/hald/linux/hotplug.h
-@@ -54,6 +54,7 @@ typedef struct
- {
- HotplugActionType action; /* Whether the event is add or remove */
- HotplugEventType type; /* Type of event */
-+ gboolean reposted; /* Avoid loops */
-
- void (*free_function) (gpointer data);
-
+++ /dev/null
---- fdi/policy/10osvendor/10-storage-policy.fdi.old 2005-03-29 15:19:35.000000000 -0500
-+++ fdi/policy/10osvendor/10-storage-policy.fdi 2005-05-08 06:29:18.000000000 -0400
-@@ -10,7 +10,8 @@
- <merge key="storage.policy.default.managed_keyword.primary" type="string">managed</merge>
- <merge key="storage.policy.default.managed_keyword.secondary" type="string">kudzu</merge>
- <merge key="storage.policy.default.mount_option.noauto" type="bool">true</merge>
-- <merge key="storage.policy.default.mount_option.pamconsole" type="bool">true</merge>
-+ <merge key="storage.policy.default.mount_option.pamconsole" type="bool">false</merge>
-+ <merge key="storage.policy.default.mount_option.user" type="bool">true</merge>
- <merge key="storage.policy.default.mount_option.exec" type="bool">true</merge>
- </match>
- </device>
+++ /dev/null
-Index: hald/linux2/blockdev.c
-===================================================================
-RCS file: /cvs/hal/hal/hald/linux2/blockdev.c,v
-retrieving revision 1.27
-diff -u -3 -p -r1.27 blockdev.c
---- hald/linux2/blockdev.c 2 Nov 2005 15:38:13 -0000 1.27
-+++ hald/linux2/blockdev.c 28 Nov 2005 23:04:24 -0000
-@@ -827,7 +827,8 @@ hotplug_event_begin_add_blockdev (const
-
- /* These magic values are documented in the kernel source */
- switch (type) {
-- case 0: /* Disk */
-+ case 0: /* Disk */
-+ case 14: /* Simple Direct Access Device, set it to disk */
- hal_device_property_set_string (d, "storage.drive_type", "disk");
- break;
-
-
+++ /dev/null
-From: David Zeuthen <davidz@redhat.com>
-Date: Sun, 1 Apr 2007 19:08:52 +0000 (-0400)
-Subject: teach fdi.dtd about contains_not, rip out RNG scheme
-X-Git-Url: http://gitweb.freedesktop.org/?p=hal.git;a=commitdiff;h=d3aaf33d66443c0f18743a78511caf16df36cb69
-
-teach fdi.dtd about contains_not, rip out RNG scheme
-
-Also add a note to the TODO list that we should have a
-hal-fdi-file-validate tool much like desktop-file-validate
----
-
---- a/fdi/fdi.dtd
-+++ b/fdi/fdi.dtd
-@@ -20,6 +20,7 @@
- is_absolute_path (false|true) #IMPLIED
- contains CDATA #IMPLIED
- contains_ncase CDATA #IMPLIED
-+ contains_not CDATA #IMPLIED
- prefix CDATA #IMPLIED
- prefix_ncase CDATA #IMPLIED
- suffix CDATA #IMPLIED
# Copyright 1999-2007 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/sys-apps/hal/hal-0.5.9.ebuild,v 1.22 2007/04/16 19:10:43 cardoe Exp $
+# $Header: /var/cvsroot/gentoo-x86/sys-apps/hal/hal-0.5.9.ebuild,v 1.23 2007/04/17 16:26:30 cardoe Exp $
inherit eutils linux-info autotools flag-o-matic
newinitd "${FILESDIR}"/0.5.9-hald.rc hald
cp "${FILESDIR}"/0.5.9-hald.conf "${WORKDIR}"/
if use pam; then
- sed -e 's:RC_NEED:RC_NEED="consolekit":' -i "${WORKDIR}"/0.5.9-hald.conf
- else
- sed -e 's:RC_NEED:RC_NEED="":' -i "${WORKDIR}"/0.5.9-hald.conf
+ sed -e 's:RC_NEED="":RC_NEED="consolekit":' -i "${WORKDIR}"/0.5.9-hald.conf
+ fi
+ if use debug; then
+ sed -e 's:HALD_VERBOSE="no":HALD_VERBOSE="yes":' \
+ -i "${WORKDIR}"/0.5.9-hald.conf
fi
newconfd "${WORKDIR}"/0.5.9-hald.conf hald