Commit graph

16877 commits

Author SHA1 Message Date
Zbigniew Jędrzejewski-Szmek 9c0804278b units: m4 is not needed for rescue.service 2014-08-31 00:00:06 -04:00
Zbigniew Jędrzejewski-Szmek 87502e5868 units: make emergency.service conflict with rescue.service
They both use StandardInput=tty-force so they cannot be run
concurrently.

https://bugs.freedesktop.org/show_bug.cgi?id=82778
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=757072
2014-08-30 22:33:40 -04:00
Steven Noonan 20f8d3cf1b timesyncd-manager: don't clear current_server_name if ServerAddress is NULL
https://bugs.freedesktop.org/show_bug.cgi?id=83091

[zj: add comment]
2014-08-30 21:18:57 -04:00
Zbigniew Jędrzejewski-Szmek 44481a8b53 sd-dhcp6-client: properly calculate buffer size when parsing options
Also make pointer calculations more explicit so they are
easier to understand.
2014-08-30 18:42:20 -04:00
Patrik Flykt d182960ae9 test-dhcp6-client: Fix option length
The whole DHCPv6 test message length was incorrectly used as the length
of DHCPv6 options causing the following bad memory access:

$ build/test-dhcp6-client
Assertion 'interface_index >= -1' failed at ../src/libsystemd-network/sd-dhcp6-client.c:129, function sd_dhcp6_client_set_index(). Ignoring.
=================================================================
==29135==ERROR: AddressSanitizer: global-buffer-overflow on address 0x7fe204aa9148 at pc 0x7fe204a5958f bp 0x7fff3e47d470 sp 0x7fff3e47d460
READ of size 1 at 0x7fe204aa9148 thread T0
    #0 0x7fe204a5958e in option_parse_hdr ../src/libsystemd-network/dhcp6-option.c:145
    #1 0x7fe204a59884 in dhcp6_option_parse ../src/libsystemd-network/dhcp6-option.c:165
    #2 0x7fe204a4eb9c in test_advertise_option ../src/libsystemd-network/test-dhcp6-client.c:227
    #3 0x7fe204a51c58 in main ../src/libsystemd-network/test-dhcp6-client.c:584
    #4 0x7fe2031590df in __libc_start_main (/lib64/libc.so.6+0x200df)
    #5 0x7fe204a4cc5b (/home/test/systemd/build/test-dhcp6-client+0x25c5b)

0x7fe204aa9148 is located 2 bytes to the right of global variable 'msg_advertise' from '../src/libsystemd-network/test-dhcp6-client.c' (0x7fe204aa9080) of size 198
0x7fe204aa9148 is located 56 bytes to the left of global variable 'msg_reply' from '../src/libsystemd-network/test-dhcp6-client.c' (0x7fe204aa9180) of size 173
SUMMARY: AddressSanitizer: global-buffer-overflow ../src/libsystemd-network/dhcp6-option.c:145 option_parse_hdr
2014-08-30 18:35:43 -04:00
Zbigniew Jędrzejewski-Szmek a13ee4c792 cgroup-util: shorten cg_path_get_session 2014-08-30 17:41:32 -04:00
Zbigniew Jędrzejewski-Szmek 6ad3b2b62c systemd: fix error message 2014-08-30 17:41:15 -04:00
Zbigniew Jędrzejewski-Szmek c552d602ae test-compress: also test with incompressible inputs 2014-08-30 17:41:15 -04:00
Evangelos Foutras b4232628f3 journal/compress: use LZ4_compress_continue()
We can't use LZ4_compress_limitedOutput_continue() because in the
worst-case scenario the compressed output can be slightly bigger than
the input block. This generally affects very few blocks and is no reason
to abort the compression process.

