Commit graph

18159 commits

Author SHA1 Message Date
Michal Schmidt 895b3a7b44 core: fix return value in error path after sd_event_add_io() failure
sd_event_add_io() does not set errno, it returns negative errno.

Noticed during log_*_errno conversions.
2014-11-28 19:20:59 +01:00
Michal Schmidt 8d3d7072e6 treewide: a few more log_*_errno + return simplifications
The one in tmpfiles.c:create_item() even looks like it fixes a bug.
2014-11-28 19:17:24 +01:00
Michal Schmidt f647962d64 treewide: yet more log_*_errno + return simplifications
Using:
find . -name '*.[ch]' | while read f; do perl -i.mmm -e \
 'local $/;
  local $_=<>;
  s/(if\s*\([^\n]+\))\s*{\n(\s*)(log_[a-z_]*_errno\(\s*([->a-zA-Z_]+)\s*,[^;]+);\s*return\s+\g4;\s+}/\1\n\2return \3;/msg;
  print;'
 $f
done

And a couple of manual whitespace fixups.
2014-11-28 18:56:16 +01:00
Zbigniew Jędrzejewski-Szmek e80733be33 Revert "systemctl: append default suffix only if none present"
This reverts a chunk out of commit 5e03c6e3b5
which was trying to pass NULL to the the '.service' default. Anyway,
it seems better to be explicit.
2014-11-28 12:28:44 -05:00
Michal Schmidt 23bbb0de4e treewide: more log_*_errno + return simplifications 2014-11-28 18:24:30 +01:00
Zbigniew Jędrzejewski-Szmek 5e03c6e3b5 systemctl: append default suffix only if none present
Simplify unit_name_mangle() and unit_name_mangle_with_suffix() to
always behave the same, and only append a suffix if there is no
type suffix. If a user says 'isolate blah.device' it is better to
return an error that the type cannot be isolated, than to try to
isolate blah.device.target.
2014-11-28 11:54:37 -05:00
Tom Gundersen 6872b0ddc4 udevd: don't set receive buffer size when socket activated
The socket unit does this, so no need to redo it in udevd.
2014-11-28 17:41:58 +01:00
Michal Schmidt eb56eb9b40 treewide: simplify log_*_errno(r,...) immediately followed by "return r" 2014-11-28 17:34:26 +01:00
Michal Schmidt c33b329709 treewide: more log_*_errno() conversions, multiline calls
Basically:

find . -name '*.[ch]' | while read f; do perl -i.mmm -e \
'local $/;
 local $_=<>;
 s/log_(debug|info|notice|warning|error|emergency)\("([^"]*)%s"([^;]*),\s*strerror\(-?([->a-zA-Z_]+)\)\);/log_\1_errno(\4, "\2%m"\3);/gms;print;' \
 $f; done

Plus manual indentation fixups.
2014-11-28 17:17:51 +01:00
Martin Pitt 5567fafbc9 hostnamectl: Exit with zero on success
In show_all_names(), bus_map_all_properties() returns 1 on success which is
then used as the return code of show_all_names() and eventually main(). Exit
with zero in main() on all nonnegative results to guard against similar errors.
2014-11-28 17:08:51 +01:00
Lennart Poettering 755bde375f udev,update-done: more log_xyz_errno() conversions 2014-11-28 16:32:26 +01:00
Lennart Poettering 1797280193 sd-bus: make sure %m resolves to the specified error in bus_error_set_errnofv() 2014-11-28 16:30:53 +01:00
Lennart Poettering 818eae495e update TODO 2014-11-28 16:18:17 +01:00
Lennart Poettering 2e43ad9ca6 bus-proxy: automatically detect scope of bus and derive which XML snippets to load from that 2014-11-28 16:18:17 +01:00
Lennart Poettering e3afaf6b8e sd-bus: rename default bus address constants, they aren't "paths" but "addresses" 2014-11-28 16:17:33 +01:00
Lennart Poettering 3acc1dafd1 sd-bus: add new call sd_bus_get_scope() for querying whether one is connected to a system or a user bus 2014-11-28 16:17:33 +01:00
Lennart Poettering 52cfc0379a sd-bus: rework credential query logic
Also, make the call to free kdbus slices generic and use it everywhere
2014-11-28 16:17:33 +01:00
Michal Schmidt 279d3c9cea treewide: more log_*_errno() conversions 2014-11-28 14:45:55 +01:00
Michal Schmidt ff49bc3212 treewide: drop unnecessary trailing \n in log_*() calls 2014-11-28 14:26:31 +01:00
Michal Schmidt c95f97a20f core: two more log_unit_*_errno() conversions 2014-11-28 13:54:40 +01:00
Michal Schmidt 31938a8560 core: convert log_unit_*() to log_unit_*_errno()
Using:
find . -name '*.[ch]' | xargs sed -r -i -e \
's/log_unit_(debug|info|notice|warning|error|emergency)\(([^"]+), "(.*)%s"(.*), strerror\(-([a-zA-Z_]+)\)\);/log_unit_\1_errno(\2, \5, "\3%m"\4);/'
2014-11-28 13:29:21 +01:00
Michal Schmidt b2dc4e44c5 core: add log_unit_*_errno() macros 2014-11-28 13:29:21 +01:00
Michal Schmidt da927ba997 treewide: no need to negate errno for log_*_errno()
It corrrectly handles both positive and negative errno values.
2014-11-28 13:29:21 +01:00
Michal Schmidt 0a1beeb642 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().
2014-11-28 12:04:41 +01:00
Michal Schmidt b4d23205f2 shared: fix log_emergency_errno macro
It was not passing the error argument.
2014-11-28 11:54:25 +01:00
Lennart Poettering e8bbb7c7e9 update TODO 2014-11-28 03:29:52 +01:00
Lennart Poettering 1214b53c8e kdbus: when running in a container, don't complain that we cannot write to /sys 2014-11-28 03:16:56 +01:00
Lennart Poettering bf371116f6 log: change log_xyz_errno() calls to always return the negative error
This enables us to write things like this:

    int open_some_file(void) {

            fd = open("/dev/foobar", O_RDWR|O_CLOEXEC);
            if (fd < 0)
                    return log_error_errno(errno, "Failed to reboot: %m");

            return fd;
    }

