summaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2015-04-23util: Fix assertion in split() on missing 'Martin Pitt
When parsing a unit with a trailing slash after an escaped line break, like ExecStart=/bin/echo 'foo \ bar' the split() function (through config_parse()) asserted and crashed pid 1: Assertion 'current[*l + 1] == quotechars[0]' failed at ../src/shared/util.c:583, function split(). Aborting. Fix this by returning an error in this case ("trailing garbage"). Add corresponding test case. Also fix the missing "unit" argument of config_parse_exec() in the comment. https://launchpad.net/bugs/1447243
2015-04-23core: explicitly specify credentials for direct connections, tooLennart Poettering
So far we authenticate direct connections primarily at connection time, but let's also do this for each method individually, by attaching the creds we need for that right away.
2015-04-22journalctl: rework code that checks whether we have access to /var/log/journalLennart Poettering
- fix some memory leaks on error conditions - handle all error cases properly, and log about failures - move HAVE_ACL and no-HAVE_ACL code closer to each other
2015-04-22udev: Fix ping timeout when settle timeout is 0Nir Soffer
When running udevadm settle --timeout=0, the ping always times out, and udevadm will return 0 without checking the queue state. (David: Use a reasonable timeout to still get the barrier provided by ctrl-ping)
2015-04-22tmpfiles: use an ordered hashmap for the tmpfiles itemsLennart Poettering
We should try to execute them in the same order they appear in the configuration files, as it is documented. Hence move to an ordered hashmap. (Note though, that this still doesn't execute them completely in order: we will still apply non-glob lines before glob-lines, and reorder lines prefixing each other and that apply to the same paths). http://lists.freedesktop.org/archives/systemd-devel/2015-March/029055.html
2015-04-22btrfs-util: support recursive removal of read-only subvolumesLennart Poettering
When deleting a read-only subsvolume with a sub-subvolume, we need to mark it writable first, otherwise the removal will not work.
2015-04-22nspawn: don't inherit read-only flag from disk image if --ephemeral is usedLennart Poettering
When --ephemeral is used there's no need to keep the image read-only, so let's not do that then.
2015-04-22btrfs-util: fix creating recursive read-only snapshotsLennart Poettering
When creating recursive read-only snapshots we need to mark the snapshot writable immediately before creating subsnapshots within it, otherwise the operation for it will fail.
2015-04-22kmod-setup: load ip_tables kmod at bootLennart Poettering
The module is currently no auto-loadable (and this is unlikely to change anytime soon, given it's API is via getsockopt/setsockopt). It is needed by networkd and nspawn currently. Users who really don't like the module to be loaded have the option to blacklist it still, or not compile it at all. But for all others this should make things work out-of-the-box.
2015-04-22sd-bus: handle ppid=0 more gracefully (which happens for pid=1)Lennart Poettering
2015-04-22journal: don't force FS_NOCOW_FL on new journal files, but warn if it is missingLennart Poettering
This way users have the freedom to set or unset the FS_NOCOW_FL flag on their journal files by setting it on the journal directory. Since our default tmpfiles configuration now sets this flag on the directory the flag is set by default on new files, however people can opt-out of this by masking the tmpfiles file for it.
2015-04-22btrfs-util: be more careful when invoking btrfs file system ioctlsLennart Poettering
If we get passed an fd that does not refer to a regular file or directory, we should not issue btrfs ioctls on it, since it might end up in a device driver or similar (note that DRM for example uses the same ioctl numbers as some file system ioctls). Hence, let's make sure to always check if something is a regular file or directory, or is on btrfs before invoking the respective ioctls. It's better to be safe than sorry.
2015-04-22btrfs-util: introduce btrfs_is_filesystem() and make use of it where appropriateLennart Poettering
Let's unify the code that checks whether an fd is on btrfs a bit. (Also, rename btrfs_is_snapshot() to btrfs_is_subvol(), since that's usually how this is referred to in our code)
2015-04-22util: make sure fd refers to regular file or directory when applying file ↵Lennart Poettering
attributes Before invoking file system ioctls we need to make sure that the specified fd actually refers to a file system object, and not a device node or similar. Otherwise we might by accident invoke unrelated device driver ioctls. For example, DRM ioctls use the same ioctl numbers as the various file system ioctls.
2015-04-22efi-boot-generator: set automount expire for /bootKay Sievers
This should make the Linux vfat handling less fragile, by unmounting the idle mount and causing to sync the entire file system to disk. On my machines, The FAT file system at /boot regularly gets corrupted with unclean shutdowns, rendering the machines unbootable. Either the VFS write-back behaviour or the vfat driver itself is just not reliable enough to be/stay mounted at every bootup. Because of that, the automount expiry was on top of my personal wish list. Thanks a lot Michael!
2015-04-21automount: remove unused variableThomas Hindoe Paaboel Andersen
2015-04-21sd-bus: expose ppid fieldLennart Poettering
kdbus has been passing us the ppid file for a while, actually make use of it.
2015-04-21build-sys: move systemd.pc from pkgconfiglibdir back into pkgconfigdatadirLennart Poettering
The original idea of systemd.pc was to contain arch-independent system and systemd information. By exposing libdir as part of the fields (added in eb39a6239c631873db62f6a942e6cb3dab0a2db4), it started to carry arch-dependent data, thus breaking multilib systems. It was then moved to pkgconfiglibdir to deal with this (in aec432c6134146e138124c4130be2ee89dca07fa), but actually the right approach is to simply not include libdir in the .pc file at all. THis patch hence more or less reverts both commits again, and moves the .pc file back into pkgconfigdatadir. As alternative for querying the systems primary libdir there's now "systemd-path system-library-arch", hence a more correct alternative exists for querying this variable from the .pc file.
2015-04-21core: make unit deserialization more defensiveLennart Poettering
2015-04-21automount: various smaller fixesLennart Poettering
2015-04-21automount: add expire supportMichael Olbrich
2015-04-21test: test-path and test-execute only need units in test/Ronny Chevalier
2015-04-21random-seed: minor cleanups, in particular when it comes to loggingLennart Poettering
2015-04-21tree-wide: get rid of more strerror() callsLennart Poettering
2015-04-21networkd-fdb: indentation/whitespace fixesLennart Poettering
2015-04-21networkd: improve how networkd logs thingsLennart Poettering
This makes adds a couple of fixes: - Introduces log_netdev_error_errno() and friends, which takes an error number, and matches what log_link_error_errno() and friends do. - Replaces a lof ot strerror() usage with log_netdev_error_errno(), log_link_error_errno() and log_erro_errno() - Uppercases the first character of many log messages, after all this is supposed to be english language - Drops manual negating of error codes before passing them to log functions, the log functions all do that internally anyway. Some other minor fixes. Behaviour should not change really.
2015-04-21log: move log_syntax() into src/shared/log.c, and make it more similar to ↵Lennart Poettering
the other log functions
2015-04-21udevadm: enclose invocation of unlinkat() with a (void) castLennart Poettering
Let's make Coverity happy about this one.
2015-04-21sd-device: set_syspath - return ENODEV when passed something that is not a ↵Tom Gundersen
device
2015-04-21networkd man: fix man and config name.Susant Sahani
Rename bond confs and man as well. [tomegun: dropped a stray comma]
2015-04-21udev: keyboard-builtin: Add support for setting IBM trackpoint sensitivityHans de Goede
IBM / Lenovo trackpoints allow specifying a sensitivity setting through a ps/2 command, which changes the range of the deltas sent when using the trackpoint. On some models with normal usage only deltas of 1 or 2 are send, resulting in there only being 2 mouse cursor movement speeds, rather than the expected fluid scale. Changing the sensitivity to a higher level than the bootup default fixes this. This commit adds support for setting a POINTINGSTICK_SENSITIVITY value in hwdb to allow changing the sensitivity on boot through udev / hwdb.
2015-04-21service: transition through SIGKILL states only when SIGKILL is enabledLennart Poettering
If there's no remaining process to kill, skip the SIGKILL states if SIGKILL is disabled. Effectively this doesn't change much since if there's nothing to kill with SIGTERM or SIGABRT then there's also nothing to kill with SIGKILL. However, this avoids confusion with the state engine jumping through SIGKILL states for no reason...
2015-04-21service: timeout on SIGABRT should also be considered an error to rememberLennart Poettering
2015-04-21service: make more use of IN_SET() macroLennart Poettering
2015-04-21service: list states always in the same orderLennart Poettering
2015-04-21service: make kill operation mapping explicitLennart Poettering
2015-04-21networkd: fix confusion between log_netdev_error() but log_warning_netdev()Lennart Poettering
We should always name the object first, the level second, like everywhere else in the sources.
2015-04-21tmpfiles: consider an argument of "-" as non-specifiedLennart Poettering
2015-04-21sd-bus: when augmenting creds, remember which ones were augmentedLennart Poettering
Also, when we do permissions checks using creds, verify that we don't do so based on augmented creds, as extra safety check.
2015-04-21sd-bus: augmenting cgroups-based creds when we have the cgroup path already ↵Lennart Poettering
is free
2015-04-21sd-bus: when augmenting creds, don't override any creds in any caseLennart Poettering
Let's better be safe than sorry.
2015-04-21sd-bus: when copying creds objects, make sure we copy even the implicit well ↵Lennart Poettering
known names
2015-04-21dhcp6: remove unnecessary if checkLennart Poettering
2015-04-20networkd: Add support for bond option.Susant Sahani
This patch adds configurational support for bond option. Test conf: bond.netdev --- [NetDev] Name=bond1 Kind=bond [Bond] ArpAllTargets=all PrimaryReselect=better ArpIntervalSec=10s ArpIpTargets= 192.168.8.102 192.168.8.101 192.168.8.102 --- $cat /proc/net/bonding/bond1 Ethernet Channel Bonding Driver: v3.7.1 (April 27, 2011) Bonding Mode: load balancing (round-robin) MII Status: up MII Polling Interval (ms): 0 Up Delay (ms): 0 Down Delay (ms): 0 ARP Polling Interval (ms): 10000 ARP IP target/s (n.n.n.n form): 192.168.8.100, 192.168.8.101, 192.168.8.102
2015-04-20networkd vxlan: Add support for enabling UDP checksumsSusant Sahani
Add UDPCheckSum option to enable transmitting UDP checksums when doing VXLAN/IPv4. Add UDP6ZeroChecksumRx, and UDP6ZeroChecksumTx options to enable sending zero checksums and receiving zero checksums in VXLAN/IPv6 [tomegun: rebase manpage due to whitespace changes]
2015-04-20udev: settle should return immediately when timeout is 0Nir Soffer
udevadm manual says: A value of 0 will check if the queue is empty and always return immediately. However, currently we ignore the deadline if the value is 0, and wait without any limit. Zero timeout behaved according to the documentation until commit ead7c62ab7 (udevadm: settle - kill alarm()). Looking at this patch, it seems that the behavior change was unintended. This patch restores the documented behavior.
2015-04-20util: fix typoRaul Gutierrez S
2015-04-18exit-status: Fix "NOTINSSTALLED" typoMartin Pitt
2015-04-17cryptsetup: Implement offset and skip optionsMartin Pitt
These are useful for plain devices as they don't have any metadata by themselves. Instead of using an unreliable hardcoded device name in crypttab you can then put static metadata at the start of the partition for a stable UUID or label. https://bugs.freedesktop.org/show_bug.cgi?id=87717 https://bugs.debian.org/751707 https://launchpad.net/bugs/953875
2015-04-17sd-device: simplify enumerator hacksDavid Herrmann
Boolean arithmetic is great, use it! if (a && !b) return 1; if (!a && b) return -1, is equivalent to if (a != b) return a - b; Furthermore: r = false; if (condition) r = true; is equivalent to: r = condition;