Age | Commit message (Collapse) | Author | Files | Lines |
|
|
|
|
|
|
|
Changed the detection of wireless network devices. The currently used
proc file is/become IIRC deprecated. I change the detection to check
for /sys/class/net/*/wireless (which was already in the code but commented
out).
I added also some code and spec information for IrDA net devices (net.irda)
and ARPHRD_IEEE80211* (wireless lan control-) devices (net.80211control).
|
|
|
|
Fixed usage of unchecked returnvalue from hal_util_strdup_valid_utf8.
The function return NULL if there is no way to return a valid or a
fixed validate string. A uncheck usage can cause this error:
GLib-CRITICAL **: g_strlcpy: assertion `src != NULL' failed
|
|
|
|
Removed not needed dir (policy) from repository.
|
|
Replaced usage of macro LIBHAL_FREE_DBUS_ERROR with dbus_error_free().
NOTE: if you use dbus_error_is_set() to check if the error is set,
you should not use LIBHAL_FREE_DBUS_ERROR to free the error.
Better use dbus_error_free() directly in this case to avoid
double call of dbus_error_is_set().
|
|
Now we also export 'exec' as a valid mount option. This way, for example,
g-v-m can now remount a removable storage device with 'exec' to e.g.
run an autolauncher. Had to put an #error into a Solaris specific code
path, should be easy to fix, sorry Artem.
|
|
Also fixup some .gitignore files and prune the TODO for finished items.
|
|
Also put some brains into addon-hid-ups so it only sets properties if
they are changed. Fix libhal_device_commit_changeset do nothing
if the changeset is empty. Should reduce load when having a USB UPS.
|
|
Added a new static library in partutil/ that serves two purposes
1. Probe for partition tables and the entries in them. This is
done without any new dependencies and is in general efficient.
Right now we understand Master Boot Record (and Extended MBR),
GUID Partitioning Tables and Apple Partition Map. The interface
is generic enough to add support for other disk labels too
should the need arise.
2. Create partition tables, add partition table entries, alter
partition table entries, delete partition table entries. This
is done using libparted to ensure maximal robustness and
correctness.
Beware that libparted is kinda silly in a few ways, it probes all
drives (even when asked to only look at one drive - the audicity!),
and we have to poke at the internals to get/set vital raw
properties. As such, we only officially support libparted 1.7.1 at
this point. If you use anything else but that, you are on your own.
We should start a dialouge with the libparted guys to make them
export official API suitable for our needs.
configure now takes a new --enable-parted and by default (for
the upcoming 0.5.8 release), this is set to "no". As such, the
upcoming 0.5.8 release will not depend on libparted.
Also we now use this infrastructure in probe-volume and probe-storage
to export the following new properties
storage.partitioning_scheme (string)
on storage devices and
volume.partition.scheme (string)
volume.partition.type (string)
volume.partition.label (string)
volume.partition.uuid (string)
volume.partition.flags (strlist)
on volumes. These new properties are also now exported through
libhal-storage.
Also moves some more code over to using LibHalChangeSet for nicer
and much more efficient handling.
|
|
Replace the current linear search for map a pnp-id to description
with a binary search by using bsearch(). This should reduce the needed
time/iterations from O(n) (in average O(N/2)) to O(log n) to find
the id (from ~400 ids in the list atm).
This patch include also some new pnp ids for TabletPC devices.
Updated hald/linux/addons/.gitignore for hald-addon-cpufreq.
|
|
hotplug_event_begin_remove_blockdev only some arguments to HAL_INFO mare were
removed, but not the corresponding format string part.
|
|
Add CloseTray() method to org.freedesktop.Hal.Device.Storage interface.
Also add Eject() to that interface.
Update HAL spec with definitions of the Storage and Volume interfaces.
|
|
Fix for fd.o bug 7278. From Bugzilla: "... HAL contains a flawed configure.in
that disables acpi-proc support when --enable-acpi-proc is passed as an
argument. --disable-acpi-proc correctly disables it, and not specifying
anything correctly enables it. This is because the current code does not
check the $enableval as it should. The acpi-acpid enable flag is similarly
broken. This causes acpi support to be disabled for distributions that
attempt to enable it via --enable-acpi-*. I've attached a patch for the
configure.in from CVS HEAD which should fix the problem, allowing
enable-acpi-* and disable-acpi-* to be correctly detected and enabled by
default."
NOTE: You maybe need to check and adapt your current configure options for
the ACPI settings. The behavior maybe differ from the current.
|
|
Added mapping to sd_mmc for a noname SDC Cardreader.
|
|
Make the ROKR e2 look like an audio player device, which it actually is.
(see fd.o bug #7879)
|
|
It adds support for some noname USB card reader ("IC1210") and for
SanDisk ImageMate II CF reader. (see fd.o bug #7749).
|
|
Added patch from fd.o bug 7961 to support Samsung YP-U2Z as USB Music
Player.
|
|
Added patch from fd.o bug 7733 to support Samsung YP-Z5 as USB Music Player.
|
|
Added slightly adopted patch for fd.o bug #7692 from Andrew Wedderburn
<andrew.wedderburn@gmail.com> to support Panasonic SV-MP31V as USB music
player via USB storage.
|
|
Added patch from fd.o bug 7621 to support Archos Gmini 400 as
USB Music Player.
|
|
In hald/linux/pmu.c (laptop_panel_refresh) we have:
hal_device_property_set_int (d, "laptop_panel.num_levels", 14);
on the (my?) incorrect assumption that we have 15 brightness states
(1-15), where 0 is power off.
We actually have 15 levels (0-14) (which is then shifted by
hal-system-power-pmu.c to the correct (1-15) levels for the hardware.
This was brought to my attention by
http://bugzilla.gnome.org/show_bug.cgi?id=350507 which I can verify on
my iBook.
|
|
Setting the brightness above range on the command line gives:
[hughsie@hughsie-laptop hal]$ dbus-send --system --print-reply
--dest=org.freedesktop.Hal /org/freedesktop/Hal/devices/acpi_lcd
org.freedesktop.Hal.Device.LaptopPanel.SetBrightness int32:8
Error org.freedesktop.Hal.Device.LaptopPanel.Invalid: Brightness has to
be between 0 and 8!
So the message is telling us to set a value between 0-8, which we really
are trying to do! The correct message would be to tell us the range was
0->7.
|
|
This adds the property alsa.device_pcm_class to alsa devices to show if
the device is e.g. a generic sound device or a modem. The new property
represents the types of snd_pcm_info_t from the alsa lib (generic, modem,
multi, digitizer).
You need a kernel patch from Takashi Iwai which should be in 2.6.19
(see http://lists.freedesktop.org/archives/hal/2006-August/006012.html)
|
|
Added support for attribute 'empty' for type 'strlist' (currently
only for type 'string') within the <match> tag of fdi-files. This
should allow such kind of constructs:
[...]
<remove key="info.callouts.add" type="strlist">blah</remove>
<match key="info.callouts.add" empty="true">
<remove key="info.callouts.add"></remove>
</match>
[...]
|
|
API is compatible, as the key battery.technology is now the sanitised
key, and battery.reporting.technology is the key that is the reported
key for the hardware, similar to what we do with the charge level.
|
|
Rather than throwing org.freedesktop.Hal.Device.CPUFreq.UnknownMethod
and .InvalidMessage, just return NOT_YET_HANDLED and D-Bus will take
care of it. Example
$ dbus-send --system --dest=org.freedesktop.Hal --print-reply \
/org/freedesktop/Hal/devices/computer \
org.freedesktop.Hal.Device.CPUFreq.SetCPUFreqPerformance \
string:322
Error org.freedesktop.DBus.Error.UnknownMethod: Method
"SetCPUFreqPerformance" with signature "s" on interface
"org.freedesktop.Hal.Device.CPUFreq" doesn't exist
$ dbus-send --system --dest=org.freedesktop.Hal --print-reply \
/org/freedesktop/Hal/devices/computer \
org.freedesktop.Hal.Device.CPUFreq.SetCPUFreqPerformanceThisMethodDoesNotExist
Error org.freedesktop.DBus.Error.UnknownMethod: Method
"SetCPUFreqPerformanceThisMethodDoesNotExist" with signature
"" on interface "org.freedesktop.Hal.Device.CPUFreq" doesn't
exist
|
|
No need to append methods to .method_names and .method_signatures, in fact
it will break introspection, e.g.
dbus-send --system --dest=org.freedesktop.Hal --print-reply \
/org/freedesktop/Hal/devices/computer \
org.freedesktop.DBus.Introspectable.Introspect
Plus we are saving 14 roundtrips to the daemon!
|
|
The following patches add CPU frequency capabilities to HAL via an addon.
This was already discussed in another thread [1].
Addon-cpufreq supports all kernel governors and also implements a
userspace controlling mechanism. Furthermore, it is supposed to abstract
all the different settings you can make for the different governors. It is
unique because it gives you a fine grained control over dynamic scaling
mechanisms via a DBus interface higher level applications like
gnome-power-manager or kpowersave can make use of.
[1] http://lists.freedesktop.org/archives/hal/2006-July/005545.html
---
Patch adding the cpufreq addon itself.
This version implements the following new things:
- specific DBus errors on failure (exceptions)
- PolicyKit integration
- add DBus method to get a list of all available governors
Signed-off-by: Holger Macht <hmacht@suse.de>
---
Patch adding the privilege descriptor for the hal-power-cpufreq privilege.
Signed-off-by: Holger Macht <hmacht@suse.de>
---
Patch adding the documentation for all CPUFreq methods on the
org.freedesktop.Hal.Device.SystemPowerManagement interface to the
Hal specification.
Signed-off-by: Holger Macht <hmacht@suse.de>
---
|
|
This caused x86-64 to freak out, apparently it works fine on x86.
|
|
Find attached a patch for hald_dbus.c that allows to list all the objects
available in the HAL daemon (the manager object and all the devices). That
completes the HAL introspection.
|
|
Removed -I$(top_srcdir)/hald from INCLUDES in hald/linux/addons/Makefile.am
to avoid include hald/linux/pmu.h instead of /usr/include/linux/pmu.h.
Thanks to Kay for the fast help to identify the problem!
|
|
Since there is no longer a hald/linux dir in the repository, we can move
hald/linux2 to hald/linux and rename the related HALD_BACKEND to linux.
|
|
Replaced left dbg() calls in probe-storage.c and probe-volume.c
with HAL_DEBUG().
|
|
This remove hald/linux2/probing/shared.h for better reuse of related
functions and to avoid compiler warnings about defined but unused
functions.
Major changes:
* removed shared.h and switched addons and prober to use with
logger.[c,h] the same functions and format as the hal daemon.
* split off powermanagement related code from util.c/h to a new file
util_pm.[c,h].
* added a new file util_helper.[c,h] to collect functions
drop_privileges() and hal_set_proc_title*().
* removed unused function strdup_valid_utf8() from probe-storage.c and
updated hal_util_strdup_valid_utf8() to do the same as
strdup_valid_utf8() before.
* fixed compiler warning in ids.c (use now *_ids_free() functions
instead of call free() directly without checks).
* fixed compiler warning in addon-macbookpro-backlight.c (added '#if 0'
around unused function)
|
|
This corrects the location of the hal scripts directory passed by the
preprocessor in the hald-runner and tools directories.
|
|
We should convert the mAh reading (battery.reporting.rate) into mWh
(battery.charge_level.rate) by multiplying it by the voltage (in Volts),
but we are multiplying it by the voltage in mV, and so the rate information
is a factor of 3 too large. This *really* breaks calculating the time
for multibattery laptops.
|
|
|
|
Introduce volume.partition.msdos_part_table_start, .msdos_part_table_size,
and storage.removable.media_size.
|
|
Changed update property battery.remaining_time on APM to avoid change the
value every 2 seconds. APM calculate with each poll a new value for
remaining battery time, which could result in high dbus load if a application
listen for the event and check do something over the bus. On the other side
the remaining time from the APM interface is not trustworthy on the most
machines if you poll to often, increase the poll intervall (and emit a new
value to HAL) should smooth the time curve and reduce back and forth jumping
values.
Now the value is updated ever 30 seconds, this should preduce the needless
events.
|
|
Added missing scsi.type mappings which are e.g. needed to identify
scsi printer/scanner or media changer/raid devices. Added also the
property information about scsi.type to the spec.
Mapping of kernel types is:
TYPE_DISK, TYPE_MOD, TYPE_RBC --> disk
TYPE_TAPE --> tape
TYPE_PROCESSOR --> processor
TYPE_WORM, TYPE_ROM --> cdrom
TYPE_SCANNER --> scanner
TYPE_MEDIUM_CHANGER --> medium_changer
TYPE_COMM --> comm
TYPE_RAID --> raid
|
|
This cleanup the includes in the files under hald/linux/ . I removed not
needed and multiple included headers (-120 includes) and sorted/arranged
the remaining includes alphabetically.
|
|
prevent leaks. Patch by Mike Hommey
|
|
Replaced in blockdev.c is_mounted_by_hald() with hal_util_is_mounted_by_hald
and included <sys/file.h> in utils.c for flock().
NOTE: Please run make or make dist before commit.
|
|
Moved linux2/blockdev.c:is_mounted_by_hald() to
util.c:hal_util_is_mounted_by_hald() so all backends can use it.
Fixed some compilation warnings when compiling with non-GNU
compiler and libc.
|
|
|
|
Replaced usage of macro LIBHAL_FREE_DBUS_ERROR with dbus_error_free().
NOTE: if you use dbus_error_is_set() to check if the error is set,
you should not use LIBHAL_FREE_DBUS_ERROR to free the error.
Better use dbus_error_free() directly in this case to avoid
double call of dbus_error_is_set().
|