Weird bugs processing fdi files
Jeff Mitchell
kde-dev at emailgoeshere.com
Thu Apr 26 13:07:38 PDT 2007
I'm sending to this list at the request of David Zeuthen. Using
hal-0.5.9 on Gentoo.
I'm writing a fdi file so that the iPod I'm testing with (which is not
mine, but I can hopefully get back to test further) gets some keys
installed. Specifically, I'm trying to:
-Override the portable_audio_player.access_method (default from
10-usb-music-players.fdi of "storage") to "libgpod"
-Add a key called libgpod.name with the data "iPod Shuffle (2G)
I've tried doing this two ways, both of which should have worked
according to the folks in #hal. One method doesn't work at all, and the
other method inserts the keys into the wrong place.
Attached is lshal_original.txt, which contains the relevant output with
no custom rules (and with the first method below), and
lshal_method2.txt, which contains the relevant output with the keys in
the incorrect location (from the second method below).
First method:
<match key="info.category" string="storage">
<match key="storage.vendor" contains="Apple">
<match key="storage.model" contains="iPod">
<match key="@storage.physical_device:usb.vendor_id" int="0x05ac">
<match key="@storage.physical_device:usb.product_id"
int="0x1301">
<merge key="portable_audio_player.access_method"
type="string">libgpod</merge>
<append key="libgpod.name" type="string">iPod Shuffle
(2G)</append>
</match>
</match>
</match>
</match>
</match>
This uses the same structure as in 10-usb-music-players.fdi. It then
goes deeper, checking the vendor_id ad product_id. The two values are
correct (they match in the other method). This method, I get absolutely
no change at all; lshal -lt produces the exact same output as when those
rules are not in place (other than some device paths).
Second method:
<match key="info.bus" string="usb">
<match key="usb.vendor_id" int="0x05ac">
<match key="usb.product_id" int="0x1301">
<merge key="portable_audio_player.access_method"
type="string">libgpod</merge>
<append key="libgpod.name" type="string">iPod Shuffle
(2G)</append>
</match>
</match>
</match>
This method does produce a match, and the keys do get merged in.
However, (using the names from the hal-device-manager GUI) the iPod has
the following structure:
iPod
->USB Mass Storage Interface
-->SCSI Host Adapter
--->SCSI Device
---->iPod
----->ORANGE
From 10-usb-music-players.fdi, the various portable_audio_player.xyz
keys are located under the second iPod entry (child of SCSI Device).
However, the two keys that are added by my fdi rule instead get placed
under USB Mass Storage Interface, instead of being placed with the others.
The behavior under both of these conditions was confirmed to me as buggy
in #hal. Hopefully you guys will be able to figure out what's going on,
and how it can be fixed.
Let me know if I can help.
Thanks,
Jeff
-------------- next part --------------
udi = '/org/freedesktop/Hal/devices/usb_device_5ac_1301_000A2700111D84F4'
info.bus = 'usb_device' (string)
info.linux.driver = 'usb' (string)
info.parent = '/org/freedesktop/Hal/devices/usb_device_0_0_0000_00_1d_7' (string)
info.product = 'iPod' (string)
info.subsystem = 'usb_device' (string)
info.udi = '/org/freedesktop/Hal/devices/usb_device_5ac_1301_000A2700111D84F4' (string)
info.vendor = 'Apple Computer, Inc.' (string)
linux.hotplug_type = 2 (0x2) (int)
linux.subsystem = 'usb' (string)
linux.sysfs_path = '/sys/devices/pci0000:00/0000:00:1d.7/usb1/1-5' (string)
usb_device.bus_number = 1 (0x1) (int)
usb_device.can_wake_up = false (bool)
usb_device.configuration = 'High Power, High Speed' (string)
usb_device.configuration_value = 1 (0x1) (int)
usb_device.device_class = 0 (0x0) (int)
usb_device.device_protocol = 0 (0x0) (int)
usb_device.device_revision_bcd = 256 (0x100) (int)
usb_device.device_subclass = 0 (0x0) (int)
usb_device.is_self_powered = false (bool)
usb_device.linux.device_number = 18 (0x12) (int)
usb_device.linux.sysfs_path = '/sys/devices/pci0000:00/0000:00:1d.7/usb1/1-5' (string)
usb_device.max_power = 500 (0x1f4) (int)
usb_device.num_configurations = 2 (0x2) (int)
usb_device.num_interfaces = 1 (0x1) (int)
usb_device.num_ports = 0 (0x0) (int)
usb_device.product = 'iPod' (string)
usb_device.product_id = 4865 (0x1301) (int)
usb_device.serial = '000A2700111D84F4' (string)
usb_device.speed = 480.0 (480) (double)
usb_device.speed_bcd = 294912 (0x48000) (int)
usb_device.vendor = 'Apple Computer, Inc.' (string)
usb_device.vendor_id = 1452 (0x5ac) (int)
usb_device.version = 2.0 (2) (double)
usb_device.version_bcd = 512 (0x200) (int)
udi = '/org/freedesktop/Hal/devices/usb_device_5ac_1301_000A2700111D84F4_if0'
info.bus = 'usb' (string)
info.linux.driver = 'usb-storage' (string)
info.parent = '/org/freedesktop/Hal/devices/usb_device_5ac_1301_000A2700111D84F4' (string)
info.product = 'USB Mass Storage Interface' (string)
info.subsystem = 'usb' (string)
info.udi = '/org/freedesktop/Hal/devices/usb_device_5ac_1301_000A2700111D84F4_if0' (string)
linux.hotplug_type = 2 (0x2) (int)
linux.subsystem = 'usb' (string)
linux.sysfs_path = '/sys/devices/pci0000:00/0000:00:1d.7/usb1/1-5/1-5:1.0' (string)
usb.bus_number = 1 (0x1) (int)
usb.can_wake_up = false (bool)
usb.configuration = 'High Power, High Speed' (string)
usb.configuration_value = 1 (0x1) (int)
usb.device_class = 0 (0x0) (int)
usb.device_protocol = 0 (0x0) (int)
usb.device_revision_bcd = 256 (0x100) (int)
usb.device_subclass = 0 (0x0) (int)
usb.interface.class = 8 (0x8) (int)
usb.interface.description = 'Mass Storage Interface' (string)
usb.interface.number = 0 (0x0) (int)
usb.interface.protocol = 80 (0x50) (int)
usb.interface.subclass = 6 (0x6) (int)
usb.is_self_powered = false (bool)
usb.linux.device_number = 18 (0x12) (int)
usb.linux.sysfs_path = '/sys/devices/pci0000:00/0000:00:1d.7/usb1/1-5/1-5:1.0' (string)
usb.max_power = 500 (0x1f4) (int)
usb.num_configurations = 2 (0x2) (int)
usb.num_interfaces = 1 (0x1) (int)
usb.num_ports = 0 (0x0) (int)
usb.product = 'USB Mass Storage Interface' (string)
usb.product_id = 4865 (0x1301) (int)
usb.serial = '000A2700111D84F4' (string)
usb.speed = 480.0 (480) (double)
usb.speed_bcd = 294912 (0x48000) (int)
usb.vendor = 'Apple Computer, Inc.' (string)
usb.vendor_id = 1452 (0x5ac) (int)
usb.version = 2.0 (2) (double)
usb.version_bcd = 512 (0x200) (int)
udi = '/org/freedesktop/Hal/devices/usb_device_5ac_1301_000A2700111D84F4_if0_scsi_host'
info.capabilities = {'scsi_host'} (string list)
info.category = 'scsi_host' (string)
info.parent = '/org/freedesktop/Hal/devices/usb_device_5ac_1301_000A2700111D84F4_if0' (string)
info.product = 'SCSI Host Adapter' (string)
info.udi = '/org/freedesktop/Hal/devices/usb_device_5ac_1301_000A2700111D84F4_if0_scsi_host' (string)
linux.hotplug_type = 2 (0x2) (int)
linux.subsystem = 'scsi_host' (string)
linux.sysfs_path = '/sys/devices/pci0000:00/0000:00:1d.7/usb1/1-5/1-5:1.0/host14' (string)
scsi_host.host = 14 (0xe) (int)
udi = '/org/freedesktop/Hal/devices/usb_device_5ac_1301_000A2700111D84F4_if0_scsi_host_scsi_device_lun0'
info.bus = 'scsi' (string)
info.linux.driver = 'sd' (string)
info.parent = '/org/freedesktop/Hal/devices/usb_device_5ac_1301_000A2700111D84F4_if0_scsi_host' (string)
info.product = 'SCSI Device' (string)
info.subsystem = 'scsi' (string)
info.udi = '/org/freedesktop/Hal/devices/usb_device_5ac_1301_000A2700111D84F4_if0_scsi_host_scsi_device_lun0' (string)
linux.hotplug_type = 2 (0x2) (int)
linux.subsystem = 'scsi' (string)
linux.sysfs_path = '/sys/devices/pci0000:00/0000:00:1d.7/usb1/1-5/1-5:1.0/host14/target14:0:0/14:0:0:0' (string)
scsi.bus = 0 (0x0) (int)
scsi.host = 14 (0xe) (int)
scsi.lun = 0 (0x0) (int)
scsi.model = 'iPod' (string)
scsi.target = 0 (0x0) (int)
scsi.type = 'disk' (string)
scsi.vendor = 'Apple' (string)
udi = '/org/freedesktop/Hal/devices/storage_serial_Apple_iPod_000A2700111D84F4'
block.device = '/dev/sdb' (string)
block.is_volume = false (bool)
block.major = 8 (0x8) (int)
block.minor = 16 (0x10) (int)
block.storage_device = '/org/freedesktop/Hal/devices/storage_serial_Apple_iPod_000A2700111D84F4' (string)
info.addons = {'hald-addon-storage'} (string list)
info.capabilities = {'storage', 'block', 'portable_audio_player'} (string list)
info.category = 'portable_audio_player' (string)
info.interfaces = {'org.freedesktop.Hal.Device.Storage', 'org.freedesktop.Hal.Device.Storage'} (string list)
info.parent = '/org/freedesktop/Hal/devices/usb_device_5ac_1301_000A2700111D84F4_if0_scsi_host_scsi_device_lun0' (string)
info.product = 'iPod' (string)
info.udi = '/org/freedesktop/Hal/devices/storage_serial_Apple_iPod_000A2700111D84F4' (string)
info.vendor = 'Apple' (string)
linux.hotplug_type = 3 (0x3) (int)
linux.sysfs_path = '/sys/block/sdb' (string)
org.freedesktop.Hal.Device.Storage.method_argnames = {'extra_options', 'extra_options'} (string list)
org.freedesktop.Hal.Device.Storage.method_execpaths = {'hal-storage-eject', 'hal-storage-closetray'} (string list)
org.freedesktop.Hal.Device.Storage.method_names = {'Eject', 'CloseTray'} (string list)
org.freedesktop.Hal.Device.Storage.method_signatures = {'as', 'as'} (string list)
portable_audio_player.access_method = 'storage' (string)
portable_audio_player.output_formats = {'audio/aac', 'audio/mpeg'} (string list)
portable_audio_player.storage_device = '/org/freedesktop/Hal/devices/storage_serial_Apple_iPod_000A2700111D84F4' (string)
portable_audio_player.type = 'ipod' (string)
storage.automount_enabled_hint = true (bool)
storage.bus = 'usb' (string)
storage.drive_type = 'disk' (string)
storage.firmware_version = '2.70' (string)
storage.hotpluggable = true (bool)
storage.lun = 0 (0x0) (int)
storage.media_check_enabled = true (bool)
storage.model = 'iPod' (string)
storage.no_partitions_hint = false (bool)
storage.originating_device = '/org/freedesktop/Hal/devices/usb_device_5ac_1301_000A2700111D84F4_if0' (string)
storage.partitioning_scheme = 'none' (string)
storage.physical_device = '/org/freedesktop/Hal/devices/usb_device_5ac_1301_000A2700111D84F4_if0' (string)
storage.removable = true (bool)
storage.removable.media_available = true (bool)
storage.removable.media_size = 1015021568 (0x3c800000) (uint64)
storage.requires_eject = true (bool)
storage.serial = 'Apple_iPod_000A2700111D84F4' (string)
storage.size = 0 (0x0) (uint64)
storage.vendor = 'Apple' (string)
udi = '/org/freedesktop/Hal/devices/volume_uuid_902C_8F76'
block.device = '/dev/sdb' (string)
block.is_volume = true (bool)
block.major = 8 (0x8) (int)
block.minor = 16 (0x10) (int)
block.storage_device = '/org/freedesktop/Hal/devices/storage_serial_Apple_iPod_000A2700111D84F4' (string)
info.capabilities = {'volume', 'block'} (string list)
info.category = 'volume' (string)
info.interfaces = {'org.freedesktop.Hal.Device.Volume'} (string list)
info.parent = '/org/freedesktop/Hal/devices/storage_serial_Apple_iPod_000A2700111D84F4' (string)
info.product = 'ORANGE' (string)
info.udi = '/org/freedesktop/Hal/devices/volume_uuid_902C_8F76' (string)
linux.hotplug_type = 3 (0x3) (int)
linux.sysfs_path = '/sys/block/sdb/fakevolume' (string)
org.freedesktop.Hal.Device.Volume.method_argnames = {'mount_point fstype extra_options', 'extra_options', 'extra_options'} (string list)
org.freedesktop.Hal.Device.Volume.method_execpaths = {'hal-storage-mount', 'hal-storage-unmount', 'hal-storage-eject'} (string list)
org.freedesktop.Hal.Device.Volume.method_names = {'Mount', 'Unmount', 'Eject'} (string list)
org.freedesktop.Hal.Device.Volume.method_signatures = {'ssas', 'as', 'as'} (string list)
storage.model = '' (string)
volume.block_size = 2048 (0x800) (int)
volume.fstype = 'vfat' (string)
volume.fsusage = 'filesystem' (string)
volume.fsversion = 'FAT32' (string)
volume.ignore = false (bool)
volume.is_disc = false (bool)
volume.is_mounted = false (bool)
volume.is_mounted_read_only = false (bool)
volume.is_partition = false (bool)
volume.label = 'ORANGE' (string)
volume.linux.is_device_mapper = false (bool)
volume.mount.valid_options = {'ro', 'sync', 'dirsync', 'noatime', 'nodiratime', 'noexec', 'quiet', 'remount', 'exec', 'utf8', 'shortname=', 'codepage=', 'iocharset=', 'umask=', 'dmask=', 'fmask=', 'uid='} (string list)
volume.mount_point = '' (string)
volume.num_blocks = 1982464 (0x1e4000) (int)
volume.size = 1015021568 (0x3c800000) (uint64)
volume.unmount.valid_options = {'lazy'} (string list)
volume.uuid = '902C-8F76' (string)
udi = '/org/freedesktop/Hal/devices/usb_device_5ac_1301_000A2700111D84F4_if0_scsi_host_scsi_device_lun0_scsi_generic'
info.capabilities = {'scsi_generic'} (string list)
info.category = 'scsi_generic' (string)
info.parent = '/org/freedesktop/Hal/devices/usb_device_5ac_1301_000A2700111D84F4_if0_scsi_host_scsi_device_lun0' (string)
info.product = 'SCSI Generic Interface' (string)
info.udi = '/org/freedesktop/Hal/devices/usb_device_5ac_1301_000A2700111D84F4_if0_scsi_host_scsi_device_lun0_scsi_generic' (string)
linux.device_file = '/dev/sg1' (string)
linux.hotplug_type = 2 (0x2) (int)
linux.subsystem = 'scsi_generic' (string)
linux.sysfs_path = '/sys/class/scsi_generic/sg1' (string)
scsi_generic.device = '/dev/sg1' (string)
udi = '/org/freedesktop/Hal/devices/usb_device_5ac_1301_000A2700111D84F4_usbraw'
info.capabilities = {'usbraw'} (string list)
info.category = 'usbraw' (string)
info.parent = '/org/freedesktop/Hal/devices/usb_device_5ac_1301_000A2700111D84F4' (string)
info.product = 'USB Raw Device Access' (string)
info.udi = '/org/freedesktop/Hal/devices/usb_device_5ac_1301_000A2700111D84F4_usbraw' (string)
linux.device_file = '/dev/bus/usb/001/018' (string)
linux.hotplug_type = 2 (0x2) (int)
linux.subsystem = 'usb_device' (string)
linux.sysfs_path = '/sys/class/usb_device/usbdev1.18' (string)
usbraw.device = '/dev/bus/usb/001/018' (string)
-------------- next part --------------
udi = '/org/freedesktop/Hal/devices/usb_device_5ac_1301_000A2700111D84F4'
info.bus = 'usb_device' (string)
info.linux.driver = 'usb' (string)
info.parent = '/org/freedesktop/Hal/devices/usb_device_0_0_0000_00_1d_7' (string)
info.product = 'iPod' (string)
info.subsystem = 'usb_device' (string)
info.udi = '/org/freedesktop/Hal/devices/usb_device_5ac_1301_000A2700111D84F4' (string)
info.vendor = 'Apple Computer, Inc.' (string)
linux.hotplug_type = 2 (0x2) (int)
linux.subsystem = 'usb' (string)
linux.sysfs_path = '/sys/devices/pci0000:00/0000:00:1d.7/usb1/1-5' (string)
usb_device.bus_number = 1 (0x1) (int)
usb_device.can_wake_up = false (bool)
usb_device.configuration = 'High Power, High Speed' (string)
usb_device.configuration_value = 1 (0x1) (int)
usb_device.device_class = 0 (0x0) (int)
usb_device.device_protocol = 0 (0x0) (int)
usb_device.device_revision_bcd = 256 (0x100) (int)
usb_device.device_subclass = 0 (0x0) (int)
usb_device.is_self_powered = false (bool)
usb_device.linux.device_number = 22 (0x16) (int)
usb_device.linux.sysfs_path = '/sys/devices/pci0000:00/0000:00:1d.7/usb1/1-5' (string)
usb_device.max_power = 500 (0x1f4) (int)
usb_device.num_configurations = 2 (0x2) (int)
usb_device.num_interfaces = 1 (0x1) (int)
usb_device.num_ports = 0 (0x0) (int)
usb_device.product = 'iPod' (string)
usb_device.product_id = 4865 (0x1301) (int)
usb_device.serial = '000A2700111D84F4' (string)
usb_device.speed = 480.0 (480) (double)
usb_device.speed_bcd = 294912 (0x48000) (int)
usb_device.vendor = 'Apple Computer, Inc.' (string)
usb_device.vendor_id = 1452 (0x5ac) (int)
usb_device.version = 2.0 (2) (double)
usb_device.version_bcd = 512 (0x200) (int)
udi = '/org/freedesktop/Hal/devices/usb_device_5ac_1301_000A2700111D84F4_if0'
info.bus = 'usb' (string)
info.linux.driver = 'usb-storage' (string)
info.parent = '/org/freedesktop/Hal/devices/usb_device_5ac_1301_000A2700111D84F4' (string)
info.product = 'USB Mass Storage Interface' (string)
info.subsystem = 'usb' (string)
info.udi = '/org/freedesktop/Hal/devices/usb_device_5ac_1301_000A2700111D84F4_if0' (string)
libgpod.name = 'iPod Shuffle (2G)' (string)
linux.hotplug_type = 2 (0x2) (int)
linux.subsystem = 'usb' (string)
linux.sysfs_path = '/sys/devices/pci0000:00/0000:00:1d.7/usb1/1-5/1-5:1.0' (string)
portable_audio_player.access_method = 'libgpod' (string)
usb.bus_number = 1 (0x1) (int)
usb.can_wake_up = false (bool)
usb.configuration = 'High Power, High Speed' (string)
usb.configuration_value = 1 (0x1) (int)
usb.device_class = 0 (0x0) (int)
usb.device_protocol = 0 (0x0) (int)
usb.device_revision_bcd = 256 (0x100) (int)
usb.device_subclass = 0 (0x0) (int)
usb.interface.class = 8 (0x8) (int)
usb.interface.description = 'Mass Storage Interface' (string)
usb.interface.number = 0 (0x0) (int)
usb.interface.protocol = 80 (0x50) (int)
usb.interface.subclass = 6 (0x6) (int)
usb.is_self_powered = false (bool)
usb.linux.device_number = 22 (0x16) (int)
usb.linux.sysfs_path = '/sys/devices/pci0000:00/0000:00:1d.7/usb1/1-5/1-5:1.0' (string)
usb.max_power = 500 (0x1f4) (int)
usb.num_configurations = 2 (0x2) (int)
usb.num_interfaces = 1 (0x1) (int)
usb.num_ports = 0 (0x0) (int)
usb.product = 'USB Mass Storage Interface' (string)
usb.product_id = 4865 (0x1301) (int)
usb.serial = '000A2700111D84F4' (string)
usb.speed = 480.0 (480) (double)
usb.speed_bcd = 294912 (0x48000) (int)
usb.vendor = 'Apple Computer, Inc.' (string)
usb.vendor_id = 1452 (0x5ac) (int)
usb.version = 2.0 (2) (double)
usb.version_bcd = 512 (0x200) (int)
udi = '/org/freedesktop/Hal/devices/usb_device_5ac_1301_000A2700111D84F4_if0_scsi_host'
info.capabilities = {'scsi_host'} (string list)
info.category = 'scsi_host' (string)
info.parent = '/org/freedesktop/Hal/devices/usb_device_5ac_1301_000A2700111D84F4_if0' (string)
info.product = 'SCSI Host Adapter' (string)
info.udi = '/org/freedesktop/Hal/devices/usb_device_5ac_1301_000A2700111D84F4_if0_scsi_host' (string)
linux.hotplug_type = 2 (0x2) (int)
linux.subsystem = 'scsi_host' (string)
linux.sysfs_path = '/sys/devices/pci0000:00/0000:00:1d.7/usb1/1-5/1-5:1.0/host18' (string)
scsi_host.host = 18 (0x12) (int)
udi = '/org/freedesktop/Hal/devices/usb_device_5ac_1301_000A2700111D84F4_if0_scsi_host_scsi_device_lun0'
info.bus = 'scsi' (string)
info.linux.driver = 'sd' (string)
info.parent = '/org/freedesktop/Hal/devices/usb_device_5ac_1301_000A2700111D84F4_if0_scsi_host' (string)
info.product = 'SCSI Device' (string)
info.subsystem = 'scsi' (string)
info.udi = '/org/freedesktop/Hal/devices/usb_device_5ac_1301_000A2700111D84F4_if0_scsi_host_scsi_device_lun0' (string)
linux.hotplug_type = 2 (0x2) (int)
linux.subsystem = 'scsi' (string)
linux.sysfs_path = '/sys/devices/pci0000:00/0000:00:1d.7/usb1/1-5/1-5:1.0/host18/target18:0:0/18:0:0:0' (string)
scsi.bus = 0 (0x0) (int)
scsi.host = 18 (0x12) (int)
scsi.lun = 0 (0x0) (int)
scsi.model = 'iPod' (string)
scsi.target = 0 (0x0) (int)
scsi.type = 'disk' (string)
scsi.vendor = 'Apple' (string)
udi = '/org/freedesktop/Hal/devices/usb_device_5ac_1301_000A2700111D84F4_if0_scsi_host_scsi_device_lun0_scsi_generic'
info.capabilities = {'scsi_generic'} (string list)
info.category = 'scsi_generic' (string)
info.parent = '/org/freedesktop/Hal/devices/usb_device_5ac_1301_000A2700111D84F4_if0_scsi_host_scsi_device_lun0' (string)
info.product = 'SCSI Generic Interface' (string)
info.udi = '/org/freedesktop/Hal/devices/usb_device_5ac_1301_000A2700111D84F4_if0_scsi_host_scsi_device_lun0_scsi_generic' (string)
linux.device_file = '/dev/sg1' (string)
linux.hotplug_type = 2 (0x2) (int)
linux.subsystem = 'scsi_generic' (string)
linux.sysfs_path = '/sys/class/scsi_generic/sg1' (string)
scsi_generic.device = '/dev/sg1' (string)
udi = '/org/freedesktop/Hal/devices/storage_serial_Apple_iPod_000A2700111D84F4'
block.device = '/dev/sdb' (string)
block.is_volume = false (bool)
block.major = 8 (0x8) (int)
block.minor = 16 (0x10) (int)
block.storage_device = '/org/freedesktop/Hal/devices/storage_serial_Apple_iPod_000A2700111D84F4' (string)
info.addons = {'hald-addon-storage'} (string list)
info.capabilities = {'storage', 'block', 'portable_audio_player'} (string list)
info.category = 'portable_audio_player' (string)
info.interfaces = {'org.freedesktop.Hal.Device.Storage', 'org.freedesktop.Hal.Device.Storage'} (string list)
info.parent = '/org/freedesktop/Hal/devices/usb_device_5ac_1301_000A2700111D84F4_if0_scsi_host_scsi_device_lun0' (string)
info.product = 'iPod' (string)
info.udi = '/org/freedesktop/Hal/devices/storage_serial_Apple_iPod_000A2700111D84F4' (string)
info.vendor = 'Apple' (string)
linux.hotplug_type = 3 (0x3) (int)
linux.sysfs_path = '/sys/block/sdb' (string)
org.freedesktop.Hal.Device.Storage.method_argnames = {'extra_options', 'extra_options'} (string list)
org.freedesktop.Hal.Device.Storage.method_execpaths = {'hal-storage-eject', 'hal-storage-closetray'} (string list)
org.freedesktop.Hal.Device.Storage.method_names = {'Eject', 'CloseTray'} (string list)
org.freedesktop.Hal.Device.Storage.method_signatures = {'as', 'as'} (string list)
portable_audio_player.access_method = 'storage' (string)
portable_audio_player.output_formats = {'audio/aac', 'audio/mpeg'} (string list)
portable_audio_player.storage_device = '/org/freedesktop/Hal/devices/storage_serial_Apple_iPod_000A2700111D84F4' (string)
portable_audio_player.type = 'ipod' (string)
storage.automount_enabled_hint = true (bool)
storage.bus = 'usb' (string)
storage.drive_type = 'disk' (string)
storage.firmware_version = '2.70' (string)
storage.hotpluggable = true (bool)
storage.lun = 0 (0x0) (int)
storage.media_check_enabled = true (bool)
storage.model = 'iPod' (string)
storage.no_partitions_hint = false (bool)
storage.originating_device = '/org/freedesktop/Hal/devices/usb_device_5ac_1301_000A2700111D84F4_if0' (string)
storage.partitioning_scheme = 'none' (string)
storage.physical_device = '/org/freedesktop/Hal/devices/usb_device_5ac_1301_000A2700111D84F4_if0' (string)
storage.removable = true (bool)
storage.removable.media_available = true (bool)
storage.removable.media_size = 1015021568 (0x3c800000) (uint64)
storage.requires_eject = true (bool)
storage.serial = 'Apple_iPod_000A2700111D84F4' (string)
storage.size = 0 (0x0) (uint64)
storage.vendor = 'Apple' (string)
udi = '/org/freedesktop/Hal/devices/volume_uuid_902C_8F76'
block.device = '/dev/sdb' (string)
block.is_volume = true (bool)
block.major = 8 (0x8) (int)
block.minor = 16 (0x10) (int)
block.storage_device = '/org/freedesktop/Hal/devices/storage_serial_Apple_iPod_000A2700111D84F4' (string)
info.capabilities = {'volume', 'block'} (string list)
info.category = 'volume' (string)
info.interfaces = {'org.freedesktop.Hal.Device.Volume'} (string list)
info.parent = '/org/freedesktop/Hal/devices/storage_serial_Apple_iPod_000A2700111D84F4' (string)
info.product = 'ORANGE' (string)
info.udi = '/org/freedesktop/Hal/devices/volume_uuid_902C_8F76' (string)
linux.hotplug_type = 3 (0x3) (int)
linux.sysfs_path = '/sys/block/sdb/fakevolume' (string)
org.freedesktop.Hal.Device.Volume.method_argnames = {'mount_point fstype extra_options', 'extra_options', 'extra_options'} (string list)
org.freedesktop.Hal.Device.Volume.method_execpaths = {'hal-storage-mount', 'hal-storage-unmount', 'hal-storage-eject'} (string list)
org.freedesktop.Hal.Device.Volume.method_names = {'Mount', 'Unmount', 'Eject'} (string list)
org.freedesktop.Hal.Device.Volume.method_signatures = {'ssas', 'as', 'as'} (string list)
storage.model = '' (string)
volume.block_size = 2048 (0x800) (int)
volume.fstype = 'vfat' (string)
volume.fsusage = 'filesystem' (string)
volume.fsversion = 'FAT32' (string)
volume.ignore = false (bool)
volume.is_disc = false (bool)
volume.is_mounted = false (bool)
volume.is_mounted_read_only = false (bool)
volume.is_partition = false (bool)
volume.label = 'ORANGE' (string)
volume.linux.is_device_mapper = false (bool)
volume.mount.valid_options = {'ro', 'sync', 'dirsync', 'noatime', 'nodiratime', 'noexec', 'quiet', 'remount', 'exec', 'utf8', 'shortname=', 'codepage=', 'iocharset=', 'umask=', 'dmask=', 'fmask=', 'uid='} (string list)
volume.mount_point = '' (string)
volume.num_blocks = 1982464 (0x1e4000) (int)
volume.size = 1015021568 (0x3c800000) (uint64)
volume.unmount.valid_options = {'lazy'} (string list)
volume.uuid = '902C-8F76' (string)
udi = '/org/freedesktop/Hal/devices/usb_device_5ac_1301_000A2700111D84F4_usbraw'
info.capabilities = {'usbraw'} (string list)
info.category = 'usbraw' (string)
info.parent = '/org/freedesktop/Hal/devices/usb_device_5ac_1301_000A2700111D84F4' (string)
info.product = 'USB Raw Device Access' (string)
info.udi = '/org/freedesktop/Hal/devices/usb_device_5ac_1301_000A2700111D84F4_usbraw' (string)
linux.device_file = '/dev/bus/usb/001/022' (string)
linux.hotplug_type = 2 (0x2) (int)
linux.subsystem = 'usb_device' (string)
linux.sysfs_path = '/sys/class/usb_device/usbdev1.22' (string)
usbraw.device = '/dev/bus/usb/001/022' (string)
More information about the hal
mailing list