global cleanups and hal PKGBUILD minor fixes

pull/3/head
Pawel "l0ner" Soltys 13 years ago
parent 6ba49b7883
commit 5764ac43c0

@ -5,7 +5,7 @@
pkgname=hal
pkgver=0.5.14
pkgrel=6
pkgrel=7
pkgdesc="Hardware Abstraction Layer"
arch=(i686 x86_64)
license=('GPL' 'custom')

@ -1,231 +0,0 @@
From dcb2829b8eff61463b0869614ddb07b1c86cecaa Mon Sep 17 00:00:00 2001
From: Sebastian Andrzej Siewior <sebastian@breakpoint.cc>
Date: Wed, 30 Dec 2009 11:42:52 +0000
Subject: linux/probe-input: don't use error prio init
it may happen in the out: case that LIBHAL_FREE_DBUS_ERROR (&error) is
called before the error structure is initialized via
dbus_error_init (&error). This could lead to a segfault during startup
as seen in dmesg:
|Intel AES-NI instructions are not detected.
|padlock: VIA PadLock not detected.
|hald-probe-inpu[1793]: segfault at 2 ip 00007f656fb68969 sp 00007fff39eeb950 error 4 in libc-2.10.2.so[7f656faf3000+14a000]
|hald-probe-inpu[1796]: segfault at 2 ip 00007fa2c3293969 sp 00007fffd92a5dd0 error 4 in libc-2.10.2.so[7fa2c321e000+14a000]
|hald-probe-inpu[1797]: segfault at 2 ip 00007f1d08ba2969 sp 00007fff34244e30 error 4 in libc-2.10.2.so[7f1d08b2d000+14a000]
|hald-probe-inpu[1799]: segfault at 2 ip 00007f35c0e3d969 sp 00007fffe5ec7ee0 error 4 in libc-2.10.2.so[7f35c0dc8000+14a000]
|hald-probe-inpu[1800]: segfault at 2 ip 00007f931c556969 sp 00007fffe1825b60 error 4 in libc-2.10.2.so[7f931c4e1000+14a000]
|hald-probe-inpu[1801]: segfault at 2 ip 00007f5156d9a969 sp 00007fff4e620af0 error 4 in libc-2.10.2.so[7f5156d25000+14a000]
|RPC: Registered udp transport module.
|RPC: Registered tcp transport module.
What I run into seems to be reported as Debian #562068 [0]. This patch
makes the segfault go away on my machine.
[0] http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=562068
Signed-off-by: Sebastian Andrzej Siewior <sebastian@breakpoint.cc>
Signed-off-by: Martin Pitt <martin.pitt@ubuntu.com>
---
diff --git a/hald/linux/probing/probe-input.c b/hald/linux/probing/probe-input.c
index 94e9929..cad47d3 100644
--- a/hald/linux/probing/probe-input.c
+++ b/hald/linux/probing/probe-input.c
@@ -70,6 +70,7 @@ main (int argc, char *argv[])
fd = -1;
setup_logger ();
+ dbus_error_init (&error);
button_type = getenv ("HAL_PROP_BUTTON_TYPE");
if (button_type == NULL)
@@ -96,7 +97,6 @@ main (int argc, char *argv[])
if (udi == NULL)
goto out;
- dbus_error_init (&error);
if ((ctx = libhal_ctx_init_direct (&error)) == NULL)
goto out;
--
cgit v0.8.3-6-g21f6
From baa61a879985d63f549854518ef14efd40e62e8c Mon Sep 17 00:00:00 2001
From: Peter Jones <pjones@redhat.com>
Date: Wed, 24 Feb 2010 16:19:28 +0000
Subject: Make sure dbus_error_init() is called before LIBHAL_FREE_DBUS_ERROR()
If dbus_error_init() is not called before LIBHAL_FREE_DBUS_ERROR() is
called on that error, then it is uninitialized and may segfault. This
means that dbus_error_init() must be called before any "goto out" if
"out:" calls LIBHAL_FREE_DBUS_ERROR().
Signed-off-by: Martin Pitt <martin.pitt@ubuntu.com>
---
diff --git a/hald/linux/probing/probe-hiddev.c b/hald/linux/probing/probe-hiddev.c
index 45d2084..bffc040 100644
--- a/hald/linux/probing/probe-hiddev.c
+++ b/hald/linux/probing/probe-hiddev.c
@@ -57,11 +57,12 @@ main (int argc, char *argv[])
/* assume failure */
ret = 1;
+ dbus_error_init (&error);
+
udi = getenv ("UDI");
if (udi == NULL)
goto out;
- dbus_error_init (&error);
if ((ctx = libhal_ctx_init_direct (&error)) == NULL)
goto out;
diff --git a/hald/linux/probing/probe-ieee1394-unit.c b/hald/linux/probing/probe-ieee1394-unit.c
index 70b0f86..aaa92e2 100644
--- a/hald/linux/probing/probe-ieee1394-unit.c
+++ b/hald/linux/probing/probe-ieee1394-unit.c
@@ -388,6 +388,8 @@ int main (int argc, char *argv[])
setup_logger ();
+ dbus_error_init (&error);
+
udi = getenv ("UDI");
if (udi == NULL)
goto out;
@@ -396,7 +398,6 @@ int main (int argc, char *argv[])
if (ieee1394_udi == NULL)
goto out;
- dbus_error_init (&error);
if ((ctx = libhal_ctx_init_direct (&error)) == NULL)
goto out;
diff --git a/hald/linux/probing/probe-net-bluetooth.c b/hald/linux/probing/probe-net-bluetooth.c
index 0b1b912..e911eea 100644
--- a/hald/linux/probing/probe-net-bluetooth.c
+++ b/hald/linux/probing/probe-net-bluetooth.c
@@ -141,6 +141,8 @@ main (int argc, char *argv[])
DBusMessage *reply = NULL;
DBusError error;
+ dbus_error_init (&error);
+
udi = getenv ("UDI");
if (udi == NULL)
goto out;
@@ -151,8 +153,6 @@ main (int argc, char *argv[])
HAL_INFO (("Investigating '%s'", iface));
- dbus_error_init (&error);
-
if ((conn = dbus_bus_get (DBUS_BUS_SYSTEM, &error)) == NULL)
goto out;
diff --git a/hald/linux/probing/probe-printer.c b/hald/linux/probing/probe-printer.c
index 91ed7bc..7c6d1c6 100644
--- a/hald/linux/probing/probe-printer.c
+++ b/hald/linux/probing/probe-printer.c
@@ -66,6 +66,8 @@ main (int argc, char *argv[])
ret = 1;
setup_logger ();
+
+ dbus_error_init (&error);
udi = getenv ("UDI");
if (udi == NULL) {
@@ -73,7 +75,6 @@ main (int argc, char *argv[])
goto out;
}
- dbus_error_init (&error);
if ((ctx = libhal_ctx_init_direct (&error)) == NULL) {
HAL_ERROR (("ctx init failed"));
goto out;
diff --git a/hald/linux/probing/probe-smbios.c b/hald/linux/probing/probe-smbios.c
index 0bc9689..15c0d4f 100644
--- a/hald/linux/probing/probe-smbios.c
+++ b/hald/linux/probing/probe-smbios.c
@@ -129,6 +129,8 @@ main (int argc, char *argv[])
ret = 1;
setup_logger ();
+
+ dbus_error_init (&error);
udi = getenv ("UDI");
if (udi == NULL) {
@@ -136,7 +138,6 @@ main (int argc, char *argv[])
goto out;
}
- dbus_error_init (&error);
if ((ctx = libhal_ctx_init_direct (&error)) == NULL) {
HAL_ERROR (("ctx init failed"));
goto out;
diff --git a/hald/linux/probing/probe-storage.c b/hald/linux/probing/probe-storage.c
index 824a82e..dd524ca 100644
--- a/hald/linux/probing/probe-storage.c
+++ b/hald/linux/probing/probe-storage.c
@@ -109,6 +109,8 @@ main (int argc, char *argv[])
/* assume failure */
ret = 1;
+ dbus_error_init (&error);
+
if ((udi = getenv ("UDI")) == NULL)
goto out;
if ((device_file = getenv ("HAL_PROP_BLOCK_DEVICE")) == NULL)
@@ -127,7 +129,6 @@ main (int argc, char *argv[])
else
only_check_for_fs = FALSE;
- dbus_error_init (&error);
if ((ctx = libhal_ctx_init_direct (&error)) == NULL)
goto out;
diff --git a/hald/linux/probing/probe-video4linux.c b/hald/linux/probing/probe-video4linux.c
index cf913c0..7bc13e8 100644
--- a/hald/linux/probing/probe-video4linux.c
+++ b/hald/linux/probing/probe-video4linux.c
@@ -58,6 +58,8 @@ main (int argc, char *argv[])
setup_logger ();
+ dbus_error_init (&error);
+
device_file = getenv ("HAL_PROP_VIDEO4LINUX_DEVICE");
if (device_file == NULL)
goto out;
@@ -66,7 +68,6 @@ main (int argc, char *argv[])
if (udi == NULL)
goto out;
- dbus_error_init (&error);
ctx = libhal_ctx_init_direct (&error);
if (ctx == NULL)
goto out;
diff --git a/hald/linux/probing/probe-volume.c b/hald/linux/probing/probe-volume.c
index 0de1b91..7268fff 100644
--- a/hald/linux/probing/probe-volume.c
+++ b/hald/linux/probing/probe-volume.c
@@ -318,6 +318,8 @@ main (int argc, char *argv[])
/* assume failure */
ret = 1;
+ dbus_error_init (&error);
+
if ((udi = getenv ("UDI")) == NULL)
goto out;
if ((device_file = getenv ("HAL_PROP_BLOCK_DEVICE")) == NULL)
@@ -346,7 +348,6 @@ main (int argc, char *argv[])
fsusage = getenv ("HAL_PROP_VOLUME_FSUSAGE");
- dbus_error_init (&error);
if ((ctx = libhal_ctx_init_direct (&error)) == NULL)
goto out;
--
cgit v0.8.3-6-g21f6

@ -1,66 +0,0 @@
From fce91df8ba7f305c624baf1f06961c040b088ecc Mon Sep 17 00:00:00 2001
From: Joe Marcus Clarke <marcus@FreeBSD.org>
Date: Tue, 08 Dec 2009 00:05:27 +0000
Subject: Fix libusb detection on Linux
Adjust the FreeBSD libusb20 code so that it does not interfere with the
Linux libusb detection.
Reported by: Robby Workman <rw@rlworkman.net>
---
diff --git a/configure.in b/configure.in
index a8fda51..8363595 100644
--- a/configure.in
+++ b/configure.in
@@ -479,9 +479,6 @@ if test "x$with_libpci" != xno ; then
fi
AM_CONDITIONAL([HAVE_LIBPCI], [test "x$USE_LIBPCI" = "xyes"])
-USE_LIBUSB20=no
-USE_LIBUSB=no
-LIBUSB20_LIBS=""
AC_ARG_WITH([backend],
AS_HELP_STRING([--with-backend=<name>],
[backend to use (linux/solaris/freebsd/dummy)]),
@@ -510,21 +507,25 @@ AM_CONDITIONAL(HALD_COMPILE_FREEBSD, [test x$HALD_BACKEND = xfreebsd], [Compilin
AM_CONDITIONAL(HALD_COMPILE_SOLARIS, [test x$HALD_BACKEND = xsolaris], [Compiling for Solaris])
AC_SUBST(HALD_BACKEND)
if test "x$HALD_BACKEND" = "xfreebsd"; then
- AC_CHECK_LIB([usb20], [libusb20_dev_get_info], [USE_LIBUSB20=yes], [USE_LIBUSB20=no])
-fi
-if test "x$USE_LIBUSB20" = "xno"; then
- AC_CHECK_LIB([usb], [libusb20_dev_get_info], [USE_LIBUSB=yes], [USE_LIBUSB=no])
-fi
-AM_CONDITIONAL([HAVE_LIBUSB20],[test "x$USE_LIBUSB20" = "xyes"])
-AM_CONDITIONAL([HAVE_LIBUSB20],[test "x$USE_LIBUSB" = "xyes"])
-if test "x$USE_LIBUSB20" = "xyes"; then
- AC_DEFINE(HAVE_LIBUSB20, 1, [Set if we need libusb20])
- LIBUSB20_LIBS="-lusb20"
-elif test "x$USE_LIBUSB" = "xyes"; then
- AC_DEFINE(HAVE_LIBUSB20, 1, [Set if we need libsub20])
- LIBUSB20_LIBS="-lusb"
+ USE_BSDLIBUSB20=no
+ USE_BSDLIBUSB=no
+ LIBUSB20_LIBS=""
+ AC_CHECK_LIB([usb20], [libusb20_dev_get_info], [USE_BSDLIBUSB20=yes], [USE_BSDLIBUSB20=no])
+ if test "x$USE_BSDLIBUSB20" = "xno"; then
+ AC_CHECK_LIB([usb], [libusb20_dev_get_info], [USE_BSDLIBUSB=yes], [USE_BSDLIBUSB=no])
+ fi
+ AM_CONDITIONAL([HAVE_LIBUSB20],[test "x$USE_BSDLIBUSB20" = "xyes" -o "x$USE_BSDLIBUSB" = "xyes"])
+ if test "x$USE_BSDLIBUSB20" = "xyes"; then
+ AC_DEFINE(HAVE_LIBUSB20, 1, [Set if we need libusb20])
+ LIBUSB20_LIBS="-lusb20"
+ elif test "x$USE_BSDLIBUSB" = "xyes"; then
+ AC_DEFINE(HAVE_LIBUSB20, 1, [Set if we need libsub20])
+ LIBUSB20_LIBS="-lusb"
+ fi
+ AC_SUBST(LIBUSB20_LIBS)
+else
+ AM_CONDITIONAL([HAVE_LIBUSB20], [false])
fi
-AC_SUBST(LIBUSB20_LIBS)
dnl DBUS API is subject to changes
AC_DEFINE_UNQUOTED(DBUS_API_SUBJECT_TO_CHANGE, [], [DBUS API is subject to change])
--
cgit v0.8.3-6-g21f6

@ -1,14 +0,0 @@
--- hal-0.5.9/fdi/policy/10osvendor/20-storage-methods.fdi.orig 2007-05-01 21:39:31.000000000 +0000
+++ hal-0.5.9/fdi/policy/10osvendor/20-storage-methods.fdi 2007-05-01 21:51:14.000000000 +0000
@@ -100,6 +100,11 @@
</match>
</match>
+ <!-- Hide partitions marked as Compaq Diagnostics -->
+ <match key="volume.partition.type" string="0x12">
+ <merge key="volume.ignore" type="bool">true</merge>
+ </match>
+
<!-- EFI firmware partitions -->
<match key="volume.fstype" string="vfat">
<match key="volume.label" string="EFI">

@ -1,30 +0,0 @@
From e1f85fe0cdfa7e4d4ce7a811d0b0c90bf38fba0c Mon Sep 17 00:00:00 2001
From: Peter Hutterer <peter.hutterer@who-t.net>
Date: Thu, 25 Jun 2009 09:47:27 +1000
Subject: [PATCH] Blacklist HDAPS accelerometer device from being picked up in X.
This device posts accelerometer data through ABS_X/ABS_Y, making X unusable
if it's controlling the pointer.
---
fdi/policy/10osvendor/10-x11-input.fdi | 6 ++++++
1 files changed, 6 insertions(+), 0 deletions(-)
diff --git a/fdi/policy/10osvendor/10-x11-input.fdi b/fdi/policy/10osvendor/10-x11-input.fdi
index a342421..89ba672 100644
--- a/fdi/policy/10osvendor/10-x11-input.fdi
+++ b/fdi/policy/10osvendor/10-x11-input.fdi
@@ -38,5 +38,11 @@
<merge key="input.x11_driver" type="string">evdev</merge>
</match>
</match>
+
+ <!-- http://bugs.freedesktop.org/show_bug.cgi?id=22442
+ Posts accel data through ABS_X/ABS_Y, makes X unusable -->
+ <match key="info.product" contains="ThinkPad HDAPS accelerometer data">
+ <remove key="input.x11_driver" />
+ </match>
</device>
</deviceinfo>
--
1.6.3.rc1.2.g0164.dirty

@ -1,36 +0,0 @@
From 7618498eec840cb26474dc47821e083957772706 Mon Sep 17 00:00:00 2001
From: Peter Hutterer <peter.hutterer@who-t.net>
Date: Fri, 20 Mar 2009 14:37:24 +1000
Subject: [PATCH] Add x11_driver for American Megatrends KVM.
This device exposes only ABS_X, ABS_Y and buttons. It gets input.joystick
assigned but not input.mouse, hence the default evdev mapping doesn't pick up
on it.
Red Hat Bug 484776 <https://bugzilla.redhat.com/show_bug.cgi?id=484776>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
---
fdi/policy/10osvendor/10-x11-input.fdi | 6 ++++++
1 files changed, 6 insertions(+), 0 deletions(-)
diff --git a/fdi/policy/10osvendor/10-x11-input.fdi b/fdi/policy/10osvendor/10-x11-input.fdi
index 769f75b..eb9767e 100644
--- a/fdi/policy/10osvendor/10-x11-input.fdi
+++ b/fdi/policy/10osvendor/10-x11-input.fdi
@@ -2,6 +2,12 @@
<deviceinfo version="0.2">
<device>
+ <!-- This KVMS has abs x/y and buttons. It only has inputInfo.joystick
+ set by hal and doesn't get picked up by default -->
+ <match key="input.product" contains="American Megatrends Inc. Virtual Keyboard and Mouse">
+ <merge key="input.x11_driver" type="string">evdev</merge>
+ </match>
+
<!-- KVM emulates a USB graphics tablet which works in absolute coordinate mode -->
<match key="input.product" contains="QEMU USB Tablet">
<merge key="input.x11_driver" type="string">evdev</merge>
--
1.6.0.6

@ -1,43 +0,0 @@
From 6f16321da13f6a7cbd9c424ddba2e727e434fa25 Mon Sep 17 00:00:00 2001
From: Milan Broz <mbroz@redhat.com>
Date: Tue, 13 Jul 2010 14:07:32 +0000
Subject: HAL: Ignore internal DM devices with new DM udev rules
With new device-mapper udev rules are /dev/mapper/* symlinks
to basic device name /dev/dm-X.
(Change requested by udev upstream.)
This change breaks temporary-cryptsetup workaround inside hal.
With new dm-udev rules (uncluded since device-mapper 1.02.39)
there is DM_UDEV_DISABLE_OTHER_RULES_FLAG variable
which controls that scan should be ignored for this device
(it is set for all internal devices, including temporary cryptsetup,
internal parts of lvm devices etc.)
Ignore device if this flag is set.
See bugs
https://bugzilla.redhat.com/show_bug.cgi?id=613909
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=586286
Signed-off-by: Milan Broz <mbroz@redhat.com>
---
diff --git a/hald/linux/osspec.c b/hald/linux/osspec.c
index a8233fd..6d616bc 100644
--- a/hald/linux/osspec.c
+++ b/hald/linux/osspec.c
@@ -215,6 +215,11 @@ hald_udev_data (GIOChannel *source, GIOCondition condition, gpointer user_data)
g_free (str);
}
g_free (dstr);
+ } else if (strncmp(key, "DM_UDEV_DISABLE_OTHER_RULES_FLAG=", 33) == 0) {
+ if (strtoul(&key[33], NULL, 10) == 1) {
+ HAL_INFO (("ignoring device requested by DM udev rules"));
+ goto invalid;
+ }
}
}
--
cgit v0.8.3-6-g21f6

@ -1,201 +0,0 @@
diff -upr hal-0.5.12/tools/linux/hal-system-killswitch-get-power-linux hal-0.5.12.new/tools/linux/hal-system-killswitch-get-power-linux
--- hal-0.5.12/tools/linux/hal-system-killswitch-get-power-linux 2008-08-22 07:34:47.000000000 +0100
+++ hal-0.5.12.new/tools/linux/hal-system-killswitch-get-power-linux 2009-03-03 10:45:20.000000000 +0000
@@ -8,11 +8,6 @@
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
-DELL_WCTL=/usr/bin/dellWirelessCtl
-if [ -x "/usr/sbin/dellWirelessCtl" ]; then
- DELL_WCTL=/usr/sbin/dellWirelessCtl
-fi
-
if [ "$HAL_PROP_KILLSWITCH_TYPE" = "bluetooth" ]; then
if [ "$HAL_PROP_KILLSWITCH_ACCESS_METHOD" = "sonypic" ]; then
value="`hal-system-sonypic getbluetooth`"
@@ -22,25 +17,6 @@ if [ "$HAL_PROP_KILLSWITCH_TYPE" = "blue
exit 1
fi
exit ${value}
- elif [ "$HAL_PROP_KILLSWITCH_ACCESS_METHOD" = "dell" ]; then
- if [ -x "$DELL_WCTL" ]; then
- # TODO: write our own binary that links with libsmbios?
- $DELL_WCTL --st_bt
- value=$?
- if [ "$value" = "0" ]; then
- exit 1
- elif [ "$value" = "1" ]; then
- exit 0
- else
- echo "org.freedesktop.Hal.Device.KillSwitch.NotSupported" >&2
- echo "dellWirelessCtl returned $value" >&2
- exit 1
- fi
- else
- echo "org.freedesktop.Hal.Device.KillSwitch.NotSupported" >&2
- echo "dellWirelessCtl ($DELL_WCTL) not available or executable" >&2
- exit 1
- fi
elif [ "$HAL_PROP_KILLSWITCH_ACCESS_METHOD" = thinkpad -a -r "$HAL_PROP_LINUX_SYSFS_PATH" ]; then
read value < $HAL_PROP_LINUX_SYSFS_PATH 2> /dev/null
if [ $? -eq 0 ]; then
@@ -55,56 +31,6 @@ if [ "$HAL_PROP_KILLSWITCH_TYPE" = "blue
echo "Access type not supported" >&2
exit 1
fi
-elif [ "$HAL_PROP_KILLSWITCH_TYPE" = "wlan" ]; then
- if [ "$HAL_PROP_KILLSWITCH_ACCESS_METHOD" = "dell" ]; then
- if [ -x "$DELL_WCTL" ]; then
- # TODO: write our own binary that links with libsmbios?
- $DELL_WCTL --st_wlan
- value=$?
- if [ "$value" = "0" ]; then
- exit 1
- elif [ "$value" = "1" ]; then
- exit 0
- else
- echo "org.freedesktop.Hal.Device.KillSwitch.NotSupported" >&2
- echo "dellWirelessCtl returned $value" >&2
- exit 1
- fi
- else
- echo "org.freedesktop.Hal.Device.KillSwitch.NotSupported" >&2
- echo "dellWirelessCtl ($DELL_WCTL) not available or executable" >&2
- exit 1
- fi
- else
- echo "org.freedesktop.Hal.Device.KillSwitch.NotSupported" >&2
- echo "Access type not supported" >&2
- exit 1
- fi
-elif [ "$HAL_PROP_KILLSWITCH_TYPE" = "wwan" ]; then
- if [ "$HAL_PROP_KILLSWITCH_ACCESS_METHOD" = "dell" ]; then
- if [ -x "$DELL_WCTL" ]; then
- # TODO: write our own binary that links with libsmbios?
- $DELL_WCTL --st_wwan
- value=$?
- if [ "$value" = "0" ]; then
- exit 1
- elif [ "$value" = "1" ]; then
- exit 0
- else
- echo "org.freedesktop.Hal.Device.KillSwitch.NotSupported" >&2
- echo "dellWirelessCtl returned $value" >&2
- exit 1
- fi
- else
- echo "org.freedesktop.Hal.Device.KillSwitch.NotSupported" >&2
- echo "dellWirelessCtl ($DELL_WCTL) not available or executable" >&2
- exit 1
- fi
- else
- echo "org.freedesktop.Hal.Device.KillSwitch.NotSupported" >&2
- echo "Access type not supported" >&2
- exit 1
- fi
else
echo "org.freedesktop.Hal.Device.KillSwitch.NotSupported" >&2
echo "Killswitch type not supported" >&2
diff -upr hal-0.5.12/tools/linux/hal-system-killswitch-set-power-linux hal-0.5.12.new/tools/linux/hal-system-killswitch-set-power-linux
--- hal-0.5.12/tools/linux/hal-system-killswitch-set-power-linux 2008-10-24 09:45:54.000000000 +0100
+++ hal-0.5.12.new/tools/linux/hal-system-killswitch-set-power-linux 2009-03-03 10:44:49.000000000 +0000
@@ -8,11 +8,6 @@
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
-DELL_WCTL=/usr/bin/dellWirelessCtl
-if [ -x "/usr/sbin/dellWirelessCtl" ]; then
- DELL_WCTL=/usr/sbin/dellWirelessCtl
-fi
-
if [ "$HAL_PROP_KILLSWITCH_TYPE" = "bluetooth" ]; then
if [ "$HAL_PROP_KILLSWITCH_ACCESS_METHOD" = "sonypic" ]; then
hal-system-sonypic setbluetooth $value
@@ -23,26 +18,6 @@ if [ "$HAL_PROP_KILLSWITCH_TYPE" = "blue
exit 1
fi
exit 0
- elif [ "$HAL_PROP_KILLSWITCH_ACCESS_METHOD" = "dell" ]; then
- if [ -x "$DELL_WCTL" ]; then
- # TODO: write our own binary that links with libsmbios?
- if [ "$value" = "true" ]; then
- $DELL_WCTL --bt 1
- ret=$?
- else
- $DELL_WCTL --bt 0
- ret=$?
- fi
- if [ "$ret" != "0" ]; then
- echo "org.freedesktop.Hal.Device.KillSwitch.NotSupported" >&2
- echo "dellWirelessCtl returned $ret" >&2
- exit 1
- fi
- else
- echo "org.freedesktop.Hal.Device.KillSwitch.NotSupported" >&2
- echo "dellWirelessCtl ($DELL_WCTL) not available or executable" >&2
- exit 1
- fi
elif [ "$HAL_PROP_KILLSWITCH_ACCESS_METHOD" = thinkpad -a -w "$HAL_PROP_LINUX_SYSFS_PATH" ]; then
if [ "$value" = "true" ]; then
bit=1;
@@ -61,60 +36,6 @@ if [ "$HAL_PROP_KILLSWITCH_TYPE" = "blue
echo "Access type not supported" >&2
exit 1
fi
-elif [ "$HAL_PROP_KILLSWITCH_TYPE" = "wlan" ]; then
- if [ "$HAL_PROP_KILLSWITCH_ACCESS_METHOD" = "dell" ]; then
- if [ -x "$DELL_WCTL" ]; then
- # As a side effect we disable the physical kill switch
- # TODO: write our own binary that links with libsmbios?
- if [ "$value" = "true" ]; then
- $DELL_WCTL --sw_wlan 0 --wlan 1
- ret=$?
- else
- $DELL_WCTL --sw_wlan 0 --wlan 0
- ret=$?
- fi
- if [ "$ret" != "0" ]; then
- echo "org.freedesktop.Hal.Device.KillSwitch.NotSupported" >&2
- echo "dellWirelessCtl returned $ret" >&2
- exit 1
- fi
- else
- echo "org.freedesktop.Hal.Device.KillSwitch.NotSupported" >&2
- echo "dellWirelessCtl ($DELL_WCTL) not available or executable" >&2
- exit 1
- fi
- else
- echo "org.freedesktop.Hal.Device.KillSwitch.NotSupported" >&2
- echo "Access type not supported" >&2
- exit 1
- fi
-elif [ "$HAL_PROP_KILLSWITCH_TYPE" = "wwan" ]; then
- if [ "$HAL_PROP_KILLSWITCH_ACCESS_METHOD" = "dell" ]; then
- if [ -x "$DELL_WCTL" ]; then
- # As a side effect we disable the physical kill switch
- # TODO: write our own binary that links with libsmbios?
- if [ "$value" = "true" ]; then
- $DELL_WCTL --sw_wwan 0 --wwan 1
- ret=$?
- else
- $DELL_WCTL --sw_wwan 0 --wwan 0
- ret=$?
- fi
- if [ "$ret" != "0" ]; then
- echo "org.freedesktop.Hal.Device.KillSwitch.NotSupported" >&2
- echo "dellWirelessCtl returned $ret" >&2
- exit 1
- fi
- else
- echo "org.freedesktop.Hal.Device.KillSwitch.NotSupported" >&2
- echo "dellWirelessCtl ($DELL_WCTL) not available or executable" >&2
- exit 1
- fi
- else
- echo "org.freedesktop.Hal.Device.KillSwitch.NotSupported" >&2
- echo "Access type not supported" >&2
- exit 1
- fi
else
echo "org.freedesktop.Hal.Device.KillSwitch.NotSupported" >&2
echo "Killswitch type not supported" >&2

@ -1,45 +0,0 @@
diff -up hal-0.5.13/hal.conf.in.drop-polkit hal-0.5.13/hal.conf.in
--- hal-0.5.13/hal.conf.in.drop-polkit 2009-02-04 17:07:23.000000000 -0500
+++ hal-0.5.13/hal.conf.in 2009-07-29 23:15:16.866766074 -0400
@@ -25,7 +25,41 @@
send_interface="org.freedesktop.Hal.Device"/>
<allow send_destination="org.freedesktop.Hal"
send_interface="org.freedesktop.Hal.Manager"/>
+ </policy>
+
+ <!-- Only allow users at the local console to manipulate devices -->
+ <policy at_console="true">
+ <allow send_destination="org.freedesktop.Hal"
+ send_interface="org.freedesktop.Hal.Device.CPUFreq"/>
+ <allow send_destination="org.freedesktop.Hal"
+ send_interface="org.freedesktop.Hal.Device.DockStation"/>
+ <allow send_destination="org.freedesktop.Hal"
+ send_interface="org.freedesktop.Hal.Device.KillSwitch"/>
+ <allow send_destination="org.freedesktop.Hal"
+ send_interface="org.freedesktop.Hal.Device.KeyboardBacklight"/>
+ <allow send_destination="org.freedesktop.Hal"
+ send_interface="org.freedesktop.Hal.Device.LaptopPanel"/>
+ <allow send_destination="org.freedesktop.Hal"
+ send_interface="org.freedesktop.Hal.Device.Leds"/>
+ <allow send_destination="org.freedesktop.Hal"
+ send_interface="org.freedesktop.Hal.Device.LightSensor"/>
+ <allow send_destination="org.freedesktop.Hal"
+ send_interface="org.freedesktop.Hal.Device.Storage"/>
+ <allow send_destination="org.freedesktop.Hal"
+ send_interface="org.freedesktop.Hal.Device.Storage.Removable"/>
+ <allow send_destination="org.freedesktop.Hal"
+ send_interface="org.freedesktop.Hal.Device.SystemPowerManagement"/>
+ <allow send_destination="org.freedesktop.Hal"
+ send_interface="org.freedesktop.Hal.Device.Volume"/>
+ <allow send_destination="org.freedesktop.Hal"
+ send_interface="org.freedesktop.Hal.Device.Volume.Crypto"/>
+ <allow send_destination="org.freedesktop.Hal"
+ send_interface="org.freedesktop.Hal.Device.WakeOnLan"/>
+
+ </policy>
+ <!-- well,...and root too -->
+ <policy user="root">
<allow send_destination="org.freedesktop.Hal"
send_interface="org.freedesktop.Hal.Device.CPUFreq"/>
<allow send_destination="org.freedesktop.Hal"

@ -1,39 +0,0 @@
From e48f59d2b9bcb43ea8a7b8c884dcb73c8f65b170 Mon Sep 17 00:00:00 2001
From: Peter Hutterer <peter.hutterer@who-t.net>
Date: Mon, 19 Oct 2009 14:27:20 +1000
Subject: [PATCH] Un-ignore absolute axes for the Xen Virtual Pointer.
The evdev-internal axis type picking fails for the Xen Virtual Pointer as it
exposes both relative and absolute axes. Evdev picks the relative axes by
default, leading to a immovable pointer if the Xen backend only sends
absolute coordinates.
Explicitly tell evdev to not ignore the absolute axes.
https://bugzilla.redhat.com/show_bug.cgi?id=523914
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
---
fdi/policy/10osvendor/10-x11-input.fdi | 7 +++++++
1 files changed, 7 insertions(+), 0 deletions(-)
diff --git a/fdi/policy/10osvendor/10-x11-input.fdi b/fdi/policy/10osvendor/10-x11-input.fdi
index 89ba672..752c4ab 100644
--- a/fdi/policy/10osvendor/10-x11-input.fdi
+++ b/fdi/policy/10osvendor/10-x11-input.fdi
@@ -44,5 +44,12 @@
<match key="info.product" contains="ThinkPad HDAPS accelerometer data">
<remove key="input.x11_driver" />
</match>
+
+ <!-- https://bugzilla.redhat.com/show_bug.cgi?id=523914
+ Mouse does not move in PV Xen guest -->
+ <match key="info.product" contains="Xen Virtual Pointer">
+ <merge key="input.x11_options.IgnoreAbsoluteAxes" type="string">false</merge>
+ <merge key="input.x11_options.IgnoreRelativeAxes" type="string">false</merge>
+ </match>
</device>
</deviceinfo>
--
1.6.2.5

@ -1,101 +0,0 @@
From 6dccf8e3ad181e8f56b1d2a994ec50a1953a1c2d Mon Sep 17 00:00:00 2001
From: Michael Witten <mfwitten@gmail.com>
Date: Wed, 06 Jan 2010 00:53:17 +0000
Subject: Policy: handle `input.touchpad' explicitly
This commit essentially duplicates the policy for:
<match key="info.capabilities" contains="input.mouse">
and then changes `input.mouse' to `input.touchpad'. This
is necessary because in Linus Torvalds's Linux repo:
git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git
the following commit:
commit 7105d2ea73e1391b681d0e1212c42f561c64d429
Author: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Date: Fri Dec 11 23:54:54 2009 -0800
Input: ALPS - do not set REL_X/REL_Y capabilities on the touchpad
Relative events are only reported via secondary device therefore device
associated with the touchpad should not advertise these capabilities.
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
made these few changes:
diff --git a/drivers/input/mouse/alps.c b/drivers/input/mouse/alps.c
index a3f492a..b03e7e0 100644
/--- a/drivers/input/mouse/alps.c
/+++ b/drivers/input/mouse/alps.c
/@@ -487,6 +487,17 @@ int alps_init(struct psmouse *psmouse)
if (alps_hw_init(psmouse))
goto init_fail;
+ /*
+ * Undo part of setup done for us by psmouse core since touchpad
+ * is not a relative device.
+ */
+ __clear_bit(EV_REL, dev1->evbit);
+ __clear_bit(REL_X, dev1->relbit);
+ __clear_bit(REL_Y, dev1->relbit);
+
+ /*
+ * Now set up our capabilities.
+ */
dev1->evbit[BIT_WORD(EV_KEY)] |= BIT_MASK(EV_KEY);
dev1->keybit[BIT_WORD(BTN_TOUCH)] |= BIT_MASK(BTN_TOUCH);
dev1->keybit[BIT_WORD(BTN_TOOL_FINGER)] |= BIT_MASK(BTN_TOOL_FINGER);
so that HAL no longer adds:
input.mouse
to an ALPS touchpad's:
info.capabilities
so that HAL no longer marks the ALPS touchpad with:
input.x11_driver = 'evdev'
because the policy file:
fdi/policy/10osvendor/10-x11-input.fdi
doesn't define the policy for:
<match key="info.capabilities" contains="input.touchpad">
which was previous unnecessary because everything used to
be caught by the policy for:
<match key="info.capabilities" contains="input.mouse">
Signed-off-by: Michael Witten <mfwitten@gmail.com>
Signed-off-by: Martin Pitt <martin.pitt@ubuntu.com>
---
diff --git a/fdi/policy/10osvendor/10-x11-input.fdi b/fdi/policy/10osvendor/10-x11-input.fdi
index cff8fc5..8bbe263 100644
--- a/fdi/policy/10osvendor/10-x11-input.fdi
+++ b/fdi/policy/10osvendor/10-x11-input.fdi
@@ -16,6 +16,14 @@
</match>
</match>
+ <match key="info.capabilities" contains="input.touchpad">
+ <merge key="input.x11_driver" type="string">mouse</merge>
+ <match key="/org/freedesktop/Hal/devices/computer:system.kernel.name"
+ string="Linux">
+ <merge key="input.x11_driver" type="string">evdev</merge>
+ </match>
+ </match>
+
<match key="info.capabilities" contains="input.tablet">
<match key="/org/freedesktop/Hal/devices/computer:system.kernel.name"
string="Linux">
--
cgit v0.8.3-6-g21f6

@ -1,41 +0,0 @@
From 597c1ffffd61a15a334ce42f2a569c59f0270bcb Mon Sep 17 00:00:00 2001
From: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Date: Thu, 25 Feb 2010 10:25:18 +0000
Subject: Fix incorrect arguments to ioperm() call
The second argument of ioperm() is not the last port to be accessed
but rather length of the port range [port, port + len).
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
Signed-off-by: Martin Pitt <martin.pitt@ubuntu.com>
---
diff --git a/hald/linux/addons/addon-imac-backlight.c b/hald/linux/addons/addon-imac-backlight.c
index e869192..54e4ea3 100644
--- a/hald/linux/addons/addon-imac-backlight.c
+++ b/hald/linux/addons/addon-imac-backlight.c
@@ -158,7 +158,8 @@ main (int argc, char **argv)
goto out;
}
- if (ioperm(0xB2, 0xB3, 1) < 0)
+ /* Allow access to ports 0xB2 and 0xB3 */
+ if (ioperm(0xB2, 2, 1) < 0)
{
HAL_ERROR (("ioperm failed (you should be root)."));
exit(1);
diff --git a/hald/linux/addons/addon-macbookpro-backlight.c b/hald/linux/addons/addon-macbookpro-backlight.c
index 2a6fef6..c1bbbac 100644
--- a/hald/linux/addons/addon-macbookpro-backlight.c
+++ b/hald/linux/addons/addon-macbookpro-backlight.c
@@ -507,7 +507,8 @@ main (int argc, char *argv[])
state = INREG(0x7ae4);
OUTREG(0x7ae4, state);
- if (ioperm (0x300, 0x304, 1) < 0) {
+ /* Allow access to porta 0x300 through 0x304 */
+ if (ioperm (0x300, 5, 1) < 0) {
HAL_ERROR (("ioperm failed (you should be root)."));
exit(1);
}
--
cgit v0.8.3-6-g21f6

@ -1,31 +0,0 @@
From a2c3dd5a04d79265772c09c4280606d5c2ed72c6 Mon Sep 17 00:00:00 2001
From: Martin Pitt <martin.pitt@ubuntu.com>
Date: Mon, 04 Jan 2010 15:56:13 +0000
Subject: Bump HAL_PATH_MAX to 4096
Some bits in the code use realpath() with destination paths of size
HAL_PATH_MAX. This potentially breaks on systems where PATH_MAX is bigger than
HAL_PATH_MAX (which was 512 until now).
Since we can't use PATH_MAX directly (due to platforms like GNU/Hurd, which
apparently don't have it), just bump HAL_PATH_MAX to 4096 (as PATH_MAX is on
Linux), to avoid potential buffer overflows and also fix hal on Linux when
enabling FORTIFY in gcc.
https://bugs.freedesktop.org/show_bug.cgi?id=25888
---
diff --git a/hald/util.h b/hald/util.h
index c2a1584..7883333 100644
--- a/hald/util.h
+++ b/hald/util.h
@@ -38,7 +38,7 @@
#endif
#define HAL_NAME_MAX 256
-#define HAL_PATH_MAX 512
+#define HAL_PATH_MAX 4096
gboolean hal_util_remove_trailing_slash (gchar *path);
--
cgit v0.8.3-6-g21f6

@ -1,11 +0,0 @@
--- halbackend.h 2010-08-12 18:37:24.000000000 -0400
+++ halbackend.h~ 2011-11-03 22:15:02.002228291 -0400
@@ -40,7 +40,7 @@
/* We acknowledge the the dbus API is unstable */
#define DBUS_API_SUBJECT_TO_CHANGE
/* DBus-Qt bindings */
-#include <dbus/connection.h>
+#include "/opt/trinity/include/dbus-1.0/dbus/connection.h"
/* HAL libraries */
#include <libhal.h>
#include <libhal-storage.h>

@ -1,14 +0,0 @@
export KDEDIR=/opt/trinity
export KDEDIRS=$KDEDIR:/usr
export PATH=$KDEDIR/bin:$PATH
export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:$KDEDIR/lib/pkgconfig
if [ ! -z $XDG_DATA_DIRS ]; then
export XDG_DATA_DIRS=$XDG_DATA_DIRS:$KDEDIR/share
else
export XDG_DATA_DIRS=$KDEDIR/share
fi
if [ ! -z $XDG_CONFIG_DIRS ]; then
export XDG_CONFIG_DIRS=$XDG_CONFIG_DIRS:$KDEDIR/etc/xdg
else
export XDG_CONFIG_DIRS=$KDEDIR/etc/xdg
fi

@ -1,64 +0,0 @@
diff -u -r qt3/src/sql/drivers/odbc/qsql_odbc.cpp src/qt3/src/sql/drivers/odbc/qsql_odbc.cpp
--- qt3/src/sql/drivers/odbc/qsql_odbc.cpp 2011-10-30 19:55:58.000000000 +0100
+++ src/qt3/src/sql/drivers/odbc/qsql_odbc.cpp 2012-01-13 01:24:59.000000000 +0100
@@ -61,19 +61,18 @@
#endif
// newer platform SDKs use SQLLEN instead of SQLINTEGER
-#ifdef SQLLEN
+#if defined(SQLLEN) || defined(Q_OS_WIN64) || defined(Q_OS_UNIX)
# define QSQLLEN SQLLEN
#else
# define QSQLLEN SQLINTEGER
#endif
-#ifdef SQLULEN
+#if defined(SQLULEN) || defined(Q_OS_WIN64) || defined(Q_OS_UNIX)
# define QSQLULEN SQLULEN
#else
# define QSQLULEN SQLUINTEGER
#endif
-
static const QSQLLEN COLNAMESIZE = 256;
//Map Qt parameter types to ODBC types
static const SQLSMALLINT qParamType[ 4 ] = { SQL_PARAM_INPUT, SQL_PARAM_INPUT, SQL_PARAM_OUTPUT, SQL_PARAM_INPUT_OUTPUT };
diff -u -r qt3/plugins/src/sqldrivers/odbc/odbc.pro src/qt3/plugins/src/sqldrivers/odbc/odbc.pro
--- qt3/plugins/src/sqldrivers/odbc/odbc.pro 2011-10-30 19:55:57.000000000 +0100
+++ src/qt3/plugins/src/sqldrivers/odbc/odbc.pro 2012-01-13 01:39:11.000000000 +0100
@@ -10,14 +10,14 @@
mac {
!contains( LIBS, .*odbc.* ) {
- LIBS *= -liodbc
+ LIBS *= -lodbc
}
}
unix {
OBJECTS_DIR = .obj
!contains( LIBS, .*odbc.* ) {
- LIBS *= -liodbc
+ LIBS *= -lodbc
}
}
diff -u -r qt3/src/sql/qt_sql.pri src/qt3/src/sql/qt_sql.pri
--- qt3/src/sql/qt_sql.pri 2011-10-30 19:55:58.000000000 +0100
+++ src/qt3/src/sql/qt_sql.pri 2012-01-13 01:39:31.000000000 +0100
@@ -110,13 +110,13 @@
mac {
!contains( LIBS, .*odbc.* ) {
- LIBS *= -liodbc
+ LIBS *= -lodbc
}
}
unix {
!contains( LIBS, .*odbc.* ) {
- LIBS *= -liodbc
+ LIBS *= -lodbc
}
}
Loading…
Cancel
Save