Which is function that returns -errno on failure, as well as printing an
error message, all in one line.
2014-11-28 03:16:56 +01:00
Lennart Poettering 95066a9061 log: make socket address structs static const 2014-11-28 03:16:56 +01:00
Lennart Poettering 6357ac664c log: also set errno to the passed error code before processing format string in log_struct()
That way the caller may use %m to print the specified error.
2014-11-28 03:16:56 +01:00
Lennart Poettering 387eba0084 core: only override kdbus attach mask when running as PID 1 2014-11-28 02:26:05 +01:00
Lennart Poettering 412c18f10c sd-bus: the attach_mask kernel module parameter is 64bit now, hence initialize it as such 2014-11-28 02:25:45 +01:00
Lennart Poettering 8f16f51d93 log: allow negative errno values
sd_bus_error_set_errno() allows negative errors too, hence, be equally
nice.
2014-11-28 02:18:46 +01:00
Lennart Poettering e2cc6eca73 log: fix order of log_unit_struct() to match other logging calls
Also, while we are at it, introduce some syntactic sugar for creating
ERRNO= and MESSAGE= structured logging fields.
2014-11-28 02:18:46 +01:00
Lennart Poettering 6c861f0aef networkd: update logging macros for parameter order, and errno, to match rest of the code 2014-11-28 02:18:46 +01:00
Lennart Poettering bca3e263cf update TODO 2014-11-28 02:18:46 +01:00
Lennart Poettering ac3ab439f0 networkd: remove duplicate macro definitions 2014-11-28 02:17:50 +01:00
David Herrmann 622ac87c12 Update TODO
kdbus eavesdropping was fixed!
2014-11-28 01:03:54 +01:00
Zbigniew Jędrzejewski-Szmek aad0a2c800 sysv-generator: advertise the man page 2014-11-27 17:22:28 -05:00
Zbigniew Jędrzejewski-Szmek f509443af5 man: add systemd-sysv-generator(8)
In principle SysV stuff is only for compatibility, but we are stuck
with it for the forseeable future, so documentation might as well
be provided.

https://bugs.debian.org/771172
2014-11-27 17:22:26 -05:00
Thomas Hindoe Paaboel Andersen b5a1e50495 fix build with --enable-terminal
Broke with 086891e5c1
2014-11-27 23:18:34 +01:00
Lennart Poettering 3da44ef53b kmod-setup: simplify kernel command line parsing 2014-11-27 22:05:24 +01:00
Lennart Poettering 1a29929959 kdbus: set kernel attach mask before creating the first bus 2014-11-27 22:05:24 +01:00
Lennart Poettering 12f1caf40c selinux: log selinux log messages with LOG_AUTH facility 2014-11-27 22:05:24 +01:00
Lennart Poettering 79008bddf6 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.
2014-11-27 22:05:24 +01:00
Lennart Poettering e09ca588d2 log: be a bit less wasteful when allocating buffers 2014-11-27 22:05:24 +01:00
Lennart Poettering 086891e5c1 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");
2014-11-27 22:05:23 +01:00
Lennart Poettering fb6d9b77a7 sd-bus: set creds info for "org.freedesktop.DBus.Local" generated messages, too 2014-11-27 22:05:23 +01:00
Lennart Poettering 38ce47e262 sd-bus: when we get the list of well-known names back from kdbus we shouldn't confuse the empty list with unknown information 2014-11-27 22:02:13 +01:00
Lennart Poettering 771b2724c0 sd-bus: deal with whitespace in matches 2014-11-27 22:02:12 +01:00