chiark / gitweb /
log: add an "error" parameter to all low-level logging calls and intrdouce log_error_...
authorLennart Poettering <lennart@poettering.net>
Thu, 27 Nov 2014 18:48:02 +0000 (19:48 +0100)
committerLennart Poettering <lennart@poettering.net>
Thu, 27 Nov 2014 21:05:23 +0000 (22:05 +0100)
commit086891e5c119abb9854237fc32e736fe2d67234c
tree4fc81d73413d1f1aa351e0de248307180c8893de
parentfb6d9b77a71a5f007392b754bf7d8e06a6bed69a
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");
21 files changed:
src/core/kmod-setup.c
src/core/selinux-access.c
src/core/unit.h
src/journal-remote/microhttpd-util.c
src/libsystemd-network/dhcp-internal.h
src/libsystemd-network/dhcp-server-internal.h
src/libsystemd-network/dhcp6-internal.h
src/libsystemd-network/ipv4ll-internal.h
src/libsystemd-network/sd-icmp6-nd.c
src/modules-load/modules-load.c
src/network/networkd-ipv4ll.c
src/network/networkd-link.h
src/network/networkd-netdev.c
src/network/networkd-netdev.h
src/network/networkd.h
src/shared/conf-parser.c
src/shared/conf-parser.h
src/shared/log.c
src/shared/log.h
src/test/test-hostname.c
src/udev/udev-builtin-kmod.c