summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
* Prep v236 : Add missing SPDX-License-Identifier (2/9) src/basicSven Eden2018-03-26
|
* Prep v236 : Add missing SPDX-License-Identifier (1/9) shell-completionSven Eden2018-03-15
|
* Prep v236: Remove obsolete files that have slithered in.Sven Eden2018-03-15
|
* Prep v236: Update build system and adapt to eloginds needs.Sven Eden2018-03-13
|
* Prep v236: Apply missing upstream updates to the build systemSven Eden2018-03-13
|
* New: pwx/update_po_files.pl : Coment out all translations to non-existent files.Sven Eden2018-03-13
| | | | => Update po translation files
* check_tree.pl: Added the possibility to (manualy) check root files and ↵Sven Eden2018-03-13
| | | | enhanced shell mask handling.
* Prep v236: Update root level filesSven Eden2018-03-12
|
* Update TODOZbigniew Jędrzejewski-Szmek2017-12-14
|
* Make taint message structured and add catalog entryZbigniew Jędrzejewski-Szmek2017-12-14
| | | | | | | | | | | | | | | | | | | Dec 14 14:10:54 krowka elogind[1]: System is tainted: overflowgid-not-65534 -- Subject: The system is configured in a way that might cause problems -- Defined-By: elogind -- Support: https://lists.freedesktop.org/mailman/listinfo/elogind-devel -- -- The following "tags" are possible: -- - "split-usr" — /usr is a separate file system and was not mounted when elogind -- was booted -- - "cgroups-missing" — the kernel was compiled without cgroup support or access -- to expected interface files is resticted -- - "var-run-bad" — /var/run is not a symlink to /run -- - "overflowuid-not-65534" — the kernel user ID used for "unknown" users (with -- NFS or user namespaces) is not 65534 -- - "overflowgid-not-65534" — the kernel group ID used for "unknown" users (with -- NFS or user namespaces) is not 65534 -- Current system is tagged as overflowgid-not-65534.
* meson: increase version numbersLennart Poettering2017-12-11
|
* core: add EXTEND_TIMEOUT_USEC={usec} - prevent timeouts in ↵Daniel Black2017-12-14
| | | | | | | | | | | | | | | | | | | | | startup/runtime/shutdown (#7214) With Type=notify services, EXTEND_TIMEOUT_USEC= messages will delay any startup/ runtime/shutdown timeouts. A service that hasn't timed out, i.e, start time < TimeStartSec, runtime < RuntimeMaxSec and stop time < TimeoutStopSec, may by sending EXTEND_TIMEOUT_USEC=, allow the service to continue beyond the limit for the execution phase (i.e TimeStartSec, RunTimeMaxSec and TimeoutStopSec). EXTEND_TIMEOUT_USEC= must continue to be sent (in the same way as WATCHDOG=1) within the time interval specified to continue to reprevent the timeout from occuring. Watchdog timeouts are also extended if a EXTEND_TIMEOUT_USEC is greater than the remaining time on the watchdog counter. Fixes #5868.
* man: elogind.unit: move note about clearing lists (#7621)Daniel Black2017-12-14
| | | | This is mainly for drop-in files.
* sysctl: disable buffer while writing to /procTiago Salem Herrmann2017-12-12
| | | | | | | | fputs() writes only first 2048 bytes and fails to write to /proc when values are larger than that. This patch adds a new flag to WriteStringFileFlags that make it possible to disable the buffer under specific cases.
* tree-wide: use STRLEN() to allocate buffer of constant sizeThomas Haller2017-12-13
| | | | | | | | | | Using strlen() to declare a buffer results in a variable-length array, even if the compiler likely optimizes it to be a compile time constant. When building with -Wvla, certain versions of gcc complain about such buffers. Compiling with -Wvla has the advantage of preventing variably length array, which defeat static asserts that are implemented by declaring an array of negative length.
* basic/macros: add STRLEN() to get length of string literal as constant ↵Thomas Haller2017-12-13
| | | | | | | | | | | | | | | | | | expression While the compiler likely optimizes strlen(x) for string literals, it is not a constant expression. Hence, char buffer[strlen("OPTION_000") + 1]; declares a variable-length array. STRLEN() can be used instead when a constant espression is needed. It's not entirely identical to strlen(), as STRLEN("a\0") counts 2. Also, it only works with string literals and the macro enforces that the argument is a literal.
* meson: link NSS modules with -z nodelete (#7607)Lennart Poettering2017-12-12
| | | | | | | | | We might end up allocating mempools, and when we are unloaded we might orphan them, thus leaking them. Hence, let's just stick around for good, so the mempools remain referenced continously and for good, and thus no memory is leaked (though the memory isn't cleaned up either). Fixes: #7596
* verbs: add a new VERB_MUSTBEROOT flagLennart Poettering2017-12-11
| | | | | Given that we regularly have verbs that require privileges, let's just make this a flag of the verb.
* tree-wide: drop a few == NULL and != NULL comparisonLennart Poettering2017-12-08
| | | | | | | Our CODING_STYLE suggests not comparing with NULL, but relying on C's downgrade-to-bool feature for that. Fix up some code to match these guidelines. (This is not comprehensive, the coccinelle output for this is unfortunately kinda borked)
* virt: use XENFEAT_dom0 to detect the hardware domain (#6442, #6662) (#7581)Olaf Hering2017-12-08
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The detection of ConditionVirtualisation= relies on the presence of /proc/xen/capabilities. If the file exists and contains the string "control_d", the running system is a dom0 and VIRTUALIZATION_NONE should be set. In case /proc/xen exists, or some sysfs files indicate "xen", VIRTUALIZATION_XEN should be set to indicate the system is a domU. With an (old) xenlinux based kernel, /proc/xen/capabilities is always available and the detection described above works always. But with a pvops based kernel, xenfs must be mounted on /proc/xen to get "capabilities". This is done by a proc-xen.mount unit, which is part of xen.git. Since the mounting happens "late", other units may be scheduled before "proc-xen.mount". If these other units make use of "ConditionVirtualisation=", the virtualization detection returns incorect results. detect_vm() will set VIRTUALIZATION_XEN because "xen" is found in sysfs. This value will be cached. Once xenfs is mounted, the next process that runs detect_vm() will get VIRTUALIZATION_NONE. This misdetection can be fixed by using /sys/hypervisor/properties/features, which exports the value returned by the "XENVER_get_features" hypercall. If the bit XENFEAT_dom0 is set, the domain is the "hardware domain". It is supposed to have permissions to access all hardware. The used sysfs file is available since v2.6.31. The commonly used term "dom0" refers to the control domain which runs the toolstack and has access to all hardware. But the virtualization host may be configured such that one dedicated domain becomes the "hardware domain", and another one the "toolstack domain".
* acl: fix typo in comment (#7580)Yu Watanabe2017-12-08
|
* resolved: implement D-Bus API for DNS-SDDmitry Rozhkov2017-10-23
|
* man: missing whitespace (#7579)Clinton Roy2017-12-08
|
* virt: propagate errors in detect_vm_xen_dom0 (#7553)Olaf Hering2017-12-07
| | | | | | Update detect_vm_xen_dom0 to propagate errors in case reading /proc/xen/capabilites fails. This does not fix any bugs, it just makes it consistent with other functions called by detect_vm.
* meson: place elogind-sulogin-shell in build/Zbigniew Jędrzejewski-Szmek2017-12-07
| | | | We do that will all executables so that it's easy to call them.
* meson: warn if nobody-user and nobody-group are set to different nameYu Watanabe2017-12-07
| | | | | | | It may work, but is very strange. So, let's warn about that. v2: Debian uses nobody and nogroup. Do not warn such case.
* sysusers: use NOBODY_USER_NAMEYu Watanabe2017-12-07
|
* virt: remove triple spurious newlineLennart Poettering2017-12-06
|
* virt: use /proc/xen as indicator for a Xen domain (#6442, #6662) (#7555)Olaf Hering2017-12-06
| | | | | | | | | | | | | | | | | | | | The file /proc/xen/capabilities is only available if xenfs is mounted. With a classic xenlinux based kernel that file is available unconditionally. But with a modern pvops based kernel, xenfs must be mounted before the "capabilities" may appear. xenfs is mounted very late via .services files provided by the Xen toolstack. Other units may be scheduled before xenfs is mounted, which will confuse the detection of VIRTUALIZATION_XEN. In all Xen enabled kernels, and if that kernel is actually running on the Xen hypervisor, the "/proc/xen" directory is the reliable indicator that this instance runs in a "Xen guest". Adjust the code to check for /proc/xen instead of /proc/xen/capabilities. Fixes commit 3f61278b5 ("basic: Bugfix Detect XEN Dom0 as no virtualization")
* Set secure_boot flag in Kernel Zero-Page (#7482)Max Resch2017-12-06
| | | | | | | | | | Setting the secure_boot flag, avoids getting the printout "EFI stub: UEFI Secure Boot is enabled." when booting a Linux kernel with linuxx64.efi.stub and EFI SecureBoot enabled. This is mainly a cosmetic fixup, as the "quiet" kernel parameter does not silence pr_efi printouts in the linux kernel (this only works using the efi stub from the linux source tree)
* Added some missing Swedish Strings (#7552)hanklank2017-12-06
|
* meson: print warnings if the "nobody" user/group name is not compatible with ↵Lennart Poettering2017-12-05
| | | | | | | the local system At least on Fedora and Debian systems this not obvious to get right, hence warn.
* user-util: add UID_NOBODY defines that resolve to (uid_t) 65534Lennart Poettering2017-12-04
| | | | | We use it all over the place, let's add a #define for it. Makes things easier greppable, and more explanatory I think.
* nss-elogind: tweak checks when we consult PID 1 for dynamic UID/GID lookupsLennart Poettering2017-12-02
| | | | | | Instead of contacting PID 1 for dynamic UID/GID lookups for all UIDs/GIDs that do not qualify as "system" do the more precise check instead: check if they actually qualify for the "dynamic" range.
* user-util: add new uid_is_system() helperLennart Poettering2017-12-02
| | | | | | | This adds uid_is_system() and gid_is_system(), similar in style to uid_is_dynamic(). That a helper like this is useful is illustrated by the fact that test-condition.c didn't get the check right so far, which this patch fixes.
* build-sys: make the dynamic UID range, and the container UID range configurableLennart Poettering2017-12-02
| | | | Also, export these ranges in our pkg-config files.
* util-lib: kill duplicate slashes in lookup pathsZbigniew Jędrzejewski-Szmek2017-11-23
| | | | | Since we're munging the array anyway, we can make the output a bit nicer too.
* hexdecoct: fix comment typo (#7548)Lennart Poettering2017-12-05
|
* string-util: rework strextend() to optionally inset separators between each ↵Lennart Poettering2017-11-28
| | | | | | | | | | | | | | appended string This adds a new flavour of strextend(), called strextend_with_separator(), which takes an optional separator string. If specified, the separator is inserted between each appended string, as well as before the first one, but only if the original string was non-empty. This new call is particularly useful when appending new options to mount option strings and suchlike, which need to be comma-separated, and initially start out from an empty string.
* meson: fix indentationYu Watanabe2017-12-05
|
* util-lib,tests: rework unbase64 so that we skip over whitespace ↵Lennart Poettering2017-12-03
| | | | | | | | | | automatically (#7522) Let's optimize things a bit, and instead of having to strip whitespace first before decoding base64, let's do that implicitly while doing so. Given that base64 was designed the way it was designed specifically to be tolerant to whitespace changes, it's a good idea to do this automatically and implicitly.
* sysusers: Provide meson argument to set gid for 'users' group (#7533)Ikey Doherty2017-12-03
| | | | | | | | | | To allow better integration with distributions requiring an explicitly set gid for the `users` group, provide the new `-Dusers-gid` option to set to a new numeric value. In the absence of a specified gid, we'll fallback to the default existing behaviour of `-` as the gid value, to automatically assign the next available gid on the system.
* fs-util: remove comment about non-existing functionYu Watanabe2017-12-01
|
* fs-util: chase_symlinks(): remove unnecessary slash at the headYu Watanabe2017-12-01
| | | | | Before this, chase_symlinks("/../../foo/bar",...) returns //foo/bar. This removes the unnecessary slash at the head.
* *: fix some inconsistent control statement styleVito Caputo2017-12-01
|
* NEWS: update the text a bit (#7524)Zbigniew Jędrzejewski-Szmek2017-12-01
| | | | | | | | This fixes various typos, removes some duplications, and adds a bit more detail in the few places which are potential pitfalls for users. Also change the way the paragraphs about new options begin, because having a paragraph saying "Two new options have been added", and then bit lower again "Two new options have been added" is confusing.
* Add x-elogind.growfs option for fstabZbigniew Jędrzejewski-Szmek2017-11-29
|
* Add x-elogind.makefs option for fstabZbigniew Jędrzejewski-Szmek2017-11-21
| | | | | | | | | | I opted to completely generate a unit for both mount points and swaps. For swaps, it would be possible to use fixed template unit like elogind-mkswap@.service, because there's no information passed except the device name. For mount points, that's not possible because both the device name and file system type need to be passed. Nevertheless, I expect that options will need to passed to both mkfs and mkswap, in which case it'll be necessary to create units of both types anyway.
* Add mkfs wrapper which first checks if the partition is emptyZbigniew Jędrzejewski-Szmek2017-11-26
|
* growfs: add support for resizing encrypted partitionsZbigniew Jędrzejewski-Szmek2017-11-21
|