summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2013-04-01Do no isolate in case of emergency or severe problemsDr. Tilmann Bubeck
This patch changes local-fs.target and systemd-fsck to not use "isolate" when going into emergency. This fixes https://bugzilla.redhat.com/show_bug.cgi?id=810722 The motivation is, that when something wents wrong, we should keep everything as it is, to let the user fix the problem. When isolating we stop a lot of services and therefore change the system heavily so that it gets harder for the user to fix. An example is a crypted partition. When the fsck in a crypted partition fails, it previously used "emergency/start/isolate" which stops cryptsetup. Therefore if the user tries to fsck e.g. /dev/mapper/luks-356c20ae-c7a2-4f1c-ae1d-1d290a91b691 as printed by the failing fsck, then it will not find this device (because it got closed). So please apply this patch to let the user see the failing situation. Thanks! [zj: removed dead isolate param from start_target().] https://bugs.freedesktop.org/show_bug.cgi?id=49463 https://bugzilla.redhat.com/show_bug.cgi?id=810722
2013-04-01Always use our own MAX/MIN definitionsCristian Rodríguez
code in src/shared/macro.h only defined MAX/MIN in case they were not defined previously. however the MAX/MIN macros implemented in glibc are not of the "safe" kind but defined as: define MIN(a,b) (((a)<(b))?(a):(b)) define MAX(a,b) (((a)>(b))?(a):(b)) Avoid nasty side effects by using our own versions instead. Also fix the warnings derived from this change. [zj: - modify MAX3 macro to fix warning about _a shadowing _a, - do bootchart/svg.c too, - remove unused MIN3.]
2013-04-02update TODOLennart Poettering
2013-04-02shutdown: correctly wait for processes we killed in the killall spreeLennart Poettering
Previously we simply counted how many processes we killed and expected as many waitpid() calls to succeed. That however is incorrect to do. As we might kill processes that are not our immediate children, and as there might be left-over processes in the waitpid() queue from earlier the we might get more ore less waitpid() events that we expect. Hence: keep precise track of the processes we kill, remove the ones we get waitpid() for, and after each time we get SIGCHLD check if all others still exist. We use getpgid() to check if a PID still exists. This should fix issues with journald not setting journal files offline correctly on shutdown, because we'd too quickly proceed from SIGTERM to SIGKILL because some left-over process was in our waitpid() queue.
2013-04-01cryptsetup: add RequiresMountsFor for keyfileThomas Weißschuh
This ensures that the keyfile is available during the opening of the encrypted device. Also dropped the explicit ordering Before=local-fs.target, as the containers are ordered implicitly by their content.
2013-04-01cryptsetup: RequiresMountsFor if source is a fileThomas Weißschuh
Fixes: https://bugzilla.novell.com/show_bug.cgi?id=730496 https://bugs.freedesktop.org/show_bug.cgi?id=60821
2013-04-01core/socket: log errors when starting socket for this socketZbigniew Jędrzejewski-Szmek
When showing an error like 'Socket service not loaded', the error won't show up in the status for the socket, unless it is marked as SYSTEMD_UNIT=*.socket. Marking it as SYSTEMD_UNIT=*.service, when the service is non-existent, is not useful.
2013-04-01Add AllowIsolate=yes to snapshotsOleksii Shevchuk
2013-04-01stdio-bridge: rework stdio bridge to use libsystemd-busLennart Poettering
2013-04-01bus: always return something in sd_bus_get_timeout()Lennart Poettering
2013-04-01bus: be more careful when determining credential dataLennart Poettering
As it turns out SCM_CREDENTIALS is not always supported on socketpair(), so let's also try SO_PEERCRED then.
2013-04-01bus: when the first char a server receives isn't the NUL byte immediately failLennart Poettering
2013-04-01bus: ignore the passed UID on EXTERNAL auth if ANONYMOUS is allowedLennart Poettering
2013-04-01bus: when reading a message from the socket, make sure to note down the sizeLennart Poettering
2013-04-01bus: reuse sd_is_socket() callLennart Poettering
2013-04-01bus: fall back to readv/writev if recvmsg/sendmsg don't workLennart Poettering
2013-04-01bus: allow two different fds for input/output in sd_bus_set_fd()Lennart Poettering
This is useful so that we can speak D-Bus over a FIFO pair such as stdin+stdout.
2013-03-31Partially revert e62d8c394474Zbigniew Jędrzejewski-Szmek
The ~80 chars per line part wasn't well received.
2013-03-31units/user: default.target must be isolatableZbigniew Jędrzejewski-Szmek
... Activating default unit: default.target Default target could not be isolated, starting instead: Operation refused, unit may not be isolated.
2013-03-31activate: do not leak envp on errorZbigniew Jędrzejewski-Szmek
2013-03-31journalctl: reword error messageZbigniew Jędrzejewski-Szmek
Sentence seemed to suggest that all three conditions must be true.
2013-03-31tmpfiles: fix obscure leak in error pathZbigniew Jędrzejewski-Szmek
The leak was because of the single return in midst of all 'goto finish'es. Using automatic cleanup simplifies things.
2013-03-31ModernizationZbigniew Jędrzejewski-Szmek
Use _cleanup_ and wrap lines to ~80 chars and such.
2013-03-31strbuf: replace quick sort with bubble sortZbigniew Jędrzejewski-Szmek
No need to call the heavy artillery, when the original array is sorted. Reduces complexity from n² log n to n log n, where n is the number of items in the array, not very large, but still.
2013-03-31strbuf: fix leak on memory errorZbigniew Jędrzejewski-Szmek
Not very likely, but let's fix it for the matter of principle.
2013-03-31bootchart: fix a potential buffer overrunZbigniew Jędrzejewski-Szmek
If the configured number of samples was close to MAXSAMPLES, the samples buffer could be overrun: - by 1, because of off-by-one in the condition (samples > arg_samples_len), and - by many in case of an overrun, because the number of samples to capture was increased, instead of being decreased. Simplify things by converting to a normal for-loop. In store.c: change buffer size from 4095 to 4096. 4095 is a strange number.
2013-03-31bootchart: split out option parsing from main()Zbigniew Jędrzejewski-Szmek
2013-03-31journald: check return value of strappendZbigniew Jędrzejewski-Szmek
2013-03-31bus: check return value from bus_type_get_alignment/sizeZbigniew Jędrzejewski-Szmek
2013-03-31nspawn, machine-id-setup: warn if read-only mount call failsZbigniew Jędrzejewski-Szmek
They are not crucial, but they shouldn't fail.
2013-03-31nss-myhostname: use _cleanup_ and split function into twoZbigniew Jędrzejewski-Szmek
The triply nested loop is just too much. Let's split out the middle loop's body, so the whole thing is easier to read. Also modernize the style a bit, using structure initialization to avoid memset and such.
2013-03-31accelerometer: remove dead if and modernizeZbigniew Jędrzejewski-Szmek
Based on a coverity warning.
2013-03-31execute: convert secure bits into mask properlyZbigniew Jędrzejewski-Szmek
C.f. http://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=5975c725dfd6f7d36f493ab1453fbdbd35c1f0e3
2013-03-31Remove some dead codeZbigniew Jędrzejewski-Szmek
Based on coverity report.
2013-03-31journal-gatewayd: query PID 1 for virtalizationLennart Poettering
Since journal-gatewayd is now running unprivileged, and detecting virtalization requires privileges, query PID1 via D-Bus for the used virtualization. This is also the first time we use libsystemd-bus for more than just testing. https://bugs.freedesktop.org/show_bug.cgi?id=62173
2013-03-31bus: rename sd_bus_get_peer() to sd_bus_get_server_id()Lennart Poettering
This function always returns the server side ID. The name suggested it was actually always the peer's ID, but that's not correct if the call is called on a server bus context. Hence, let's correct the name a bit.
2013-03-31bus: s/sd_message_handler_t/sd_bus_message_handler_t/gLennart Poettering
2013-03-31bus: parse matches locally and allow registration of callbacks for themLennart Poettering
This includes code to parse and split up match strings which will also be useful to calculate bloom filter masks when the time comes.
2013-03-30bus: add missing test-bus-server.cLennart Poettering
2013-03-30bus: implement server mode, and anonymous authenticationLennart Poettering
2013-03-30prioq: consider a NULL prioq emptyLennart Poettering
2013-03-30bus: if we recieve fds but fd passing is off, consider this an errorLennart Poettering
2013-03-30bus: enable SO_PASSCRED only if we are not connected to a busLennart Poettering
2013-03-30bus: properly set up bus connections with sd_bus_set_exec()Lennart Poettering
2013-03-30bus: consider it an error if the first message we get on the bus is not a ↵Lennart Poettering
reply to HELLO
2013-03-30bus: add C++ wrappers to public header filesLennart Poettering
2013-03-30dbus: let's make this const array staticLennart Poettering
2013-03-30udev: extern on functions is pointlessLennart Poettering
2013-03-30unit: no need to export variables if we can avoid itLennart Poettering
2013-03-30TODOLennart Poettering