summaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2014-04-21service: add support for reboot argument when triggered by StartLimitAction=Michael Olbrich
When rebooting with systemctl, an optional argument can be passed to the reboot system call. This makes it possible the specify the argument in a service file and use it when the service triggers a restart. This is useful to distinguish between manual reboots and reboots caused by failing services.
2014-04-21systemctl: delete REBOOT_PARAM_FILE if no parameter is specifiedMichael Olbrich
And move it to sperate function.
2014-04-21implement a union to pad out file_handleDave Reisner
Cases where name_to_handle_at is used allocated the full struct to be MAX_HANDLE_SZ, and assigned this size to handle_bytes. This is wrong since handle_bytes should describe the length of the flexible array member and not the whole struct. Define a union type which includes sufficient padding to allow assignment of MAX_HANDLE_SZ to be correct.
2014-04-21condense assignment and path_kill_slashes callsDave Reisner
2014-04-20doc: fix items' names in PORTING-DBUS1Lukasz Skalski
2014-04-20Remove duplicate includesBas van den Berg
2014-04-21silence warningsThomas Hindoe Paaboel Andersen
2014-04-20networkd: link - add explicit unmanaged stateTom Gundersen
2014-04-20networkd: link - set mac addresses when starting clientsTom Gundersen
MAC addreses are also set when NEWLINK messages are receieved, but only if the clients have already been initialized.
2014-04-20sd-dhcp-client: log ifindex and mac address when startingTom Gundersen
2014-04-20networkd: link - log changes in some common link flagsTom Gundersen
2014-04-20networkd: link - use IFF_DORMANT instead of IFF_RUNNINGTom Gundersen
Should be no functional change, but avoids spurious log messages when in operstate UNKNOWN and !IFF_LOWER_UP.
2014-04-20networkd: link - make debug logging a bit more readableTom Gundersen
Drop leading zeros which will never be used when printing the link flags.
2014-04-20udev: link-config - treat any non-random mac address as persistentTom Gundersen
The address may be already changed by other processes, or set when creating the netdev from userspace.
2014-04-20sd-rtnl: log when queues are exhaustedTom Gundersen
2014-04-19cryptsetup: copy value, not key for (rd.)luks.keyMatthew Monaco
2014-04-19Handle Unix domain socket connections from outside our namespace v2Zbigniew Jędrzejewski-Szmek
This is a second attempt at 9754d56, reverted in 2f20a8e, because I lost a 'break;' when moving chunks around.
2014-04-19networkd: manager - add a bit of debug output to udev ADD eventsTom Gundersen
2014-04-19networkd: link - track interface renamesTom Gundersen
2014-04-19sd-rtnl: socet_read_message - make sure we only shrink the partial rqueue ↵Tom Gundersen
when processing multi-part message
2014-04-19network: implement masking of .link, .network and .netdev filesTom Gundersen
2014-04-19networkd: netdev - give up early when setting already set ifindexTom Gundersen
We may receive RTM_NEWLINK messages with missing LINKINFO after the initial NEWLINK message, don't bother verifying these, just drop out early after checking that the ifindex is not in conflict.
2014-04-19networkd: netdev - verify name of newlink messagesTom Gundersen
2014-04-19networkd: netdev - set predictable mac address when creating netdevTom Gundersen
2014-04-19networkd: tie links to rtnl rather than udevTom Gundersen
This essentially swaps the roles of rtnl and udev in networkd. After this change libudev is only used for waiting for udev to initialize devices and to get udev-specific information needed for some [Match] attributes. This in particular simplifies the code in containers where udev is not really useful, but also simplifies things and reduces round-trips in the non-container case.
2014-04-19nss-myhostname: port to sd-rtnlTom Gundersen
2014-04-19sd-rtnl: message - expose DUMP flag in the apiTom Gundersen
2014-04-19sd-rtnl: add multi-part message testTom Gundersen
2014-04-19sd-rtnl: message - concatenate multi-part messages from different packetsTom Gundersen
2014-04-19sd-rtnl: message - don't put NULL message on rqueueTom Gundersen
If nothing interesting was receieved we should not put anything on the queue.
2014-04-19sd-rtnl: message - make room for all pending messages, not just the firstTom Gundersen
Also, don't actually read any of the message when peeking, just get its length.
2014-04-19Revert "Handle Unix domain socket connections from outside our namespace"Kay Sievers
This reverts commit 9754d56e9b21bfe89fc18f47987d6bef491b8521. It causes a crash in PID1: Apr 19 13:49:32 lon systemd[1]: Code should not be reached 'Unhandled socket type.' at src/core/socket.c:684, function instance_from_socket(). Aborting. Apr 19 13:49:32 lon systemd[1]: Caught <ABRT>, dumped core as pid 336. Apr 19 13:49:32 lon systemd[1]: Freezing execution.
2014-04-17core: minor typo fixAli H. Caliskan
2014-04-16delta: do not use unicode chars in C localeZbigniew Jędrzejewski-Szmek
https://bugzilla.redhat.com/show_bug.cgi?id=1088418
2014-04-16install: create_symlink() check unlink() return valueDjalal Harouni
create_symlink() do not check the return value of unlink(), this may confuse the user. Before the unlink() call we check the 'force' argument. If it is not set we fail with -EEXIST, otherwise we unlink() the file, therefore the next symlink() should not fail with -EEXIST (do not count races...). However since callers may not have appropriate privileges to unlink() the file we lose the -EPERM or any other errno code of unlink(), and return the -EEXIST of the next symlink(). Fix this by checking unlink() results. Before: $ systemctl --force --root=~/container-03 set-default multi-user.target Failed to set default target: File exists After: $ systemctl --force --root=~/container-03 set-default multi-user.target Failed to set default target: Permission denied
2014-04-16systemctl: allow to change the default target without the --force switchDjalal Harouni
Currently "systemctl set-default" will fail to change the default target due to the 'default.target' being a symlink which is always the case. To work around this, the user must specify the "--force" switch to be able to overwrite the existing symlink. This is clearly a regression that was introduced by commit 718db96199e since it worked before without the "--force" switch and the man pages do not mention that you need to specify it. It is expected that this is a symlink. So just explicity set the force flag to make it work again. https://bugs.freedesktop.org/show_bug.cgi?id=76623 Reported-by: <code@progandy.de>
2014-04-16Handle Unix domain socket connections from outside our namespaceEelco Dolstra
NixOS uses Unix domain sockets for certain host <-> container interaction; i.e. the host connects to a socket visible in the container's directory tree, where the container uses a .socket unit to spawn the handler program on demand. This worked in systemd 203, but in 212 fails with "foo.socket failed to queue service startup job (Maybe the service file is missing or not a template unit?): No data available". The reason is that getpeercred() now returns ENODATA if it can't get the PID of the client, which happens in this case because the client is not in the same PID namespace. Since getpeercred() is only used to generate the instance name, this patch simply handles ENODATA by creating an instance name "<nr>-unknown". [zj: reorder clauses and remove (unsigned long) casts.]
2014-04-16test-path-util: fix running with separate build dirZbigniew Jędrzejewski-Szmek
test-path-utils attempts to find itself, but if the binary is not in current directory, the test would fail.
2014-04-16sysctl: replaces some slashes with dotsZbigniew Jędrzejewski-Szmek
It turns out that plain sysctl understands a.b/c syntax to write to /proc/sys/a/b.c. Support this for compatibility. https://bugs.freedesktop.org/show_bug.cgi?id=77466
2014-04-16systemctl: add --recursive for list-timersThomas Hindoe Paaboel Andersen
2014-04-16systemctl: add --recursive for list-socketsThomas Hindoe Paaboel Andersen
2014-04-14bus-proxy: remove unused variableThomas Hindoe Paaboel Andersen
2014-04-14cgls: avoid writing an unused valueThomas Hindoe Paaboel Andersen
silences a build-scan warning for the unused value in r
2014-04-14timedatectl: avoid using uninitialized varThomas Hindoe Paaboel Andersen
sec is not set if have_time is false so avoid using it. have_time was introduced in 9ff09bcb86fb125768667aca9bc0b10b1745370a but only the first uses for sec were covered Found with scan-build
2014-04-14networkd: link - make state changing logging a bit less verboseTom Gundersen
2014-04-14sd-rtnl: message_addr - allow dumping of messagesTom Gundersen
2014-04-14sd-rtnl: socket_read - use a read bufferTom Gundersen
Rather than allocating/freeing memory for each message read, keep a global read buffer in the rtnl object. Also, rather than using a fixed size, peek at the pending message header to get the message size and reallocate as necessary.
2014-04-14sd-rtnl: multi-part message - store as linked-list rather than independent ↵Tom Gundersen
messages This means the API can stay the same as for single-part messages by simply passing the head message around. Unrefing the head of the linked list unrefs the whole list.
2014-04-14sd-rtnl: message_addr - expose a few more gettersTom Gundersen
2014-04-14networkd: link - ignore missing MAC address from NEWLINK messageTom Gundersen
The kernel may broadcast such messages, simply discard them.