Commit Graph

10349 Commits

Author SHA1 Message Date
Marcel Holtmann
f8dfb6283d hwdb: Update database of Bluetooth company identifiers
Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-12-04 16:39:18 -05:00
Lennart Poettering
7057e3da01 udev: strings in C are NUL-terminated anyway, no need to add a second NUL...
Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-12-01 19:47:08 -05:00
Tom Gundersen
27c0fc5c98 udev: rules - ignore the lack of trailing newline
Also accept '\r' as newline character.

This dropps warnings of the type:

  invalid key/value pair in file /usr/lib/udev/rules.d/40-usb-media-players.rules
  on line 26, starting at character 25 ('')

Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-12-01 19:46:05 -05:00
Tom Gundersen
b3a572ddf5 udev: rules - print the first invalid character
The current code would print the character following the first invalid
character.

Given an udev rules-file without a trailing newline we would otherwise print
garbage:

  invalid key/value pair in file /usr/lib/udev/rules.d/40-usb-media-players.rules
  on line 26, starting at character 25 ('m')

This is now changed to print

  invalid key/value pair in file /usr/lib/udev/rules.d/40-usb-media-players.rules
  on line 26, starting at character 25 ('')

(still not very good as printing \0 just gives the empty string)

Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-12-01 19:43:58 -05:00
Tom Gundersen
5cb9807847 udev: rules - modernise add_rule a bit
Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-12-01 19:42:39 -05:00
Peter Hutterer
ed19623f62 udevadm hwdb: discard extra leading whitespaces in hwdb
Currently a property in the form of
  FOO=bar
is stored as " FOO=bar", i.e. the property name contains a leading space.
That's quite hard to spot.

This patch discards all extra whitespaces but the first one which is required
by libudev's hwdb_add_property.

[zj: modify the check a bit]

https://bugs.freedesktop.org/show_bug.cgi?id=82311

Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-12-01 19:40:18 -05:00
Ross Lagerwall
c0d8d523a6 cgroup-util: Don't send SIGCONT after SIGKILL
Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-12-01 19:37:06 -05:00
Lennart Poettering
4e7269063d treewide: introduce UID_INVALID (and friends) as macro for (uid_t) -1
Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-12-01 19:31:53 -05:00
Michal Schmidt
f460aa149c treewide: another round of simplifications
Using the same scripts as in f647962d64e "treewide: yet more log_*_errno
+ return simplifications".

Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-12-01 13:13:40 -05:00
Michal Schmidt
761b969283 treewide: use log_*_errno whenever %m is in the format string
If the format string contains %m, clearly errno must have a meaningful
value, so we might as well use log_*_errno to have ERRNO= logged.

Using:
find . -name '*.[ch]' | xargs sed -r -i -e \
's/log_(debug|info|notice|warning|error|emergency)\((".*%m.*")/log_\1_errno(errno, \2/'

Plus some whitespace, linewrap, and indent adjustments.

Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-12-01 07:39:05 -05:00
Michal Schmidt
ed7c6787bd treewide: drop unnecessary trailing \n in log_*() calls
Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-11-30 14:45:49 -05:00
Jakub Filak
af2ae57346 util: add function getting proc environ
On the contrary of env, the added function returns all characters
cescaped, because it improves reproducibility.

Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-11-28 12:42:51 -05:00
Lennart Poettering
e6511db5d5 util: skip incomplete ucred information in getpeersec()
Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-11-28 12:38:00 -05:00
Michal Schmidt
805a4489ec treewide: more log_*_errno() conversions
Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-11-28 11:42:30 -05:00
Michal Schmidt
b06aadd220 treewide: no need to negate errno for log_*_errno()
It corrrectly handles both positive and negative errno values.

Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-11-28 11:30:06 -05:00
Michal Schmidt
146b012e50 treewide: auto-convert the simple cases to log_*_errno()
As a followup to 086891e5c1 "log: add an "error" parameter to all
low-level logging calls and intrdouce log_error_errno() as log calls
that take error numbers", use sed to convert the simple cases to use
the new macros:

find . -name '*.[ch]' | xargs sed -r -i -e \
's/log_(debug|info|notice|warning|error|emergency)\("(.*)%s"(.*), strerror\(-([a-zA-Z_]+)\)\);/log_\1_errno(-\4, "\2%m"\3);/'

Multi-line log_*() invocations are not covered.
And we also should add log_unit_*_errno().

Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-11-28 11:16:51 -05:00
Lennart Poettering
e72e57a66f log: rearrange log function naming
- Rename log_meta() → log_internal(), to follow naming scheme of most
  other log functions that are usually invoked through macros, but never
  directly.