I ran into this when I noticed that Chromium core dumps weren't being
compressed. After switching to LZ4_compress_continue() a ~330MB Chromium
core dump gets compressed to ~17M.
2014-08-30 17:41:15 -04:00
Tom Gundersen f697185e5b sd-ipv4ll: name the correct source 2014-08-30 22:25:42 +02:00
Ruben Kerkhof 06b643e7f5 Fix a few more typos 2014-08-30 13:46:07 -04:00
Sylvain Plantefève b12942e67e Update french translation 2014-08-30 13:39:07 -04:00
Michael Biebl 015419c0df libudev: fix symbol version for udev_queue_flush() and udev_queue_get_fd()
Those symbols were introduced in commit
14cb733684 and released in v215.
2014-08-30 11:39:47 +02:00
Kay Sievers 2e92633dba udev: bump event timeout to 60 seconds 2014-08-30 11:36:32 +02:00
Kay Sievers be2ea723b1 udev: remove userspace firmware loading support 2014-08-30 11:34:20 +02:00
Dave Reisner ec15977a3c completion: filter templates from restartable units
Since c6a373a263, we might encounter unit templates via the
'list-units' verb. These aren't restartable (and we throw errors), so
make sure they're filtered out of the completion options.

fixes downstream bug: https://bugs.archlinux.org/task/41719
2014-08-29 20:40:38 -04:00
Sergey Ptashnick f2e104d3e0 Update Russian translation
By analogy with commit 1977376274.
2014-08-29 18:51:17 -04:00
Miroslav Lichvar 3af0442c52 timesyncd: check root distance
NTPv4 servers don't reply with unsynchronized status when they lost
synchronization, they only keep increasing the root dispersion and it's
up to the client to decide at which point they no longer consider it
synchronized.

Ignore replies with root distance over 5 seconds.
2014-08-29 18:13:05 +02:00
Miroslav Lichvar 487a36821e timesyncd: get kernel timestamp in nanoseconds 2014-08-29 18:13:04 +02:00
Miroslav Lichvar 73c76e6330 timesyncd: fix calculation of transmit time
The kernel timestamp (recv_time) is made earlier than current time
(now_ts), use the timestamp captured before sending packet directly.
2014-08-29 18:13:02 +02:00
Miroslav Lichvar 07610e108e timesyncd: check if stratum is valid 2014-08-29 18:13:00 +02:00
Ruben Kerkhof 6ff8806e1d Fix a few typos in log messages 2014-08-29 09:28:19 -04:00
Marius Tessmann fd5ab841e7 systemd-journal-upload: fix invalid After=
After= belongs into [Unit], not [Install]. Found with systemd-analyze
verify.
2014-08-28 18:06:02 -04:00
Marius Tessmann c32e70aa8e systemd-firstboot: fix typo in man page 2014-08-28 18:06:02 -04:00
Marius Tessmann 47542dc8b6 systemd-firstboot.service: fix man page section
Found with systemd-analyze verify.
2014-08-28 18:06:02 -04:00
David Herrmann 32b13b2f58 sd-event: simplify sd_event_source_set_name()
free_and_strdup() does exactly the same as sd_event_source_set_name(), use
it!
2014-08-28 22:44:28 +02:00
Tom Gundersen 9021bb9f93 sd-event: name event sources used in libraries
This should help in debugging failing event sources.
2014-08-28 21:19:17 +02:00
Tom Gundersen 752bbf75b9 sd-event: use event source name rather than address in debug messages 2014-08-28 21:19:17 +02:00
Tom Gundersen f7f53e9e6e sd-event: allow naming event sources 2014-08-28 21:19:17 +02:00
Tom Gundersen 5968b1c304 sd-rtnl: log if kernel buffer is overrun as we currently can't handle that case 2014-08-28 21:19:16 +02:00
Lennart Poettering ac528e3e3b hibernate-resume: refuse to run outside of an initrd 2014-08-28 20:26:14 +02:00
Lennart Poettering 202aea456d update TODO 2014-08-28 20:26:14 +02:00
Zbigniew Jędrzejewski-Szmek ddb7f7fc07 networkctl: do not mix dns and ntp servers 2014-08-28 09:41:29 -04:00
David Herrmann 427c71629e bus: don't skip interfaces in bus_message_map_properties_changed()
Skipping interfaces randomly without the caller specifying it is nasty.
Avoid this and let the caller do that themselves.
2014-08-28 15:25:51 +02:00
David Herrmann c168eb6785 locale: fix sending PropertiesChanged for x11 keymap changed
The sd_bus_emit_properties_changed() call for x11 keymap changes lacks
commas.. whoops. Fix it! Now localed emits PropertiesChanged signals
again.
2014-08-28 15:25:51 +02:00
Harald Hoyer 5a4bf02ff5 use the switch_root function in shutdown
removes code duplication

