summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2015-09-07machined: improve error message when trying to get a bus in bus-less containersLennart Poettering
Now that we get useful error messages from sd-bus for container connections, let's make use of this and report better errors back to machined clients. Fixes #685.
2015-09-07sd-bus: when connecting to a container AF_UNIX bus, return errorLennart Poettering
When forking of a child process for connecting to a container, pass the preicse connection error to the calling process. We already did this correctly for kdbus busses, let's do so for dbus1 busses, too.
2015-09-07Merge pull request #1189 from poettering/unit-startDaniel Mack
unit: move "not supported" check after condition check in unit_start()
2015-09-07unit: move "not supported" check after condition check in unit_start()Lennart Poettering
Make sure we always check conditions before checking whether the unit type is supported in unit_start(), since condition checks are "clean errors", while "not supported" errors are fatal. This cleans up the boot output of systemd in containers, where a lot of NOTSUPP lines were shown befor this fix. This partially reverts 8ff4d2ab0d4758e914aea6d86154d85f2b2c787f which reorder the checks.
2015-09-07NEWS: fix typosDaniel Mack
2015-09-07update NEWSLennart Poettering
2015-09-07Merge pull request #1178 from poettering/gpt-auto-fixesDaniel Mack
handle LUKS root partitions better in gpt-auto, plus other fixes
2015-09-07Merge pull request #1183 from dvdhrm/cpenameLennart Poettering
man: clarify wording of os-release.CPE_NAME
2015-09-07Merge pull request #1182 from martinpitt/masterDavid Herrmann
tests: Skip test-cgroup-util test_mask_supported() when not running under systemd
2015-09-07man: clarify wording of os-release.CPE_NAMEDavid Herrmann
We expect the CPE_NAME to be formatted in URI binding syntax. Make that clear in the documentation. Furthermore, the CPE-spec has been taken over by NIST, so adjust the links as well. Reported by: Ben Harris <bjh21@cam.ac.uk>
2015-09-07tests: Skip test-cgroup-util test_mask_supported() when not running under ↵Martin Pitt
systemd Commit 5f4c5fef6 introduced this new test case, but this does not work in build chroots where cgroupfs is not mounted. So skip the test if systemd is not running.
2015-09-07Merge pull request #1181 from evverx/update-systemd-analyze-completionDaniel Mack
shell-completion: update systemd-analyze bash-completion
2015-09-07shell-completion: update systemd-analyze bash-completionEvgeny Vereshchagin
* Change --no-man to --man (see dad29df) * --{from,to}-pattern require arg
2015-09-07Merge pull request #1179 from poettering/sd-event-sigchld-fixTom Gundersen
sd-event: make sure to create a signal queue for the right signal
2015-09-07Merge pull request #1165 from poettering/nspawn-filesTom Gundersen
various fixes to the core, logind, machined, nspawn
2015-09-07sd-event: make sure to create a signal queue for the right signalLennart Poettering
We should never access the "signal" part of the event source unless the event source is actually for a signal. In this case it's a child pid handler however, hence make sure to use the right signal. This is a fix for PR #1177, which in turn was a fix for 9da4cb2be260ed123f2676cb85cb350c527b1492.
2015-09-07systemctl: a number of cleanups regarding error handling in systemctlLennart Poettering
2015-09-07gpt-auto: minor simplificatin handling the no-auto GPT flagLennart Poettering
Let's query the flags only once, and document why we ignore it for the ESP.
2015-09-07gpt-auto: try to handle LUKS root partitions betterLennart Poettering
If the root file system is located on an encrypted root disk, we'll not find the GPT partition table for it. Let's fix that by following the slaves/ symlinks in /sys for the device. We only handle devices having exactly one backing device. Also see: #1167
2015-09-07Merge pull request #1168 from poettering/readme-kernel-versionDaniel Mack
README: bump minimal required kernel version
2015-09-07Merge pull request #1177 from phomes/sd-event-bug-fixDaniel Mack
sd-event: fix call to event_make_signal_data
2015-09-07NEWS: add more content to both the 225 and 226 NEWS sectionLennart Poettering
2015-09-06sd-event: fix call to event_make_signal_dataThomas Hindoe Paaboel Andersen
This looks like a typo from commit 9da4cb2b where it was added.
2015-09-06Merge pull request #1174 from mbiebl/remove-sphinx-leftoverLennart Poettering
build-sys: remove sphinx binary from configure summary
2015-09-06Merge pull request #1176 from piotrdrag/masterLennart Poettering
Updated Polish translation
2015-09-06Updated Polish translationPiotr Drąg
2015-09-06build-sys: remove sphinx binary from configure summaryMichael Biebl
We no longer use sphinx as part of the build process so remove it from the configure summary as well. This is a leftover from commit 2799e519cabb6dfa99341b9a56ebd4dc2a4ec22a.
2015-09-06README: bump minimal required kernel versionLennart Poettering
We generally try to support 2y old kernels, which allows us bump the minimal required version to 3.11 now. Also, clarify that support for the unified cgroup hierarchy requires 4.2 or newer.
2015-09-06Merge pull request #1153 from evverx/dot-alias-handlingLennart Poettering
analyze: add "alias" handling to dot subcommand
2015-09-06analyze: add "alias" handling to dot subcommandEvgeny Vereshchagin
`systemd-analyze dot default.target` works fine
2015-09-06Merge pull request #1159 from AnchorCat/polkit-details/v2Lennart Poettering
Provide unit name and operation in manage-units polkit checks (v2)
2015-09-06Merge pull request #1162 from dvdhrm/bus-recursive-nodesLennart Poettering
sd-bus: make introspection data non-recursive
2015-09-06units: make sure that .nspawn files override the default settings in ↵Lennart Poettering
systemd-nspawn@.service
2015-09-06nspawn: add new .nspawn files for container settingsLennart Poettering
.nspawn fiels are simple settings files that may accompany container images and directories and contain settings otherwise passed on the nspawn command line. This provides an efficient way to attach execution data directly to containers.
2015-09-06Merge pull request #1161 from dvdhrm/include-order2Lennart Poettering
CODING_STYLE: mandate alphabetical include order (v2)
2015-09-05Merge pull request #1160 from dvdhrm/bus-userKay Sievers
sd-bus: derive uid from cgroup if possible
2015-09-05machine: make sure to call unlockpt() even for local host pty connectionsLennart Poettering
This fixes breakage for local host pty handling, introduced in 395745ba533ac91fe118f43ec83f13a752c0b473. Fixes #1139
2015-09-05logind: make scope of wall message handling smallerLennart Poettering
2015-09-05unit: make unit_can_start() more accurateLennart Poettering
This funciton is exposed via CanStart on the bus, and should be as accurate as possible. Hence: make sure to return false for units of unit types not supported on the system, and for unit types where configuration failed to load. Also see #1105.
2015-09-05core: don't use uninitialized errnoLennart Poettering
2015-09-05machine: clarify that /var/lib/containers is legacyLennart Poettering
2015-09-05sd-bus: make introspection data non-recursiveDavid Herrmann
Currently, our introspection data looks like this: <node> <interface name="org.freedesktop.DBus.Peer"> ... </interface> <interface name="org.freedesktop.DBus.Introspectable"> ... </interface> <interface name="org.freedesktop.DBus.Properties"> ... </interface> <node name="org"/> <node name="org/freedesktop"/> <node name="org/freedesktop/login1"/> <node name="org/freedesktop/login1/user"/> <node name="org/freedesktop/login1/user/self"/> <node name="org/freedesktop/login1/user/_1000"/> <node name="org/freedesktop/login1/seat"/> <node name="org/freedesktop/login1/seat/self"/> <node name="org/freedesktop/login1/seat/seat0"/> <node name="org/freedesktop/login1/session"/> <node name="org/freedesktop/login1/session/self"/> <node name="org/freedesktop/login1/session/c1"/> </node> (ordered alphabetically for better visibility) This is grossly incorrect. The spec says that we're allowed to return non-directed children, however, it does not allow us to return data recursively in multiple parents. If we return "org", then we must not return anything else that starts with "org/". It is unclear, whether we can include child-nodes as a tree. Moreover, it is usually not what the caller wants. Hence, this patch changes sd-bus to never return introspection data recursively. Instead, only a single child-layer is returned. This patch relies on enumerators to never return hierarchies. If someone registers an enumerator via sd_bus_add_enumerator, they better register sub-enumerators if they support *TRUE* hierarchies. Each enumerator is treated as a single layer and not filtered. Enumerators are still allowed to return nested data. However, that data is still required to be a single hierarchy. For instance, returning "/org/foo" and "/com/bar" is fine, but including "/com" or "/org" in that dataset is not. This should be the default for enumerators and I see no reason to filter in sd-bus. Moreover, filtering that data-set would require to sort the strv by path and then do prefix-filtering. This is O(n log n), which would be fine, but still better to avoid. Fixes #664.
2015-09-05TODO: update networkd sectionDavid Herrmann
Remove two freshly implemented features, and add TSO support as a new one.
2015-09-05CODING_STYLE: mandate alphabetical include orderDavid Herrmann
systemd-internal headers must not rely on include order. That means, they either must contain forward-declarations of used types/functions, or they must include all dependencies on their own. Therefore, there is no reason to mandate an include order on the call-side. However, global includes should always be ordered first. We don't want local definitions to leak into global includes, possible changing their behavior. Apparently, namespacing is a complex problem that people are incapable of implementing properly.. Apart from "global before local", there is no reason to mandate a random include order (which we happen to do right now). Instead, mandate alphabetical ordering. The current rules do not have any benefit at all. They neither reduce include-complexity, nor allow easy auditing of include files. But with alphabetical ordering, we get duplicate-detection for free, it gets *much much* easier to figure out whether a header is already included, and it is trivial to add new headers.
2015-09-05sd-bus: derive uid from cgroup if possibleDavid Herrmann
Whenever we run in a user context, sd_bus_{default_user,open_user}() and friends should always connect to the user-bus of the current context, instead of deriving the uid from getuid(). This allows us running programs via sudo/su, without the nasty side-effect of accidentally connecting to the root user-bus. This patch enforces the idea of making su/sudo *not* opening sessions by default. That is, all they do is raising privileges, but keeping everything set as before. You can still use su/sudo to open real sessions by requesting a login-session (or loading pam_systemd otherwise). However, in this case XDG_RUNTIME_DIR= will not be set (as usual in these cases), hence, you will not be able to connect to *any* user-bus. Long story short: With this patch applied, both: - ./busctl --user - sudo ./busctl --user ..will successfully connect to the user-bus of the local user. Fixes #390.
2015-09-06core: pass details to polkit for some unit actionsMichael Chapman
The following details are passed: - unit: the primary name of the unit upon which the action was invoked (i.e. after resolving any aliases); - verb: one of 'start', 'stop', 'reload', 'restart', 'try-restart', 'reload-or-restart', 'reload-or-try-restart', 'kill', 'reset-failed', or 'set-property', corresponding to the systemctl verb used to invoke the action. Typical use of these details in a polkit policy rule might be: // Allow alice to manage example.service; // fall back to implicit authorization otherwise. polkit.addRule(function(action, subject) { if (action.id == "org.freedesktop.systemd1.manage-units" && action.lookup("unit") == "example.service" && subject.user == "alice") { return polkit.Result.YES; } }); We also supply a custom polkit message that includes the unit's name and the requested operation.
2015-09-06bus-util: support details in CheckAuthorization callsMichael Chapman
Extra details for an action can be supplied when calling polkit's CheckAuthorization method. Details are a list of key/value string pairs. Custom policy can use these details when making authorization decisions.
2015-09-05Merge pull request #1140 from poettering/sd-event-signalsDavid Herrmann
A variety of sd-event, sd-login and cgroup fixes
2015-09-05sd-login: minor header commenting improvementsLennart Poettering
2015-09-05sd-login: add new sd_pid_get_cgroup() APILennart Poettering
This adds a new sd_pid_get_cgroup() call to sd-login which may be used to query the control path of a process. This is useful for programs when making use of delegation units, in order to figure out which subtree has been delegated. In light of the unified control group hierarchy this is finally safe to do, hence let's add a proper API for it, to make it easier to use this.