summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2015-05-18kmod-setup: conditionalize kmod autoloading properlyHEADmasterLennart Poettering1-0/+4
Load kdbus.ko only if we are built with kdbus, and load ip_tables.ko only if we are built with iptables support.
2015-05-18util: split all hostname related calls into hostname-util.cLennart Poettering29-152/+234
2015-05-18README: document that we prefer if CONFIG_CHECKPOINT_RESTORE is turned on, ↵Lennart Poettering1-0/+1
for the kcmp() syscall
2015-05-18fstab-generator: add x-systemd.requires and x-systemd.requires-mounts-forKarel Zak4-0/+139
Currently we have no way how to specify dependencies between fstab entries (or another units) in the /etc/fstab. It means that users are forced to bypass fstab and write .mount units manually. The patch introduces new systemd fstab options: x-systemd.requires=<PATH> - to specify dependence an another mount (PATH is translated to unit name) x-systemd.requires=<UNIT> - to specify dependence on arbitrary UNIT x-systemd.requires-mounts-for=<PATH ...> - to specify dependence on another paths, implemented by RequiresMountsFor=. The option may be specified more than once. For example two bind mounts where B depends on A: /mnt/test/A /mnt/test/A none bind,defaults /mnt/test/A /mnt/test/B none bind,x-systemd.requires=/mnt/test/A More complex example with overlay FS where one mount point depends on "low" and "upper" directories: /dev/sdc1 /mnt/low ext4 defaults /dev/sdc2 /mnt/high ext4 defaults overlay /mnt/merged overlay lowerdir=/mnt/low,upperdir=/mnt/high/data,workdir=/mnt/high/work,x-systemd.requires-mounts-for=/mnt/low,x-systemd.requires-mounts-for=mnt/high https://bugzilla.redhat.com/show_bug.cgi?id=812826 https://bugzilla.redhat.com/show_bug.cgi?id=1164334
2015-05-18buildsys: actually install 70-pointingstick.hwdbMantas Mikulėnas1-0/+1
2015-05-18hwdb: Add trackpoint sensitivity setting for Thinkpad X230 tabletHans de Goede1-0/+2
This model needs the trackpoint sensitivity to be boosted to not be too slow to be usable, see: https://bugzilla.redhat.com/show_bug.cgi?id=1200717
2015-05-18zsh-completion: make the arrays _sys_active_units, _sys_startable_units and ↵Eric Cook1-4/+4
_sys_restartable_units local to the completer.
2015-05-18zsh-completion: removing more pointless forksEric Cook1-16/+14
I seem to have forgot about _systemctl_active_units().
2015-05-18zsh-completion: less forking in _systemctl_failed_units() and make the array ↵Eric Cook1-2/+2
`_sys_failed_units' local to the completer.
2015-05-18zsh-completion: less forking in _systemctl_get_template_names()Eric Cook1-1/+1
2015-05-18zsh-completion: actually complete template names for subcommands enable, ↵Eric Cook1-12/+9
reenable and disable. compadd's -a option treats non-option arguments as arrays. So $(_systemctl_get_template_names) expands to some words that aren't legal array names. Even if there were, they would be empty; thus adding nothing. deduplicated a few functions too.
2015-05-18zsh-completion: actually run _filter_units_by_property when creating the ↵Eric Cook1-4/+5
arrays _sys_(re|)startable_units
2015-05-18Use "new" --job-mode= option in more placesZbigniew Jędrzejewski-Szmek6-16/+24
--irreversible/--ignore-dependencies/--fail are deprececated since 4dc5b821ae737914499119e29811fc3346e3d97c. Also add shell completions for --jobs-mode.
2015-05-16load-fragment: put quotes around iffy rvalueZbigniew Jędrzejewski-Szmek1-1/+2
2015-05-16Use fflush_and_check() in more placesZbigniew Jędrzejewski-Szmek3-15/+15
2015-05-16buildsys: Remove X_SERVER from AM_CPPFLAGSCristian Rodríguez1-1/+0
It is a leftover from multi-seat-x wrapper which is long gone.
2015-05-16zsh-completion: add missing completions for systemd-nspawnLukas Rusak1-9/+13
2015-05-16zsh-completion: update -M completion for systemd-analyzeLukas Rusak1-1/+1
2015-05-16zsh-completion: add missing completions for machinectlLukas Rusak1-14/+70
Appologies, I'm still getting used to this mailing list thing and using git send-email
2015-05-16udevd: queue - update queue state when events are queued/freedTom Gundersen1-28/+33
This way it is more obvious that the queue flag file is always up-to-date. Moreover, we only have to touch/unlink it when the first/last event is allocated/freed.
2015-05-16udevd: on_worker - distinguish between EINTR and EAGAINTom Gundersen1-2/+5
EAGAIN means there are no more messages to read, so give up. EINTR means we got interrupted reading a message, so try again.
2015-05-16udevd: worker - use loop_write() rather than send()Tom Gundersen1-4/+8
When notifying the main daemon about event completion, make sure the message is sent successfully, and not interrupted.
2015-05-16util: loop_write - accept 0-length messageTom Gundersen1-3/+3
write() can send empty messages, so make sure loop_write() can do the same.
2015-05-16udevd: net - fix leak in .link configTom Gundersen1-3/+3
Path, Driver and Type are now strv rather than strings, so free them properly.
2015-05-15udev-ctrl: make _unref() always return NULLTom Gundersen1-27/+23
Bring this in line with the rest of the codebase.
2015-05-15units: make networkd pull in its own .busname unitTom Gundersen3-1/+9
The daemon requires the busname unit to operate (on kdbus systems), since it contains the policy that allows it to acquire its service name. This fixes https://bugs.freedesktop.org/show_bug.cgi?id=90287
2015-05-15tmpfiles: use lstat() instead of stat() when checking whether a file system ↵Lennart Poettering1-5/+6
object already exists
2015-05-15tmpfiles: don't fail if we cannot create a subvolume because a file system ↵Lennart Poettering1-6/+11
is read-only but a dir already exists anyway https://bugs.freedesktop.org/show_bug.cgi?id=90281
2015-05-15CODING_STYLE: document that EXIT_FAILURE and EXIT_SUCCESS should be usedLennart Poettering1-0/+3
2015-05-15CODING_STYLE: document best practices when initializing structsLennart Poettering1-0/+18
2015-05-15coredump: make sure we vacuum by defaultLennart Poettering2-4/+5
Only if both keep_free and max_use are actually 0 we can shortcut things and avoid vacuuming. If either are positive or -1 we need to execute the vacuuming. http://lists.freedesktop.org/archives/systemd-devel/2015-April/031382.html
2015-05-15socket-util: socket_address_parse() should not log errors on its ownLennart Poettering3-11/+21
Given that socket_address_parse() is mostly a "library" call it shouldn't log on its own, but leave that to its caller. This patch removes logging from the call in case IPv6 is not available but and IPv6 address shall be parsed. Instead a new call socket_address_parse_and_warn() is introduced which first invokes socket_address_parse() and then logs if necessary. This should fix "make check" on ipv6-less kernels: http://lists.freedesktop.org/archives/systemd-devel/2015-April/031385.html
2015-05-15core: Fix assertion with empty Exec*= pathsMartin Pitt2-1/+26
An Exec*= line with whitespace after modifiers, like ExecStart=- /bin/true is considered to have an empty command path. This is as specified, but causes systemd to crash with Assertion 'skip < l' failed at ../src/core/load-fragment.c:607, function config_parse_exec(). Aborting. Aborted (core dumped) Fix this by logging an error instead and ignoring the invalid line. Add corresponding test cases. Also add a test case for a completely empty value which resets the command list. https://launchpad.net/bugs/1454173
2015-05-15timedate: fix memory leak in timedatedCristian Rodríguez1-1/+1
$ /usr/lib/systemd/systemd-timedated (wait until auto-exit) ================================================================= ==396==ERROR: LeakSanitizer: detected memory leaks Direct leak of 928 byte(s) in 1 object(s) allocated from: #0 0x7f782f788db1 in __interceptor_calloc (/usr/lib64/libasan.so.2+0x96db1) #1 0x562a83ae60cf in bus_message_from_header src/libsystemd/sd-bus/bus-message.c:480 #2 0x562a83ae6f5a in bus_message_from_malloc src/libsystemd/sd-bus/bus-message.c:576 #3 0x562a83ad3cad in bus_socket_make_message src/libsystemd/sd-bus/bus-socket.c:915 #4 0x562a83ad4cfc in bus_socket_read_message src/libsystemd/sd-bus/bus-socket.c:1051 #5 0x562a83ab733f in bus_read_message src/libsystemd/sd-bus/sd-bus.c:1647 #6 0x562a83ab98ea in sd_bus_call src/libsystemd/sd-bus/sd-bus.c:2038 #7 0x562a83b1f46d in sd_bus_call_method src/libsystemd/sd-bus/bus-convenience.c:94 #8 0x562a83aab3e1 in context_read_ntp src/timedate/timedated.c:192 #9 0x562a83aae1af in main src/timedate/timedated.c:730 #10 0x7f782eb238c4 in __libc_start_main (/lib64/libc.so.6+0x208c4) Indirect leak of 77 byte(s) in 1 object(s) allocated from: #0 0x7f782f788f6a in realloc (/usr/lib64/libasan.so.2+0x96f6a) #1 0x562a83ad418a in bus_socket_read_message src/libsystemd/sd-bus/bus-socket.c:963 #2 0x562a83ab733f in bus_read_message src/libsystemd/sd-bus/sd-bus.c:1647 #3 0x562a83ab98ea in sd_bus_call src/libsystemd/sd-bus/sd-bus.c:2038 #4 0x562a83b1f46d in sd_bus_call_method src/libsystemd/sd-bus/bus-convenience.c:94 #5 0x562a83aab3e1 in context_read_ntp src/timedate/timedated.c:192 #6 0x562a83aae1af in main src/timedate/timedated.c:730 #7 0x7f782eb238c4 in __libc_start_main (/lib64/libc.so.6+0x208c4) Indirect leak of 2 byte(s) in 1 object(s) allocated from: #0 0x7f782f75493f in strdup (/usr/lib64/libasan.so.2+0x6293f) #1 0x562a83b0229b in bus_message_parse_fields src/libsystemd/sd-bus/bus-message.c:5382 #2 0x562a83ae7290 in bus_message_from_malloc src/libsystemd/sd-bus/bus-message.c:601 #3 0x562a83ad3cad in bus_socket_make_message src/libsystemd/sd-bus/bus-socket.c:915 #4 0x562a83ad4cfc in bus_socket_read_message src/libsystemd/sd-bus/bus-socket.c:1051 #5 0x562a83ab733f in bus_read_message src/libsystemd/sd-bus/sd-bus.c:1647 #6 0x562a83ab98ea in sd_bus_call src/libsystemd/sd-bus/sd-bus.c:2038 #7 0x562a83b1f46d in sd_bus_call_method src/libsystemd/sd-bus/bus-convenience.c:94 #8 0x562a83aab3e1 in context_read_ntp src/timedate/timedated.c:192 #9 0x562a83aae1af in main src/timedate/timedated.c:730 #10 0x7f782eb238c4 in __libc_start_main (/lib64/libc.so.6+0x208c4) SUMMARY: AddressSanitizer: 1007 byte(s) leaked in 3 allocation(s). This is due to missing _cleanup_bus_message_unref_ in context_read_ntp()
2015-05-15.gitignore: add GNU GLOBAL filesŁukasz Stelmach1-0/+4
2015-05-15generator: use fflush_and_check() where appropriateLennart Poettering1-3/+3
2015-05-15core: don't consider umask for SocketMode=Davide Bettio1-3/+0
https://bugs.freedesktop.org/show_bug.cgi?id=89248
2015-05-15CODING_STYLE: document alloca() DONTSLennart Poettering1-1/+11
2015-05-15core: Execute first boot presets in an enable-only preset-mode.Dimitri John Ledkov2-5/+1
This means any existing enabled units well be preserved and no pre-created symlinks will be removed. This is done on first boot, when the assumption is that /etc is not populated at all (no machine-id setup). For minimal containers that gives a significant first boot speed up, approximately ~20ms / ~16% in my trials.
2015-05-15networkd: don't try to turn on ipv6 forwarding if kernel lacks IPv6 supportLennart Poettering1-0/+5
http://lists.freedesktop.org/archives/systemd-devel/2015-May/031598.html
2015-05-15man: IPMasquerade only implies IPForward=ipv4Benedikt Morbach1-1/+1
at least that's what the code does.
2015-05-15networkd: don't touch global forwarding settingBenedikt Morbach2-30/+2
This reverts commit 43c6d5abacaebf813845934ec8d5e5ee3c431854 (and a small part of 4046d8361c55c80ab8577aea52523b9e6eab0d0c) It turns out we don't actually need to set the global ip_forward setting. The only relevant setting is the one on each interface. What the global toggle actually does is switch forwarding on/off for all currently present interfaces and change the default for new ones. That means that by setting the global ip_forward we - Introduce a race condition, because if the interface with IPForward=yes is brought up after one with IPForward=no, both will have forwarding enabled, because the global switch turns it on for all interfaces. If the other interface comes up first networkd correctly sets forward=0 and it doesn't get overridden. - Change the forwarding setting for interfaces that networkd is not configured to touch, even if the user disabled forwarding via sysctl, either globally or per-interface As forwarding works fine without this, as long as all relevant interfacest individually set IPForward=yes: just drop it This means that non-networkd interfaces use the global default while networkd interfaces default to off if IPForward isn't given.
2015-05-15systemctl: introduce --now for enable, disable and maskJan Synacek8-72/+114
https://bugs.freedesktop.org/show_bug.cgi?id=42940
2015-05-14nspawn: allow access to device nodes listed in --bind= and --bind-ro= switchesStefan Junker3-0/+29
https://bugs.freedesktop.org/show_bug.cgi?id=90385
2015-05-14test-bus-chat: various modernizationsLennart Poettering1-22/+10
2015-05-14sd-bus: fix memory leak in test-bus-chatCristian Rodríguez1-3/+1
Building with address sanitizer enabled on GCC 5.1.x a memory leak is reported because we never close the bus, fix it by using cleanup variable attribute.
2015-05-14units: fix typo in systemd-resolved.serviceLennart Poettering1-1/+1
There's no network.service unit, we actually mean network.target here. Reported by Fco. Eduardo Ramírez.
2015-05-14util: introduce memmem_safe() and make use of itLennart Poettering2-1/+16
GNU memmem() requires a nonnull first parameter. Let's introduce memmem_safe() that removes this restriction for zero-length parameters, and make use of it where appropriate. http://lists.freedesktop.org/archives/systemd-devel/2015-May/031705.html
2015-05-14util: use GNU comparison function prototype for qsort_safe()Lennart Poettering1-6/+6
2015-05-13networkd: remove dead initializationThomas Hindoe Paaboel Andersen1-2/+2