summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
| * | | sleep-config: eat up errors only after debug logging about themLennart Poettering2018-07-261-2/+6
| | | |
| * | | sleep-config: partitions can't be deleted, only files canLennart Poettering2018-07-261-6/+9
| |/ / | | | | | | | | | | | | This fixes something I think was basically a typo introduced in db69869f264af2d1afcdd3e573e0e9fdd5bef065.
* | | Merge pull request #9720 from yuwata/fix-9702Zbigniew Jędrzejewski-Szmek2018-07-265-0/+57
|\ \ \ | |/ / |/| | Fix DynamicUser=yes with static User= whose UID and GID are different
| * | test: add tests for DynamicUser= with static User= whose UID and GID are ↵Yu Watanabe2018-07-264-0/+47
| | | | | | | | | | | | different
| * | core: fix gid when DynamicUser=yes with static User=Yu Watanabe2018-07-261-0/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When DynamicUser=yes and static User= are set, and the user has different uid and gid, then as the storage socket for the dynamic user does not contains gid, we need to obtain gid. Follow-up for 9ec655cbbd7505ef465e0444da0622e46099ce42. Fixes #9702.
* | | Merge pull request #9684 from yuwata/fix-9672Zbigniew Jędrzejewski-Szmek2018-07-262-30/+96
|\ \ \ | | | | | | | | timedate, locale: fix barrier to suppress multiple function calls
| * | | timedate: defer the property changed signal until job of starting/stopping ↵Yu Watanabe2018-07-261-13/+65
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | NTP service is finished Before this, the property changed signal is emitted immediately after StartUnit/StopUnit method is called. So, the running state of the NTP client service may not updated. This makes the timing of emitting property changed signal is deferred until job of starting/stopping NTP client service is completed. Fixes #9672.
| * | | locale: increment reference count of sd_bus_messageYu Watanabe2018-07-261-12/+22
| | | |
| * | | timedate: increment reference count of sd_bus_messageYu Watanabe2018-07-261-5/+9
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The commit 5d280742b645a69a19e7f9131adc0c95f5c7fa07 introduces a barrier to suppress calling context_update_ntp_status() multiple times. However, it just stores the address of sd_bus_message object. So, when an address is reused on the subsequent message, then the status of NTP clients are not updated. This makes the stored message object is referenced by the context object. So, the subsequent message is on cirtainly different address.
* | | shared/sleep-config: exclude zram devices from hibernation candidatesAndrew Jorgensen2018-07-261-3/+13
| | | | | | | | | | | | | | | | | | On a host with sufficiently large zram but with no actual swap, logind will respond to CanHibernate() with yes. With this patch, it will correctly respond no, unless there are other swap devices to consider.
* | | Merge pull request #9504 from poettering/nss-deadlockZbigniew Jędrzejewski-Szmek2018-07-269-9/+134
|\ \ \ | | | | | | | | some nss deadlock love
| * | | bus-unit-util: tiny coding style fixLennart Poettering2018-07-201-2/+2
| | | |
| * | | nss: never become IPC clients for services that are about to be startedLennart Poettering2018-07-202-0/+73
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This is an attempt to automatically detect and avoid certain kinds of NSS deadlocks as discussed in this thread: https://lists.freedesktop.org/archives/systemd-devel/2018-July/040975.html
| * | | doc: document the two new env vars set by the service managerLennart Poettering2018-07-201-0/+18
| | | |
| * | | pid1: tell PAM/NSS modules why we are calling themLennart Poettering2018-07-201-1/+13
| | | |
| * | | NEWS: document nss-ldap incompatibilitiesLennart Poettering2018-07-201-1/+22
| | | |
| * | | growfs: make global variables that don't need to be exported staticLennart Poettering2018-07-201-2/+2
| | | |
| * | | path-util: avoid name clashesLennart Poettering2018-07-201-3/+3
| | | | | | | | | | | | | | | | | | | | One of those days we should rework this to use the UNIQ macros, but for now, an underscore should be enough.
| * | | env-util: make env-util.h self containedLennart Poettering2018-07-201-0/+1
| | | | | | | | | | | | | | | | The header file references strlen(), hence it should include string.h
* | | | Merge pull request #9484 from poettering/permille-everywhereZbigniew Jędrzejewski-Szmek2018-07-265-24/+27
|\ \ \ \ | | | | | | | | | | Permille everywhere
| * | | | tree-wide: increase granularity of percent specifications all over the place ↵Lennart Poettering2018-07-254-21/+23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | to permille We so far had various placed we'd parse percentages with parse_percent(). Let's make them use parse_permille() instead, which is downward compatible (as it also parses percent values), and increases the granularity a bit. Given that on the wire we usually normalize relative specifications to something like UINT32_MAX anyway changing from base-100 to base-1000 calculations can be done easily without breaking compat. This commit doesn't document this change in the man pages. While allowing more precise specifcations permille is not as commonly understood as perent I guess, hence let's keep this out of the docs for now.
| * | | | parse-util: in parse_permille() check negative earlierLennart Poettering2018-07-251-3/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If 'v' is negative, it's wrong to add the decimal to it, as we'd actually need to subtract it in this case. But given that we don't want to allow negative vaues anyway, simply check earlier whether what we have parsed so far was negative, and react to that before adding the decimal to it.
* | | | | Merge pull request #9620 from poettering/type-execZbigniew Jędrzejewski-Szmek2018-07-2617-138/+504
|\ \ \ \ \ | |_|_|/ / |/| | | | add new Type=exec service type
| * | | | NEWS: add entry about Type=exec and announce that systemd-run is going to ↵Lennart Poettering2018-07-251-0/+27
| | | | | | | | | | | | | | | | | | | | default to it in 241
| * | | | test: add test for Type=execLennart Poettering2018-07-253-0/+74
| | | | |
| * | | | man: document the new Type=exec typeLennart Poettering2018-07-252-71/+97
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | And while we are at it, let's rearrange and extend the Type= documentation a bit. Let's make it an itemized list, and let's add a paragraph explaining which type best to use.
| * | | | core: introduce new Type=exec service typeLennart Poettering2018-07-257-28/+254
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Users are often surprised that "systemd-run" command lines like "systemd-run -p User=idontexist /bin/true" will return successfully, even though the logs show that the process couldn't be invoked, as the user "idontexist" doesn't exist. This is because Type=simple will only wait until fork() succeeded before returning start-up success. This patch adds a new service type Type=exec, which is very similar to Type=simple, but waits until the child process completed the execve() before returning success. It uses a pipe that has O_CLOEXEC set for this logic, so that the kernel automatically sends POLLHUP on it when the execve() succeeded but leaves the pipe open if not. This means PID 1 waits exactly until the execve() succeeded in the child, and not longer and not shorter, which is the desired functionality. Making use of this new functionality, the command line "systemd-run -p User=idontexist -p Type=exec /bin/true" will now fail, as expected.
| * | | | execute: use our usual syntax for defining bit masksLennart Poettering2018-07-251-4/+4
| | | | |
| * | | | core: swap order of "n_storage_fds" and "n_socket_fds" parametersLennart Poettering2018-07-253-19/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When process fd lists to pass to activated programs we always place the socket activation fds first, and the storage fds last. Irritatingly in almost all calls the "n_storage_fds" parameter (i.e. the number of storage fds to pass) came first so far, and the "n_socket_fds" parameter second. Let's clean this up, and specify the number of fds in the order the fds themselves are passed. (Also, let's fix one more case where "unsigned" was used to size an array, while we should use "size_t" instead.)
| * | | | sd-login: let's also make sd-login understand ".host"Lennart Poettering2018-07-251-10/+17
| | | | | | | | | | | | | | | | | | | | if sd-bus and machined grok it, then sd-login should grok it too.
| * | | | sd-bus: allow connecting to the pseudo-container ".host"Lennart Poettering2018-07-252-2/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | machined exposes the pseudo-container ".host" as a reference to the host system, and this means "machinectl login .host" and "machinectl shell .host" get your a login/shell on the host. systemd-run currently doesn't allow that. Let's fix that, and make sd-bus understand ".host" as an alias for connecting to the host system.
| * | | | update TODOLennart Poettering2018-07-251-4/+2
|/ / / /
* | | | Merge pull request #9667 from poettering/pam_systemd-fixesZbigniew Jędrzejewski-Szmek2018-07-255-191/+169
|\ \ \ \ | | | | | | | | | | pam_systemd fixes
| * | | | man: update pam_systemd to reflect recent changesLennart Poettering2018-07-251-57/+46
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 1. Document the new desktop= parameter 2. Clarify that we set XDG_SESSION_DESKTOP, XDG_SESSION_CLASS, XDG_SESSION_TYPE if we have the data, and don't just read it.
| * | | | pam_systemd: cast calls whose result we knowingly ignore to (void)Lennart Poettering2018-07-251-3/+3
| | | | |
| * | | | pam_systemd: reduce append_session_cg_weight() indentation level a bit by ↵Lennart Poettering2018-07-251-13/+14
| | | | | | | | | | | | | | | | | | | | moving to early exit
| * | | | pam_systemd: move socket_from_display() from util.[ch] to pam_systemd.cLennart Poettering2018-07-253-26/+25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It's highly specific, kinda legacy (X11…) and only used at one place, let's move this out of the common code, and into pam_systemd.c where it is used.
| * | | | pam_systemd: sort includes properlyLennart Poettering2018-07-251-2/+2
| | | | |
| * | | | pam_systemd: always set XDG_SESSION_{CLASS|TYPE|DESKTOP}Lennart Poettering2018-07-251-0/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We likely get the data from the env block, but we might also determine it from elsewhere (such as PAM module parameters). Let's set the env vars on the env block explicitly, so that they are available always, and apps can rely on it.
| * | | | pam_systemd: simplify code which with we set environment variablesLennart Poettering2018-07-251-19/+27
| | | | | | | | | | | | | | | | | | | | | | | | | Let's shorten things a bit by splitting out common code in a new function.
| * | | | pam_systemd: tiny coding style fixLennart Poettering2018-07-251-2/+1
| | | | |
| * | | | pam_systemd: also make $XDG_SESSION_DESKTOP configurable via PAM module ↵Lennart Poettering2018-07-251-2/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | command line Let's make this symmetric with XDG_SESSION_CLASS and XDG_SESSION_TYPE, so that PAM stacks can configure this easily without involving env vars, in case there are PAM session managers which only support a single desktop anyway.
| * | | | pam_systemd: simplify how we process env varsLennart Poettering2018-07-251-23/+25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Let's introduce a single unified getenv() implementation for the various fields we need. No change in behaviour.
| * | | | pam_systemd: drop setting DBUS_SESSION_BUS_ADDRESSLennart Poettering2018-07-252-43/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since D-Bus 1.9.14 (2015-03-02) dbus looks in $XDG_RUNTIME_DIR/bus for the system bus on its own, hence we can finally drop setting this environment variable. gdbus since glib 2.45.3 (June 2015) also supports it.
| * | | | man: document that pam_systemd actually sets XDG_SEAT and XDG_VTNRLennart Poettering2018-07-251-3/+3
| |/ / / | | | | | | | | | | | | | | | | The old wording is not clear regarding whether the env var will be updated or just a fallbacked is used.
* | | | hwdb: Add accel mount matrix for Lenovo Miix 3-830Mario Hros2018-07-251-0/+4
| | | |
* | | | hwdb: Add information on where to find identifiersMario Hros2018-07-251-0/+11
|/ / /
* | | man: document CPUAffinity= in system.conf in more detailLennart Poettering2018-07-251-5/+5
| | | | | | | | | | | | Fixes: #9692
* | | core/main: use return log_*_errno moreZbigniew Jędrzejewski-Szmek2018-07-251-38/+39
| | |
* | | networkd: fix overflow checkLennart Poettering2018-07-251-6/+6
| | | | | | | | | | | | Fixes: #9591