- Rename log_info_object() to log_object_info(), simply because the
  object should be before any other parameters, to follow OO-style
  programming style.

Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-11-28 10:26:48 -05:00
Lennart Poettering
107530eaa3 log: add an "error" parameter to all low-level logging calls and intrdouce log_error_errno() as log calls that take error numbers
This change has two benefits:

- The format string %m will now resolve to the specified error (or to
  errno if the specified error is 0. This allows getting rid of a ton of
  strerror() invocations, a function that is not thread-safe.

- The specified error can be passed to the journal in the ERRNO= field.

Now of course, we just need somebody to convert all cases of this:

        log_error("Something happened: %s", strerror(-r));

into thus:

        log_error_errno(-r, "Something happened: %m");

Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-11-28 10:13:40 -05:00
Zbigniew Jędrzejewski-Szmek
62d9908a84 udevadm trigger: allow matching by device name
This makes udevadm trigger mirror udevadm info, except that multiple
device names can be specified. Instructions in 60-keyboard.hwdb should
now actually work.

udevadm(8) is updated, but it could use a bit more polishing.

https://bugs.freedesktop.org/show_bug.cgi?id=82311

Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-11-28 08:54:14 -05:00
Zbigniew Jędrzejewski-Szmek
c0f2fad6a5 udevadm: split out find_device helper
The idea is to unify the way that devices can be specified.

Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-11-28 08:44:21 -05:00
Peter Hutterer
3481b5b976 hwdb: add a new db for the DPI/frequency settings of mice
Pointer acceleration for relative input devices (mice, trackballs, etc.)
applies to the deltas of the device. Alas, those deltas have no physical
reference point - a delta of 10 may be caused by a large movement of a
low-dpi mouse or by a minute movement of a high-dpi mouse.
Which makes pointer acceleration a bit useless and high-dpi devices
essentially unusable.

In an ideal world, we could read the DPI from the device directly and work
with that. In the world we actually live in, we need to compile this list
manually. This patch introduces the database, with the usual match formats
and a single property to be set on a device: MOUSE_DPI

That is either a single value for most mice, or a list of values for mice
that can change resolution at runtime. The exact format is detailed in the
hwdb file.

Note that we're explicitly overshooting the requirements we have for
libinput atm. Frequency could be detected in software and we don't
actually use the list of multiple resolutions (because we can't detect
when they change anyway). However, we might as well collect those values
from the get-go, adding/modifying what will eventually amount to hundreds
of entries is a bit cumbersome.

Note: we rely on the input_id builtin to tag us as mouse first, ordering
of the rules is important.

(David: fixed up typos and moved hwdb file into ./hwdb/)

Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-11-28 08:12:30 -05:00
Peter Hutterer
c317efd55c hwdb: fix a typo
Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-11-27 16:50:49 -05:00
WaLyong Cho
70a41ab585 smack: introduce new SmackProcessLabel option
In service file, if the file has some of special SMACK label in
ExecStart= and systemd has no permission for the special SMACK label
then permission error will occurred. To resolve this, systemd should
be able to set its SMACK label to something accessible of ExecStart=.
So introduce new SmackProcessLabel. If label is specified with
SmackProcessLabel= then the child systemd will set its label to
that. To successfully execute the ExecStart=, accessible label should
be specified with SmackProcessLabel=.
Additionally, by SMACK policy, if the file in ExecStart= has no
SMACK64EXEC then the executed process will have given label by
SmackProcessLabel=. But if the file has SMACK64EXEC then the
SMACK64EXEC label will be overridden.

[zj: reword man page]

Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-11-27 12:34:36 -05:00
Lennart Poettering
2694f4de06 man: add emacs header to get correct indention in nxml-mode for the manpage XML files that use 2ch indenting
In the long run we really should figure out if we want to stick with 8ch
or 2ch indenting, and not continue with half-and-half. For now, just
make emacs aware of the files that use 2ch indenting.

Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-11-27 08:29:53 -05:00
Lennart Poettering
0ddc209efd set: make set_consume() actually free the allocated string if the string already is in the set
Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-11-20 06:43:53 -05:00
Susant Sahani
690c855960 log: unchecked return value from library
fix 1237557 Unchecked return value from library

Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-11-17 17:59:53 -05:00
Ronny Chevalier
9f5d1bc3cd udev: silence TOCTOU warning when creating a directory
CID#979416. There is no real race here to fix, but lets make coverity
happy and rework the code.

Note that we still fail if the directory is removed _after_ we ran
mkdir(), so the same race is still there. Coverity is complaining, though.
Rewrite the code to make it happy.

(David: rewrote the commit-message to note that this is not a race. If I'm
        wrong, blame me, not Ronny!)

Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-11-17 07:38:24 -05:00
Anthony G. Basile
6740579367 configure.ac: don't die on missing linux/btrfs.h, fixes issue #100
Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-11-16 13:40:43 -05:00
Anthony G. Basile
d3ef837153 src/udev: update the definition of udev_event_execute_rule
Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-11-16 08:44:52 -05:00
Kay Sievers
5fe138cdda udev: move global property handling from libudev to udevd
Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-11-14 20:53:59 -05:00
Kay Sievers
dacd994fda udev: switch to systemd logging functions
Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-11-14 20:46:11 -05:00
Ronny Chevalier
aec5d2b9b4 udev: use properly the systemd logging functions
Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-11-14 19:54:23 -05:00
Anthony G. Basile
1425cbb606 src/shared/util.{c,h}: import needed functions from upstream 2014-11-14 19:54:07 -05:00
Kay Sievers
d1952898c7 udev: use the systemd logging functions in udev tools
Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-11-14 17:39:08 -05:00
Lennart Poettering
e2c392176c utf8: when looking at the next unichar, honour the size parameter, in utf8_is_printable_newline()
Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-11-14 17:26:13 -05:00
Lennart Poettering
71f9ca7cef util: simplify proc_cmdline() to reuse get_process_cmdline()
Also, make all parsing of the kernel cmdline non-fatal.

Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-11-14 14:34:25 -05:00
Michal Schmidt
5ce04ca64c shared: create files even if the SELinux policy has no context for them
The SELinux policy defines no context for some files. E.g.:
  $ matchpathcon /run/lock/subsys /dev/mqueue
  /run/lock/subsys        <<none>>
  /dev/mqueue     <<none>>

We still need to be able to create them.
In this case selabel_lookup_raw() returns ENOENT. We should then skip
setfscreatecon(), but still return success.
It was broken since c34255bdb2 ("label: unify code to make directories,
symlinks").

Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-11-14 14:24:11 -05:00
Lennart Poettering
afd5b52fcf condition: unify condition logic in one file
Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-11-14 14:22:02 -05:00
Lennart Poettering
9db4dfff9e util: simplify proc_cmdline() to reuse get_process_cmdline()
Also, make all parsing of the kernel cmdline non-fatal.

Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-11-07 16:54:58 -05:00
Anthony G. Basile
e9b029ac53 src/libudev/libudev-hwdb.c: update error message 2014-11-07 16:42:56 -05:00
Anthony G. Basile
903c8a36e1 man/udev.conf.xml: fix s/commandline/command line/g and rebuild man pages
Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-11-07 08:33:37 -05:00
Harald Hoyer
ea4a086b39 s/commandline/command line/g
Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-11-07 08:31:51 -05:00
David Herrmann
0f89a3c563 udev: avoid magic constants in kernel-cmdline parsers
Lets recognize the fact that startswith() returns a pointer to the tail on
success. Use it instead of hard-coding string-lengths as magic constants.

Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-11-07 08:29:22 -05:00
Richard W.M. Jones
7be58d7b48 udev: Fix parsing of udev.event-timeout kernel parameter.
Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-11-07 08:28:32 -05:00
Zbigniew Jędrzejewski-Szmek
c45f1f9002 man: describe all log levels in udevadm(8)
https://bugs.freedesktop.org/show_bug.cgi?id=85657

Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-11-02 14:44:51 -05:00
Joe Lawrence
3d6ead6908 scsi_id: fix usage spelling
s/threat/treat/g

Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-11-02 14:39:33 -05:00
Colin Walters
daaa2f764b libudev: Use correct free function
FILE * wants cleanup_fclose().

Spotted by udev hwdb segfaulting in gnome-continuous' buildroot
construction.

Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-11-02 14:38:03 -05:00
Anthony G. Basile
0ba3128e90 man: update man pages
Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-11-02 14:36:05 -05:00
Zbigniew Jędrzejewski-Szmek
ad9c47a35b Use log "level" instead of "priority"
The term "priority" is misleading because higher levels have lower
priority. "Level" is clearer and shorter.

This commit touches only the textual descriptions, not function and variable
names themselves. "Priority" is used in various command-line switches and
protocol constants, so completly getting rid of "priority" is hard.

I also left "priority" in various places where the clarity suffered
when it was removed.

Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-11-02 14:27:23 -05:00
Zbigniew Jędrzejewski-Szmek
66498b0110 libudev: do not accept invalid log levels
Invalid log levels lead to a assert failure later on.

Signed-off-by: Anthony G. Basile <blueness@gentoo.org>
2014-11-02 14:22:32 -05:00