also move switch-root to shared
2014-08-28 15:25:15 +02:00
David Herrmann 667a0377fb macro: use unique variable names for math-macros
Similar to container_of(), we now use unique variable names for the bascic
math macros MAX, MIN, CLAMP, LESS_BY. Furthermore, unit tests are added to
verify they work as expected.

For a rationale, see:
    commit fb835651af
    Author: David Herrmann <dh.herrmann@gmail.com>
    Date:   Fri Aug 22 14:41:37 2014 +0200

        shared: make container_of() use unique variable names
2014-08-28 14:45:38 +02:00
David Herrmann d974ad0524 bus: fix use-after-free in slot-release
We must not access slot->floating after we possible dropped the last
reference to it. Fix all callback-invocations to first check
slot->floating and possible disconnect the slot, then release the last
reference.
2014-08-28 12:45:51 +02:00
David Herrmann fa9838ddd6 terminal: free sysview-device names on destruction
Don't leak the device-names during device destruction in sysview. Somehow,
the device-name is "const char*", so make it "char*" first to avoid
warnings when calling free() on it.
2014-08-28 12:45:51 +02:00
David Herrmann 200716a628 terminal: free xkb state on keyboard destruction
Fix leaking the xkb-state during keyboard destruction, leaking lots of xkb
references into the wild.
2014-08-28 12:45:51 +02:00
Tom Gundersen 3125b3ef5d nspawn: fix --network-interface
Use SETLINK when modifying an existing link.
2014-08-28 12:16:07 +02:00
David Herrmann 371ad55d46 terminal: sysview: don't return uninitialized error codes
In case 'scan_evdev' and 'scan_drm' are both false, we never set 'r' to
anyhting, thus return an uninitialized error code. Fix this by always
returning 0 as we catch negative codes earlier, anyway. Thanks to Thomas
H.P. Anderson for the report.
2014-08-28 11:04:18 +02:00
Zbigniew Jędrzejewski-Szmek 0f99f74a14 sd-journal: verify that object start with the field name
If the journal is corrupted, we might return an object that does
not start with the expected field name and/or is shorter than it
should.
2014-08-27 21:05:28 -04:00
Zbigniew Jędrzejewski-Szmek 57cd09acf2 sd-journal: properly convert object->size on big endian
mmap code crashes when attempting to map an object of zero size.

https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=758392
https://bugs.freedesktop.org/show_bug.cgi?id=82894
2014-08-27 21:05:28 -04:00
Thomas Hindoe Paaboel Andersen 00b333bb10 terminal: remove unused variable 2014-08-27 23:23:10 +02:00
Lennart Poettering eff3f4f9e9 update TODO 2014-08-27 21:43:46 +02:00
Lennart Poettering 8a7c93d858 util: fix minimal race where we might miss SIGTERMs when forking off an agent
Before forking, block all signals, and unblock them afterwards. This way
the child will have them blocked, and we won't lose them.
2014-08-27 21:43:46 +02:00
Tom Gundersen c609cb9898 man: add sample glib/sd-event integration
This should be moved to man pages, but for now the C code is included directly.

Suggested by Zbyszek.
2014-08-27 19:04:29 +02:00
David Herrmann 8e9371905c terminal: add systemd-evcat input debugging tool
Like systemd-subterm, this new systemd-evcat tool should only be used to
debug libsystemd-terminal. systemd-evcat attaches to the running session
and pushes all evdev devices attached to the current session into an
idev-session. All events of the created idev-devices are then printed to
stdout for input-event debugging.
2014-08-27 18:42:29 +02:00
David Herrmann e06cc7b074 terminal: add xkb-based keyboard devices to idev
The idev-keyboard object provides keyboard devices to the idev interface.
It uses libxkbcommon to provide proper keymap support.

So far, the keyboard implementation is pretty straightforward with one
keyboard device per matching evdev element. We feed everything into the
system keymap and provide proper high-level keyboard events to the
application. Compose-features and IM need to be added later.
2014-08-27 18:42:28 +02:00