Compare commits
5 Commits
dae92400b1
...
2710eff93d
Author | SHA1 | Date |
---|---|---|
![]() |
2710eff93d | |
![]() |
6d72cd9e88 | |
![]() |
3a32b51652 | |
![]() |
199e1ddfac | |
![]() |
1e0ae5594d |
|
@ -10,7 +10,7 @@ fatal() { echo >&2 -e "\033[31;1m$1\033[0m"; exit 1; }
|
||||||
success() { echo >&2 -e "\033[32;1m$1\033[0m"; }
|
success() { echo >&2 -e "\033[32;1m$1\033[0m"; }
|
||||||
|
|
||||||
ARGS=(
|
ARGS=(
|
||||||
"--optimization=0 -Dopenssl=disabled -Dtpm=true -Dtpm2=enabled"
|
"--optimization=0 -Dopenssl=disabled -Dcryptolib=gcrypt -Ddns-over-tls=gnutls -Dtpm=true -Dtpm2=enabled"
|
||||||
"--optimization=s -Dutmp=false"
|
"--optimization=s -Dutmp=false"
|
||||||
"--optimization=2 -Dc_args=-Wmaybe-uninitialized -Ddns-over-tls=openssl"
|
"--optimization=2 -Dc_args=-Wmaybe-uninitialized -Ddns-over-tls=openssl"
|
||||||
"--optimization=3 -Db_lto=true -Ddns-over-tls=false"
|
"--optimization=3 -Db_lto=true -Ddns-over-tls=false"
|
||||||
|
@ -67,6 +67,7 @@ PACKAGES=(
|
||||||
COMPILER="${COMPILER:?}"
|
COMPILER="${COMPILER:?}"
|
||||||
COMPILER_VERSION="${COMPILER_VERSION:?}"
|
COMPILER_VERSION="${COMPILER_VERSION:?}"
|
||||||
LINKER="${LINKER:?}"
|
LINKER="${LINKER:?}"
|
||||||
|
CRYPTOLIB="${CRYPTOLIB:?}"
|
||||||
RELEASE="$(lsb_release -cs)"
|
RELEASE="$(lsb_release -cs)"
|
||||||
|
|
||||||
# Note: As we use postfixed clang/gcc binaries, we need to override $AR
|
# Note: As we use postfixed clang/gcc binaries, we need to override $AR
|
||||||
|
@ -149,7 +150,7 @@ for args in "${ARGS[@]}"; do
|
||||||
CXX="$CXX" CXX_LD="$LINKER" CXXFLAGS="$CXXFLAGS" \
|
CXX="$CXX" CXX_LD="$LINKER" CXXFLAGS="$CXXFLAGS" \
|
||||||
meson setup \
|
meson setup \
|
||||||
-Dtests=unsafe -Dslow-tests=true -Dfuzz-tests=true --werror \
|
-Dtests=unsafe -Dslow-tests=true -Dfuzz-tests=true --werror \
|
||||||
-Dnobody-group=nogroup -Ddebug=false \
|
-Dnobody-group=nogroup -Dcryptolib="${CRYPTOLIB:?}" -Ddebug=false \
|
||||||
$args build; then
|
$args build; then
|
||||||
|
|
||||||
cat build/meson-logs/meson-log.txt
|
cat build/meson-logs/meson-log.txt
|
||||||
|
|
|
@ -25,11 +25,11 @@ jobs:
|
||||||
fail-fast: false
|
fail-fast: false
|
||||||
matrix:
|
matrix:
|
||||||
env:
|
env:
|
||||||
- { COMPILER: "gcc", COMPILER_VERSION: "11", LINKER: "bfd" }
|
- { COMPILER: "gcc", COMPILER_VERSION: "11", LINKER: "bfd", CRYPTOLIB: "gcrypt" }
|
||||||
- { COMPILER: "gcc", COMPILER_VERSION: "13", LINKER: "mold" }
|
- { COMPILER: "gcc", COMPILER_VERSION: "13", LINKER: "mold", CRYPTOLIB: "openssl" }
|
||||||
- { COMPILER: "clang", COMPILER_VERSION: "14", LINKER: "mold" }
|
- { COMPILER: "clang", COMPILER_VERSION: "14", LINKER: "mold", CRYPTOLIB: "gcrypt" }
|
||||||
- { COMPILER: "clang", COMPILER_VERSION: "16", LINKER: "bfd" }
|
- { COMPILER: "clang", COMPILER_VERSION: "16", LINKER: "bfd", CRYPTOLIB: "openssl" }
|
||||||
- { COMPILER: "clang", COMPILER_VERSION: "18", LINKER: "lld" }
|
- { COMPILER: "clang", COMPILER_VERSION: "18", LINKER: "lld", CRYPTOLIB: "auto" }
|
||||||
env: ${{ matrix.env }}
|
env: ${{ matrix.env }}
|
||||||
steps:
|
steps:
|
||||||
- name: Repository checkout
|
- name: Repository checkout
|
||||||
|
|
|
@ -25,7 +25,7 @@ jobs:
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683
|
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683
|
||||||
- uses: systemd/mkosi@dbb4020beee2cdf250f93a425794f1cf8b0fe693
|
- uses: systemd/mkosi@32105855f386c980069d134d1b0f8fea4db2129e
|
||||||
|
|
||||||
# Freeing up disk space with rm -rf can take multiple minutes. Since we don't need the extra free space
|
# Freeing up disk space with rm -rf can take multiple minutes. Since we don't need the extra free space
|
||||||
# immediately, we remove the files in the background. However, we first move them to a different location
|
# immediately, we remove the files in the background. However, we first move them to a different location
|
||||||
|
@ -90,6 +90,7 @@ jobs:
|
||||||
sudo mkosi sandbox -- \
|
sudo mkosi sandbox -- \
|
||||||
meson setup \
|
meson setup \
|
||||||
--buildtype=debugoptimized \
|
--buildtype=debugoptimized \
|
||||||
|
-Dintegration-tests=true \
|
||||||
build
|
build
|
||||||
|
|
||||||
- name: Build image
|
- name: Build image
|
||||||
|
@ -119,8 +120,7 @@ jobs:
|
||||||
meson test \
|
meson test \
|
||||||
-C build \
|
-C build \
|
||||||
--no-rebuild \
|
--no-rebuild \
|
||||||
--setup=integration \
|
--suite integration-tests \
|
||||||
--suite=integration-tests \
|
|
||||||
--print-errorlogs \
|
--print-errorlogs \
|
||||||
--no-stdsplit \
|
--no-stdsplit \
|
||||||
--num-processes "$(($(nproc) - 1))" \
|
--num-processes "$(($(nproc) - 1))" \
|
||||||
|
|
|
@ -120,7 +120,7 @@ jobs:
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683
|
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683
|
||||||
- uses: systemd/mkosi@dbb4020beee2cdf250f93a425794f1cf8b0fe693
|
- uses: systemd/mkosi@32105855f386c980069d134d1b0f8fea4db2129e
|
||||||
|
|
||||||
# Freeing up disk space with rm -rf can take multiple minutes. Since we don't need the extra free space
|
# Freeing up disk space with rm -rf can take multiple minutes. Since we don't need the extra free space
|
||||||
# immediately, we remove the files in the background. However, we first move them to a different location
|
# immediately, we remove the files in the background. However, we first move them to a different location
|
||||||
|
@ -197,6 +197,7 @@ jobs:
|
||||||
sudo mkosi sandbox -- \
|
sudo mkosi sandbox -- \
|
||||||
meson setup \
|
meson setup \
|
||||||
--buildtype=debugoptimized \
|
--buildtype=debugoptimized \
|
||||||
|
-Dintegration-tests=true \
|
||||||
-Dbpf-framework=disabled \
|
-Dbpf-framework=disabled \
|
||||||
build
|
build
|
||||||
|
|
||||||
|
@ -232,8 +233,7 @@ jobs:
|
||||||
meson test \
|
meson test \
|
||||||
-C build \
|
-C build \
|
||||||
--no-rebuild \
|
--no-rebuild \
|
||||||
--setup=integration \
|
--suite integration-tests \
|
||||||
--suite=integration-tests \
|
|
||||||
--print-errorlogs \
|
--print-errorlogs \
|
||||||
--no-stdsplit \
|
--no-stdsplit \
|
||||||
--num-processes "$(($(nproc) - 1))" \
|
--num-processes "$(($(nproc) - 1))" \
|
||||||
|
|
|
@ -41,7 +41,7 @@ function run_meson() {
|
||||||
|
|
||||||
set -ex
|
set -ex
|
||||||
|
|
||||||
MESON_ARGS=()
|
MESON_ARGS=(-Dcryptolib=${CRYPTOLIB:-auto})
|
||||||
|
|
||||||
# (Re)set the current oom-{score-}adj. For some reason root on GH actions is able to _decrease_
|
# (Re)set the current oom-{score-}adj. For some reason root on GH actions is able to _decrease_
|
||||||
# its oom-score even after dropping all capabilities (including CAP_SYS_RESOURCE), until the
|
# its oom-score even after dropping all capabilities (including CAP_SYS_RESOURCE), until the
|
||||||
|
|
|
@ -16,15 +16,18 @@ jobs:
|
||||||
build:
|
build:
|
||||||
runs-on: ubuntu-24.04
|
runs-on: ubuntu-24.04
|
||||||
concurrency:
|
concurrency:
|
||||||
group: ${{ github.workflow }}-${{ matrix.run_phase }}-${{ github.ref }}
|
group: ${{ github.workflow }}-${{ matrix.run_phase }}-${{ matrix.cryptolib }}-${{ github.ref }}
|
||||||
cancel-in-progress: true
|
cancel-in-progress: true
|
||||||
strategy:
|
strategy:
|
||||||
fail-fast: false
|
fail-fast: false
|
||||||
matrix:
|
matrix:
|
||||||
run_phase: [GCC, GCC_ASAN_UBSAN, CLANG, CLANG_RELEASE, CLANG_ASAN_UBSAN, CLANG_ASAN_UBSAN_NO_DEPS]
|
run_phase: [GCC, GCC_ASAN_UBSAN, CLANG, CLANG_RELEASE, CLANG_ASAN_UBSAN, CLANG_ASAN_UBSAN_NO_DEPS]
|
||||||
|
cryptolib: [auto]
|
||||||
include:
|
include:
|
||||||
- run_phase: GCC
|
- run_phase: GCC
|
||||||
|
cryptolib: openssl
|
||||||
- run_phase: CLANG
|
- run_phase: CLANG
|
||||||
|
cryptolib: gcrypt
|
||||||
steps:
|
steps:
|
||||||
- name: Repository checkout
|
- name: Repository checkout
|
||||||
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683
|
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683
|
||||||
|
@ -35,6 +38,8 @@ jobs:
|
||||||
sudo sed -i '/^XDG_/d' /etc/environment
|
sudo sed -i '/^XDG_/d' /etc/environment
|
||||||
# Pass only specific env variables through sudo, to avoid having
|
# Pass only specific env variables through sudo, to avoid having
|
||||||
# the already existing XDG_* stuff on the "other side"
|
# the already existing XDG_* stuff on the "other side"
|
||||||
sudo --preserve-env=GITHUB_ACTIONS,CI .github/workflows/unit_tests.sh SETUP
|
sudo --preserve-env=CRYPTOLIB,GITHUB_ACTIONS,CI .github/workflows/unit_tests.sh SETUP
|
||||||
- name: Build & test
|
- name: Build & test
|
||||||
run: sudo --preserve-env=GITHUB_ACTIONS,CI .github/workflows/unit_tests.sh RUN_${{ matrix.run_phase }}
|
run: sudo --preserve-env=CRYPTOLIB,GITHUB_ACTIONS,CI .github/workflows/unit_tests.sh RUN_${{ matrix.run_phase }}
|
||||||
|
env:
|
||||||
|
CRYPTOLIB: ${{ matrix.cryptolib }}
|
||||||
|
|
|
@ -24,8 +24,8 @@ __pycache__/
|
||||||
/ID
|
/ID
|
||||||
/build*
|
/build*
|
||||||
/install-tree
|
/install-tree
|
||||||
/mkosi/mkosi.key
|
/mkosi.key
|
||||||
/mkosi/mkosi.crt
|
/mkosi.crt
|
||||||
/mkosi.tools/
|
/mkosi.tools/
|
||||||
/mkosi.tools.manifest
|
/mkosi.tools.manifest
|
||||||
/mkosi/mkosi.local.conf
|
/mkosi/mkosi.local.conf
|
||||||
|
|
|
@ -39,7 +39,7 @@ jobs:
|
||||||
trigger: pull_request
|
trigger: pull_request
|
||||||
fmf_url: https://src.fedoraproject.org/rpms/systemd
|
fmf_url: https://src.fedoraproject.org/rpms/systemd
|
||||||
# This is automatically updated by tools/fetch-distro.py --update fedora
|
# This is automatically updated by tools/fetch-distro.py --update fedora
|
||||||
fmf_ref: 6646d13acae64665f63354cd60ecf963ee563b96
|
fmf_ref: 08ce156d74460867657fb9b201c8be93d31e07de
|
||||||
targets:
|
targets:
|
||||||
- fedora-rawhide-x86_64
|
- fedora-rawhide-x86_64
|
||||||
# testing-farm in the Fedora repository is explicitly configured to use testing-farm bare metal runners as
|
# testing-farm in the Fedora repository is explicitly configured to use testing-farm bare metal runners as
|
||||||
|
|
|
@ -32,23 +32,23 @@ The following exceptions apply:
|
||||||
* some sources under src/udev/ are licensed under **GPL-2.0-or-later**,
|
* some sources under src/udev/ are licensed under **GPL-2.0-or-later**,
|
||||||
so all udev programs (`systemd-udevd`, `udevadm`, and the udev builtins
|
so all udev programs (`systemd-udevd`, `udevadm`, and the udev builtins
|
||||||
and test programs) are also distributed under **GPL-2.0-or-later**.
|
and test programs) are also distributed under **GPL-2.0-or-later**.
|
||||||
* the header files contained in src/basic/include/linux are copied
|
* the header files contained in src/basic/linux/ and src/shared/linux/ are copied
|
||||||
verbatim from the Linux kernel source tree and are licensed under **GPL-2.0 WITH
|
verbatim from the Linux kernel source tree and are licensed under **GPL-2.0 WITH
|
||||||
Linux-syscall-note** and are used within the scope of the Linux-syscall-note
|
Linux-syscall-note** and are used within the scope of the Linux-syscall-note
|
||||||
exception provisions
|
exception provisions
|
||||||
* the following sources are licensed under the **LGPL-2.0-or-later** license:
|
* the following sources are licensed under the **LGPL-2.0-or-later** license:
|
||||||
- src/basic/utf8.c
|
- src/basic/utf8.c
|
||||||
- src/shared/initreq.h
|
- src/shared/initreq.h
|
||||||
* the src/basic/include/linux/bpf_insn.h header is copied from the Linux kernel
|
* the src/shared/linux/bpf_insn.h header is copied from the Linux kernel
|
||||||
source tree and is licensed under either **BSD-2-Clause** or **GPL-2.0-only**,
|
source tree and is licensed under either **BSD-2-Clause** or **GPL-2.0-only**,
|
||||||
and thus is included in the systemd build under the BSD-2-Clause license.
|
and thus is included in the systemd build under the BSD-2-Clause license.
|
||||||
* The src/basic/include/linux/wireguard.h header is copied from the Linux kernel
|
* The src/basic/linux/wireguard.h header is copied from the Linux kernel
|
||||||
source tree and is licensed under either **MIT** or **GPL-2.0 WITH Linux-syscall-note**,
|
source tree and is licensed under either **MIT** or **GPL-2.0 WITH Linux-syscall-note**,
|
||||||
and thus is included in the systemd build under the MIT license.
|
and thus is included in the systemd build under the MIT license.
|
||||||
* the following sources are licensed under the **MIT** license (in case of our
|
* the following sources are licensed under the **MIT** license (in case of our
|
||||||
scripts, to facilitate copying and reuse of those helpers to other projects):
|
scripts, to facilitate copying and reuse of those helpers to other projects):
|
||||||
- hwdb.d/parse_hwdb.py
|
- hwdb.d/parse_hwdb.py
|
||||||
- src/basic/include/linux/batman_adv.h
|
- src/basic/linux/batman_adv.h
|
||||||
- src/basic/sparse-endian.h
|
- src/basic/sparse-endian.h
|
||||||
- tools/catalog-report.py
|
- tools/catalog-report.py
|
||||||
* the following sources are licensed under the **CC0-1.0** license:
|
* the following sources are licensed under the **CC0-1.0** license:
|
||||||
|
|
9
NEWS
9
NEWS
|
@ -67,12 +67,6 @@ CHANGES WITH 258 in spe:
|
||||||
in v255), 'default-hierarchy' (v256), and 'nscd' (v257) have been
|
in v255), 'default-hierarchy' (v256), and 'nscd' (v257) have been
|
||||||
removed.
|
removed.
|
||||||
|
|
||||||
* OpenSSL is the only crypto backend for systemd-resolved and
|
|
||||||
systemd-importd, and support for gnutls and gcrypt has been removed.
|
|
||||||
Hence, support for 'dns-over-tls=gnutls' meson option has been
|
|
||||||
removed. Also, 'cryptolib' meson option has been deprecated, and will
|
|
||||||
be removed in a future release.
|
|
||||||
|
|
||||||
Announcements of Future Feature Removals:
|
Announcements of Future Feature Removals:
|
||||||
|
|
||||||
* The D-Bus method org.freedesktop.systemd1.StartAuxiliaryScope() is
|
* The D-Bus method org.freedesktop.systemd1.StartAuxiliaryScope() is
|
||||||
|
@ -102,9 +96,6 @@ CHANGES WITH 258 in spe:
|
||||||
continue to work, update to xf86-input-evdev >= 2.11.0 and
|
continue to work, update to xf86-input-evdev >= 2.11.0 and
|
||||||
xf86-input-libinput >= 1.5.0 before updating to systemd >= 258.
|
xf86-input-libinput >= 1.5.0 before updating to systemd >= 258.
|
||||||
|
|
||||||
* The meson option 'integration-tests' has been deprecated, and will be
|
|
||||||
removed in a future release.
|
|
||||||
|
|
||||||
— <place>, <date>
|
— <place>, <date>
|
||||||
|
|
||||||
CHANGES WITH 257:
|
CHANGES WITH 257:
|
||||||
|
|
3
README
3
README
|
@ -240,7 +240,8 @@ REQUIREMENTS:
|
||||||
libcurl >= 7.32.0 (optional)
|
libcurl >= 7.32.0 (optional)
|
||||||
libidn2 or libidn (optional)
|
libidn2 or libidn (optional)
|
||||||
gnutls >= 3.1.4 (optional)
|
gnutls >= 3.1.4 (optional)
|
||||||
openssl >= 1.1.0 (optional, required to support DNS-over-TLS)
|
>= 3.6.0 is required to support DNS-over-TLS with gnutls
|
||||||
|
openssl >= 1.1.0 (optional, required to support DNS-over-TLS with openssl)
|
||||||
p11-kit >= 0.23.3 (optional)
|
p11-kit >= 0.23.3 (optional)
|
||||||
libfido2 (optional)
|
libfido2 (optional)
|
||||||
tpm2-tss (optional)
|
tpm2-tss (optional)
|
||||||
|
|
10
TODO
10
TODO
|
@ -59,6 +59,8 @@ Regularly:
|
||||||
|
|
||||||
* set_put(), hashmap_put() return values check. i.e. == 0 does not free()!
|
* set_put(), hashmap_put() return values check. i.e. == 0 does not free()!
|
||||||
|
|
||||||
|
* use secure_getenv() instead of getenv() where appropriate
|
||||||
|
|
||||||
* link up selected blog stories from man pages and unit files Documentation= fields
|
* link up selected blog stories from man pages and unit files Documentation= fields
|
||||||
|
|
||||||
Janitorial Clean-ups:
|
Janitorial Clean-ups:
|
||||||
|
@ -128,13 +130,6 @@ Deprecations and removals:
|
||||||
|
|
||||||
Features:
|
Features:
|
||||||
|
|
||||||
* loginctl: show argv[] of "leader" process in tabular list-sessions output
|
|
||||||
|
|
||||||
* loginctl: show "service identifier" in tabular list-sessions output, to make
|
|
||||||
run0 sessions easily visible.
|
|
||||||
|
|
||||||
* run0: maybe enable utmp for run0 sessions, so that they are easily visible.
|
|
||||||
|
|
||||||
* maybe replace nss-machines with logic in networkd that registers records with
|
* maybe replace nss-machines with logic in networkd that registers records with
|
||||||
systemd-resolved, based on DHCP leases, so that we gain compat with VMs.
|
systemd-resolved, based on DHCP leases, so that we gain compat with VMs.
|
||||||
Implementation idea: encode in an ifaltname the intended local name to expose this
|
Implementation idea: encode in an ifaltname the intended local name to expose this
|
||||||
|
@ -1791,6 +1786,7 @@ Features:
|
||||||
with matches, then activate app through that passing socket over
|
with matches, then activate app through that passing socket over
|
||||||
|
|
||||||
* unify on openssl:
|
* unify on openssl:
|
||||||
|
- kill gnutls support in resolved
|
||||||
- figure out what to do about libmicrohttpd, which has a hard dependency on
|
- figure out what to do about libmicrohttpd, which has a hard dependency on
|
||||||
gnutls
|
gnutls
|
||||||
- port fsprg over to a dlopen lib, then switch it to openssl
|
- port fsprg over to a dlopen lib, then switch it to openssl
|
||||||
|
|
|
@ -5,7 +5,8 @@ set -e
|
||||||
# Exclude following paths from the Coccinelle transformations
|
# Exclude following paths from the Coccinelle transformations
|
||||||
EXCLUDED_PATHS=(
|
EXCLUDED_PATHS=(
|
||||||
"src/boot/efi/*"
|
"src/boot/efi/*"
|
||||||
"src/basic/include/linux/*"
|
"src/shared/linux/*"
|
||||||
|
"src/basic/linux/*"
|
||||||
# Symlinked to test-bus-vtable-cc.cc, which causes issues with the IN_SET macro
|
# Symlinked to test-bus-vtable-cc.cc, which causes issues with the IN_SET macro
|
||||||
"src/libsystemd/sd-bus/test-bus-vtable.c"
|
"src/libsystemd/sd-bus/test-bus-vtable.c"
|
||||||
"src/libsystemd/sd-journal/lookup3.c"
|
"src/libsystemd/sd-journal/lookup3.c"
|
||||||
|
|
|
@ -20,12 +20,6 @@ they carry some identical (or at least very similar) fields.
|
||||||
Matches the `gr_name` field of UNIX/glibc NSS `struct group`,
|
Matches the `gr_name` field of UNIX/glibc NSS `struct group`,
|
||||||
or the shadow structure `struct sgrp`'s `sg_namp` field.
|
or the shadow structure `struct sgrp`'s `sg_namp` field.
|
||||||
|
|
||||||
`uuid` -> A string containing a lowercase UUID that identifies this group.
|
|
||||||
The same considerations apply to this field as they do to the corresponding field of user records.
|
|
||||||
Users and groups MUST NOT share the same UUID unless they are semantically
|
|
||||||
the same security principal e.g. if a system synthesizes a single-user group from
|
|
||||||
user records to be the user's primary group.
|
|
||||||
|
|
||||||
`realm` → The "realm" the group belongs to, conceptually identical to the same field of user records.
|
`realm` → The "realm" the group belongs to, conceptually identical to the same field of user records.
|
||||||
A string in DNS domain name syntax.
|
A string in DNS domain name syntax.
|
||||||
|
|
||||||
|
|
|
@ -18,7 +18,7 @@ compiler you want to use and which part of the test suite you want to run.
|
||||||
To build with sanitizers in mkosi, create a file `mkosi/mkosi.local.conf` and add the following contents:
|
To build with sanitizers in mkosi, create a file `mkosi/mkosi.local.conf` and add the following contents:
|
||||||
|
|
||||||
```
|
```
|
||||||
[Build]
|
[Content]
|
||||||
Environment=SANITIZERS=address,undefined
|
Environment=SANITIZERS=address,undefined
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|
|
@ -234,13 +234,6 @@ retrievable and resolvable under every name listed here, pretty much everywhere
|
||||||
the primary user name is. If logging in is attempted via an alias name it
|
the primary user name is. If logging in is attempted via an alias name it
|
||||||
should be normalized to the primary name.
|
should be normalized to the primary name.
|
||||||
|
|
||||||
`uuid` -> A string containing a lowercase UUID that identifies this user.
|
|
||||||
The UUID should be assigned to the user at creation, be the same across multiple machines,
|
|
||||||
and never change (even if the user's username, realm or other identifying attributes change).
|
|
||||||
When the user database is backed by Microsoft Active Directory, this field should contain
|
|
||||||
he value from the [objectGUID](https://learn.microsoft.com/en-us/openspecs/windows_protocols/ms-ada3/937eb5c6-f6b3-4652-a276-5d6bb8979658)
|
|
||||||
attribute. The same UUID can be retrieved via `mbr_uid_to_uuid` on macOS.
|
|
||||||
|
|
||||||
`blobDirectory` → The absolute path to a world-readable copy of the user's blob
|
`blobDirectory` → The absolute path to a world-readable copy of the user's blob
|
||||||
directory. See [Blob Directories](/USER_RECORD_BLOB_DIRS) for more details.
|
directory. See [Blob Directories](/USER_RECORD_BLOB_DIRS) for more details.
|
||||||
|
|
||||||
|
|
|
@ -383,7 +383,6 @@ evdev:name:gpio-keys:phys:gpio-keys/input0:ev:3:dmi:bvn*:bvr*:bd*:svncube:pni1-T
|
||||||
###########################################################
|
###########################################################
|
||||||
|
|
||||||
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnDell*:pn*:*
|
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnDell*:pn*:*
|
||||||
KEYBOARD_KEY_68=prog2 # G-Mode (Dell-specific)
|
|
||||||
KEYBOARD_KEY_81=playpause # Play/Pause
|
KEYBOARD_KEY_81=playpause # Play/Pause
|
||||||
KEYBOARD_KEY_82=stopcd # Stop
|
KEYBOARD_KEY_82=stopcd # Stop
|
||||||
KEYBOARD_KEY_83=previoussong # Previous song
|
KEYBOARD_KEY_83=previoussong # Previous song
|
||||||
|
|
|
@ -398,12 +398,10 @@
|
||||||
</varlistentry>
|
</varlistentry>
|
||||||
|
|
||||||
<varlistentry>
|
<varlistentry>
|
||||||
<term><option>--variables=yes|no</option></term>
|
<term><option>--no-variables</option></term>
|
||||||
<listitem><para>Controls whether to touch the firmware's boot loader list stored in EFI variables,
|
<listitem><para>Do not touch the firmware's boot loader list stored in EFI variables.</para>
|
||||||
and other EFI variables. If not specified defaults to no when execution in a container runtime is
|
|
||||||
detected, yes otherwise.</para>
|
|
||||||
|
|
||||||
<xi:include href="version-info.xml" xpointer="v258"/></listitem>
|
<xi:include href="version-info.xml" xpointer="v220"/></listitem>
|
||||||
</varlistentry>
|
</varlistentry>
|
||||||
|
|
||||||
<varlistentry>
|
<varlistentry>
|
||||||
|
|
|
@ -182,12 +182,11 @@
|
||||||
archive, possibly compressed with
|
archive, possibly compressed with
|
||||||
<citerefentry project='die-net'><refentrytitle>xz</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
<citerefentry project='die-net'><refentrytitle>xz</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||||
<citerefentry project='die-net'><refentrytitle>gzip</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
<citerefentry project='die-net'><refentrytitle>gzip</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||||
<citerefentry project='die-net'><refentrytitle>zstd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
|
||||||
or
|
or
|
||||||
<citerefentry project='die-net'><refentrytitle>bzip2</refentrytitle><manvolnum>1</manvolnum></citerefentry>.
|
<citerefentry project='die-net'><refentrytitle>bzip2</refentrytitle><manvolnum>1</manvolnum></citerefentry>.
|
||||||
It will then be unpacked into its own
|
It will then be unpacked into its own
|
||||||
subvolume/directory. When <command>import-raw</command> is used, the file should be a qcow2 or raw
|
subvolume/directory. When <command>import-raw</command> is used, the file should be a qcow2 or raw
|
||||||
disk image, possibly compressed with xz, gzip, zstd or bzip2. If the second argument (the resulting image
|
disk image, possibly compressed with xz, gzip or bzip2. If the second argument (the resulting image
|
||||||
name) is not specified, it is automatically derived from the file name. If the filename is passed as
|
name) is not specified, it is automatically derived from the file name. If the filename is passed as
|
||||||
<literal>-</literal>, the image is read from standard input, in which case the second argument is
|
<literal>-</literal>, the image is read from standard input, in which case the second argument is
|
||||||
mandatory.</para>
|
mandatory.</para>
|
||||||
|
@ -223,8 +222,6 @@
|
||||||
<citerefentry project='die-net'><refentrytitle>gzip</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
<citerefentry project='die-net'><refentrytitle>gzip</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||||
if it ends in <literal>.xz</literal>, with
|
if it ends in <literal>.xz</literal>, with
|
||||||
<citerefentry project='die-net'><refentrytitle>xz</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
<citerefentry project='die-net'><refentrytitle>xz</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||||
if it ends in <literal>.zst</literal>, with
|
|
||||||
<citerefentry project='die-net'><refentrytitle>zstd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
|
||||||
and if it ends in <literal>.bz2</literal>, with
|
and if it ends in <literal>.bz2</literal>, with
|
||||||
<citerefentry project='die-net'><refentrytitle>bzip2</refentrytitle><manvolnum>1</manvolnum></citerefentry>.
|
<citerefentry project='die-net'><refentrytitle>bzip2</refentrytitle><manvolnum>1</manvolnum></citerefentry>.
|
||||||
If the path ends in neither, the file is left uncompressed. If the second argument is missing, the image
|
If the path ends in neither, the file is left uncompressed. If the second argument is missing, the image
|
||||||
|
@ -318,8 +315,8 @@
|
||||||
<listitem><para>When used with the <option>export-tar</option> or <option>export-raw</option>
|
<listitem><para>When used with the <option>export-tar</option> or <option>export-raw</option>
|
||||||
commands, specifies the compression format to use for the resulting file. Takes one of
|
commands, specifies the compression format to use for the resulting file. Takes one of
|
||||||
<literal>uncompressed</literal>, <literal>xz</literal>, <literal>gzip</literal>,
|
<literal>uncompressed</literal>, <literal>xz</literal>, <literal>gzip</literal>,
|
||||||
<literal>zst</literal>, <literal>bzip2</literal>. By default, the format is determined
|
<literal>bzip2</literal>. By default, the format is determined automatically from the output image
|
||||||
automatically from the output image file name passed.</para>
|
file name passed.</para>
|
||||||
|
|
||||||
<xi:include href="version-info.xml" xpointer="v256"/></listitem>
|
<xi:include href="version-info.xml" xpointer="v256"/></listitem>
|
||||||
</varlistentry>
|
</varlistentry>
|
||||||
|
@ -453,7 +450,6 @@
|
||||||
<member><citerefentry project='die-net'><refentrytitle>tar</refentrytitle><manvolnum>1</manvolnum></citerefentry></member>
|
<member><citerefentry project='die-net'><refentrytitle>tar</refentrytitle><manvolnum>1</manvolnum></citerefentry></member>
|
||||||
<member><citerefentry project='die-net'><refentrytitle>xz</refentrytitle><manvolnum>1</manvolnum></citerefentry></member>
|
<member><citerefentry project='die-net'><refentrytitle>xz</refentrytitle><manvolnum>1</manvolnum></citerefentry></member>
|
||||||
<member><citerefentry project='die-net'><refentrytitle>gzip</refentrytitle><manvolnum>1</manvolnum></citerefentry></member>
|
<member><citerefentry project='die-net'><refentrytitle>gzip</refentrytitle><manvolnum>1</manvolnum></citerefentry></member>
|
||||||
<member><citerefentry project='die-net'><refentrytitle>zstd</refentrytitle><manvolnum>1</manvolnum></citerefentry></member>
|
|
||||||
<member><citerefentry project='die-net'><refentrytitle>bzip2</refentrytitle><manvolnum>1</manvolnum></citerefentry></member>
|
<member><citerefentry project='die-net'><refentrytitle>bzip2</refentrytitle><manvolnum>1</manvolnum></citerefentry></member>
|
||||||
</simplelist></para>
|
</simplelist></para>
|
||||||
</refsect1>
|
</refsect1>
|
||||||
|
|
|
@ -872,7 +872,6 @@
|
||||||
<member><citerefentry project='die-net'><refentrytitle>xz</refentrytitle><manvolnum>1</manvolnum></citerefentry></member>
|
<member><citerefentry project='die-net'><refentrytitle>xz</refentrytitle><manvolnum>1</manvolnum></citerefentry></member>
|
||||||
<member><citerefentry project='die-net'><refentrytitle>gzip</refentrytitle><manvolnum>1</manvolnum></citerefentry></member>
|
<member><citerefentry project='die-net'><refentrytitle>gzip</refentrytitle><manvolnum>1</manvolnum></citerefentry></member>
|
||||||
<member><citerefentry project='die-net'><refentrytitle>bzip2</refentrytitle><manvolnum>1</manvolnum></citerefentry></member>
|
<member><citerefentry project='die-net'><refentrytitle>bzip2</refentrytitle><manvolnum>1</manvolnum></citerefentry></member>
|
||||||
<member><citerefentry project='die-net'><refentrytitle>zstd</refentrytitle><manvolnum>1</manvolnum></citerefentry></member>
|
|
||||||
</simplelist></para>
|
</simplelist></para>
|
||||||
</refsect1>
|
</refsect1>
|
||||||
|
|
||||||
|
|
|
@ -214,13 +214,12 @@ node /org/freedesktop/import1 {
|
||||||
to the tar or raw file to import. It should reference a file on disk, a pipe or a socket. When
|
to the tar or raw file to import. It should reference a file on disk, a pipe or a socket. When
|
||||||
<function>ImportTar()</function>/<function>ImportTarEx()</function> is used the file descriptor should
|
<function>ImportTar()</function>/<function>ImportTarEx()</function> is used the file descriptor should
|
||||||
refer to a tar file, optionally compressed with <citerefentry project="die-net"><refentrytitle>gzip</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
refer to a tar file, optionally compressed with <citerefentry project="die-net"><refentrytitle>gzip</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||||
<citerefentry project="die-net"><refentrytitle>zstd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
|
||||||
<citerefentry project="die-net"><refentrytitle>bzip2</refentrytitle><manvolnum>1</manvolnum></citerefentry>, or
|
<citerefentry project="die-net"><refentrytitle>bzip2</refentrytitle><manvolnum>1</manvolnum></citerefentry>, or
|
||||||
<citerefentry project="die-net"><refentrytitle>xz</refentrytitle><manvolnum>1</manvolnum></citerefentry>.
|
<citerefentry project="die-net"><refentrytitle>xz</refentrytitle><manvolnum>1</manvolnum></citerefentry>.
|
||||||
<command>systemd-importd</command> will detect the used compression scheme (if any) automatically. When
|
<command>systemd-importd</command> will detect the used compression scheme (if any) automatically. When
|
||||||
<function>ImportRaw()</function>/<function>ImportRawEx()</function> is used the file descriptor should
|
<function>ImportRaw()</function>/<function>ImportRawEx()</function> is used the file descriptor should
|
||||||
refer to a raw or qcow2 disk image containing an MBR or GPT disk label, also optionally compressed with
|
refer to a raw or qcow2 disk image containing an MBR or GPT disk label, also optionally compressed with
|
||||||
gzip, zstd, bzip2 or xz. In either case, if the file is specified as a file descriptor on disk, progress
|
gzip, bzip2 or xz. In either case, if the file is specified as a file descriptor on disk, progress
|
||||||
information is generated for the import operation (as in that case we know the total size on disk). If
|
information is generated for the import operation (as in that case we know the total size on disk). If
|
||||||
a socket or pipe is specified, progress information is not available. The file descriptor argument is
|
a socket or pipe is specified, progress information is not available. The file descriptor argument is
|
||||||
followed by a local name for the image. This should be a name suitable as a hostname and will be used
|
followed by a local name for the image. This should be a name suitable as a hostname and will be used
|
||||||
|
@ -251,9 +250,9 @@ node /org/freedesktop/import1 {
|
||||||
name to export as their first parameter, followed by a file descriptor (opened for writing) where the
|
name to export as their first parameter, followed by a file descriptor (opened for writing) where the
|
||||||
tar or raw file will be written. It may either reference a file on disk or a pipe/socket. The third
|
tar or raw file will be written. It may either reference a file on disk or a pipe/socket. The third
|
||||||
argument specifies in which compression format to write the image. It takes one of
|
argument specifies in which compression format to write the image. It takes one of
|
||||||
<literal>uncompressed</literal>, <literal>xz</literal>, <literal>bzip2</literal>,
|
<literal>uncompressed</literal>, <literal>xz</literal>, <literal>bzip2</literal> or
|
||||||
<literal>gzip</literal> or <literal>zstd</literal>, depending on which compression scheme is required.
|
<literal>gzip</literal>, depending on which compression scheme is required. The image written to the
|
||||||
The image written to the specified file descriptor will be a tar file in case of
|
specified file descriptor will be a tar file in case of
|
||||||
<function>ExportTar()</function>/<function>ExportTarEx()</function> or a raw disk image in case of
|
<function>ExportTar()</function>/<function>ExportTarEx()</function> or a raw disk image in case of
|
||||||
<function>ExportRaw()</function>/<function>ExportRawEx()</function>. Note that currently raw disk
|
<function>ExportRaw()</function>/<function>ExportRawEx()</function>. Note that currently raw disk
|
||||||
images may not be exported as tar files, and vice versa. This restriction might be lifted
|
images may not be exported as tar files, and vice versa. This restriction might be lifted
|
||||||
|
@ -268,8 +267,8 @@ node /org/freedesktop/import1 {
|
||||||
<function>PullRaw()</function>/<function>PullRawEx()</function> may be used to download, verify and
|
<function>PullRaw()</function>/<function>PullRawEx()</function> may be used to download, verify and
|
||||||
import a system image from a URL. They take a URL argument which should point to a tar or raw file on
|
import a system image from a URL. They take a URL argument which should point to a tar or raw file on
|
||||||
the <literal>http://</literal> or <literal>https://</literal> protocols, possibly compressed with xz,
|
the <literal>http://</literal> or <literal>https://</literal> protocols, possibly compressed with xz,
|
||||||
bzip2, gzip or zstd. The second argument is a local name for the image. It should be suitable as a
|
bzip2 or gzip. The second argument is a local name for the image. It should be suitable as a hostname,
|
||||||
hostname, similarly to the matching argument of the
|
similarly to the matching argument of the
|
||||||
<function>ImportTar()</function>/<function>ImportTarEx()</function> and
|
<function>ImportTar()</function>/<function>ImportTarEx()</function> and
|
||||||
<function>ImportRaw()</function>/<function>ImportRawEx()</function> methods above. The third argument
|
<function>ImportRaw()</function>/<function>ImportRawEx()</function> methods above. The third argument
|
||||||
indicates the verification mode for the image. It may be one of <literal>no</literal>,
|
indicates the verification mode for the image. It may be one of <literal>no</literal>,
|
||||||
|
|
|
@ -477,6 +477,8 @@ node /org/freedesktop/systemd1 {
|
||||||
@org.freedesktop.DBus.Property.EmitsChangedSignal("const")
|
@org.freedesktop.DBus.Property.EmitsChangedSignal("const")
|
||||||
readonly b DefaultCPUAccounting = ...;
|
readonly b DefaultCPUAccounting = ...;
|
||||||
@org.freedesktop.DBus.Property.EmitsChangedSignal("const")
|
@org.freedesktop.DBus.Property.EmitsChangedSignal("const")
|
||||||
|
readonly b DefaultBlockIOAccounting = ...;
|
||||||
|
@org.freedesktop.DBus.Property.EmitsChangedSignal("const")
|
||||||
readonly b DefaultIOAccounting = ...;
|
readonly b DefaultIOAccounting = ...;
|
||||||
@org.freedesktop.DBus.Property.EmitsChangedSignal("const")
|
@org.freedesktop.DBus.Property.EmitsChangedSignal("const")
|
||||||
readonly b DefaultIPAccounting = ...;
|
readonly b DefaultIPAccounting = ...;
|
||||||
|
@ -717,6 +719,8 @@ node /org/freedesktop/systemd1 {
|
||||||
|
|
||||||
<!--property DefaultCPUAccounting is not documented!-->
|
<!--property DefaultCPUAccounting is not documented!-->
|
||||||
|
|
||||||
|
<!--property DefaultBlockIOAccounting is not documented!-->
|
||||||
|
|
||||||
<!--property DefaultIOAccounting is not documented!-->
|
<!--property DefaultIOAccounting is not documented!-->
|
||||||
|
|
||||||
<!--property DefaultIPAccounting is not documented!-->
|
<!--property DefaultIPAccounting is not documented!-->
|
||||||
|
@ -1163,6 +1167,8 @@ node /org/freedesktop/systemd1 {
|
||||||
|
|
||||||
<variablelist class="dbus-property" generated="True" extra-ref="DefaultCPUAccounting"/>
|
<variablelist class="dbus-property" generated="True" extra-ref="DefaultCPUAccounting"/>
|
||||||
|
|
||||||
|
<variablelist class="dbus-property" generated="True" extra-ref="DefaultBlockIOAccounting"/>
|
||||||
|
|
||||||
<variablelist class="dbus-property" generated="True" extra-ref="DefaultIOAccounting"/>
|
<variablelist class="dbus-property" generated="True" extra-ref="DefaultIOAccounting"/>
|
||||||
|
|
||||||
<variablelist class="dbus-property" generated="True" extra-ref="DefaultIPAccounting"/>
|
<variablelist class="dbus-property" generated="True" extra-ref="DefaultIPAccounting"/>
|
||||||
|
@ -2900,6 +2906,10 @@ node /org/freedesktop/systemd1/unit/avahi_2ddaemon_2eservice {
|
||||||
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||||
readonly t StartupCPUWeight = ...;
|
readonly t StartupCPUWeight = ...;
|
||||||
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||||
|
readonly t CPUShares = ...;
|
||||||
|
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||||
|
readonly t StartupCPUShares = ...;
|
||||||
|
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||||
readonly t CPUQuotaPerSecUSec = ...;
|
readonly t CPUQuotaPerSecUSec = ...;
|
||||||
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||||
readonly t CPUQuotaPeriodUSec = ...;
|
readonly t CPUQuotaPeriodUSec = ...;
|
||||||
|
@ -2930,6 +2940,18 @@ node /org/freedesktop/systemd1/unit/avahi_2ddaemon_2eservice {
|
||||||
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||||
readonly a(st) IODeviceLatencyTargetUSec = [...];
|
readonly a(st) IODeviceLatencyTargetUSec = [...];
|
||||||
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||||
|
readonly b BlockIOAccounting = ...;
|
||||||
|
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||||
|
readonly t BlockIOWeight = ...;
|
||||||
|
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||||
|
readonly t StartupBlockIOWeight = ...;
|
||||||
|
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||||
|
readonly a(st) BlockIODeviceWeight = [...];
|
||||||
|
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||||
|
readonly a(st) BlockIOReadBandwidth = [...];
|
||||||
|
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||||
|
readonly a(st) BlockIOWriteBandwidth = [...];
|
||||||
|
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||||
readonly b MemoryAccounting = ...;
|
readonly b MemoryAccounting = ...;
|
||||||
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||||
readonly t DefaultMemoryLow = ...;
|
readonly t DefaultMemoryLow = ...;
|
||||||
|
@ -2962,6 +2984,8 @@ node /org/freedesktop/systemd1/unit/avahi_2ddaemon_2eservice {
|
||||||
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||||
readonly b MemoryZSwapWriteback = ...;
|
readonly b MemoryZSwapWriteback = ...;
|
||||||
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||||
|
readonly t MemoryLimit = ...;
|
||||||
|
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||||
readonly s DevicePolicy = '...';
|
readonly s DevicePolicy = '...';
|
||||||
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||||
readonly a(ss) DeviceAllow = [...];
|
readonly a(ss) DeviceAllow = [...];
|
||||||
|
@ -3541,6 +3565,10 @@ node /org/freedesktop/systemd1/unit/avahi_2ddaemon_2eservice {
|
||||||
|
|
||||||
<!--property StartupCPUWeight is not documented!-->
|
<!--property StartupCPUWeight is not documented!-->
|
||||||
|
|
||||||
|
<!--property CPUShares is not documented!-->
|
||||||
|
|
||||||
|
<!--property StartupCPUShares is not documented!-->
|
||||||
|
|
||||||
<!--property CPUQuotaPerSecUSec is not documented!-->
|
<!--property CPUQuotaPerSecUSec is not documented!-->
|
||||||
|
|
||||||
<!--property CPUQuotaPeriodUSec is not documented!-->
|
<!--property CPUQuotaPeriodUSec is not documented!-->
|
||||||
|
@ -3571,6 +3599,18 @@ node /org/freedesktop/systemd1/unit/avahi_2ddaemon_2eservice {
|
||||||
|
|
||||||
<!--property IODeviceLatencyTargetUSec is not documented!-->
|
<!--property IODeviceLatencyTargetUSec is not documented!-->
|
||||||
|
|
||||||
|
<!--property BlockIOAccounting is not documented!-->
|
||||||
|
|
||||||
|
<!--property BlockIOWeight is not documented!-->
|
||||||
|
|
||||||
|
<!--property StartupBlockIOWeight is not documented!-->
|
||||||
|
|
||||||
|
<!--property BlockIODeviceWeight is not documented!-->
|
||||||
|
|
||||||
|
<!--property BlockIOReadBandwidth is not documented!-->
|
||||||
|
|
||||||
|
<!--property BlockIOWriteBandwidth is not documented!-->
|
||||||
|
|
||||||
<!--property MemoryAccounting is not documented!-->
|
<!--property MemoryAccounting is not documented!-->
|
||||||
|
|
||||||
<!--property DefaultMemoryLow is not documented!-->
|
<!--property DefaultMemoryLow is not documented!-->
|
||||||
|
@ -3603,6 +3643,8 @@ node /org/freedesktop/systemd1/unit/avahi_2ddaemon_2eservice {
|
||||||
|
|
||||||
<!--property MemoryZSwapWriteback is not documented!-->
|
<!--property MemoryZSwapWriteback is not documented!-->
|
||||||
|
|
||||||
|
<!--property MemoryLimit is not documented!-->
|
||||||
|
|
||||||
<!--property DevicePolicy is not documented!-->
|
<!--property DevicePolicy is not documented!-->
|
||||||
|
|
||||||
<!--property DeviceAllow is not documented!-->
|
<!--property DeviceAllow is not documented!-->
|
||||||
|
@ -4195,6 +4237,10 @@ node /org/freedesktop/systemd1/unit/avahi_2ddaemon_2eservice {
|
||||||
|
|
||||||
<variablelist class="dbus-property" generated="True" extra-ref="StartupCPUWeight"/>
|
<variablelist class="dbus-property" generated="True" extra-ref="StartupCPUWeight"/>
|
||||||
|
|
||||||
|
<variablelist class="dbus-property" generated="True" extra-ref="CPUShares"/>
|
||||||
|
|
||||||
|
<variablelist class="dbus-property" generated="True" extra-ref="StartupCPUShares"/>
|
||||||
|
|
||||||
<variablelist class="dbus-property" generated="True" extra-ref="CPUQuotaPerSecUSec"/>
|
<variablelist class="dbus-property" generated="True" extra-ref="CPUQuotaPerSecUSec"/>
|
||||||
|
|
||||||
<variablelist class="dbus-property" generated="True" extra-ref="CPUQuotaPeriodUSec"/>
|
<variablelist class="dbus-property" generated="True" extra-ref="CPUQuotaPeriodUSec"/>
|
||||||
|
@ -4225,6 +4271,18 @@ node /org/freedesktop/systemd1/unit/avahi_2ddaemon_2eservice {
|
||||||
|
|
||||||
<variablelist class="dbus-property" generated="True" extra-ref="IODeviceLatencyTargetUSec"/>
|
<variablelist class="dbus-property" generated="True" extra-ref="IODeviceLatencyTargetUSec"/>
|
||||||
|
|
||||||
|
<variablelist class="dbus-property" generated="True" extra-ref="BlockIOAccounting"/>
|
||||||
|
|
||||||
|
<variablelist class="dbus-property" generated="True" extra-ref="BlockIOWeight"/>
|
||||||
|
|
||||||
|
<variablelist class="dbus-property" generated="True" extra-ref="StartupBlockIOWeight"/>
|
||||||
|
|
||||||
|
<variablelist class="dbus-property" generated="True" extra-ref="BlockIODeviceWeight"/>
|
||||||
|
|
||||||
|
<variablelist class="dbus-property" generated="True" extra-ref="BlockIOReadBandwidth"/>
|
||||||
|
|
||||||
|
<variablelist class="dbus-property" generated="True" extra-ref="BlockIOWriteBandwidth"/>
|
||||||
|
|
||||||
<variablelist class="dbus-property" generated="True" extra-ref="MemoryAccounting"/>
|
<variablelist class="dbus-property" generated="True" extra-ref="MemoryAccounting"/>
|
||||||
|
|
||||||
<variablelist class="dbus-property" generated="True" extra-ref="DefaultMemoryLow"/>
|
<variablelist class="dbus-property" generated="True" extra-ref="DefaultMemoryLow"/>
|
||||||
|
@ -4257,6 +4315,8 @@ node /org/freedesktop/systemd1/unit/avahi_2ddaemon_2eservice {
|
||||||
|
|
||||||
<variablelist class="dbus-property" generated="True" extra-ref="MemoryZSwapWriteback"/>
|
<variablelist class="dbus-property" generated="True" extra-ref="MemoryZSwapWriteback"/>
|
||||||
|
|
||||||
|
<variablelist class="dbus-property" generated="True" extra-ref="MemoryLimit"/>
|
||||||
|
|
||||||
<variablelist class="dbus-property" generated="True" extra-ref="DevicePolicy"/>
|
<variablelist class="dbus-property" generated="True" extra-ref="DevicePolicy"/>
|
||||||
|
|
||||||
<variablelist class="dbus-property" generated="True" extra-ref="DeviceAllow"/>
|
<variablelist class="dbus-property" generated="True" extra-ref="DeviceAllow"/>
|
||||||
|
@ -5053,6 +5113,10 @@ node /org/freedesktop/systemd1/unit/avahi_2ddaemon_2esocket {
|
||||||
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||||
readonly t StartupCPUWeight = ...;
|
readonly t StartupCPUWeight = ...;
|
||||||
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||||
|
readonly t CPUShares = ...;
|
||||||
|
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||||
|
readonly t StartupCPUShares = ...;
|
||||||
|
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||||
readonly t CPUQuotaPerSecUSec = ...;
|
readonly t CPUQuotaPerSecUSec = ...;
|
||||||
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||||
readonly t CPUQuotaPeriodUSec = ...;
|
readonly t CPUQuotaPeriodUSec = ...;
|
||||||
|
@ -5083,6 +5147,18 @@ node /org/freedesktop/systemd1/unit/avahi_2ddaemon_2esocket {
|
||||||
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||||
readonly a(st) IODeviceLatencyTargetUSec = [...];
|
readonly a(st) IODeviceLatencyTargetUSec = [...];
|
||||||
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||||
|
readonly b BlockIOAccounting = ...;
|
||||||
|
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||||
|
readonly t BlockIOWeight = ...;
|
||||||
|
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||||
|
readonly t StartupBlockIOWeight = ...;
|
||||||
|
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||||
|
readonly a(st) BlockIODeviceWeight = [...];
|
||||||
|
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||||
|
readonly a(st) BlockIOReadBandwidth = [...];
|
||||||
|
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||||
|
readonly a(st) BlockIOWriteBandwidth = [...];
|
||||||
|
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||||
readonly b MemoryAccounting = ...;
|
readonly b MemoryAccounting = ...;
|
||||||
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||||
readonly t DefaultMemoryLow = ...;
|
readonly t DefaultMemoryLow = ...;
|
||||||
|
@ -5115,6 +5191,8 @@ node /org/freedesktop/systemd1/unit/avahi_2ddaemon_2esocket {
|
||||||
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||||
readonly b MemoryZSwapWriteback = ...;
|
readonly b MemoryZSwapWriteback = ...;
|
||||||
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||||
|
readonly t MemoryLimit = ...;
|
||||||
|
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||||
readonly s DevicePolicy = '...';
|
readonly s DevicePolicy = '...';
|
||||||
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||||
readonly a(ss) DeviceAllow = [...];
|
readonly a(ss) DeviceAllow = [...];
|
||||||
|
@ -5706,6 +5784,10 @@ node /org/freedesktop/systemd1/unit/avahi_2ddaemon_2esocket {
|
||||||
|
|
||||||
<!--property StartupCPUWeight is not documented!-->
|
<!--property StartupCPUWeight is not documented!-->
|
||||||
|
|
||||||
|
<!--property CPUShares is not documented!-->
|
||||||
|
|
||||||
|
<!--property StartupCPUShares is not documented!-->
|
||||||
|
|
||||||
<!--property CPUQuotaPerSecUSec is not documented!-->
|
<!--property CPUQuotaPerSecUSec is not documented!-->
|
||||||
|
|
||||||
<!--property CPUQuotaPeriodUSec is not documented!-->
|
<!--property CPUQuotaPeriodUSec is not documented!-->
|
||||||
|
@ -5736,6 +5818,18 @@ node /org/freedesktop/systemd1/unit/avahi_2ddaemon_2esocket {
|
||||||
|
|
||||||
<!--property IODeviceLatencyTargetUSec is not documented!-->
|
<!--property IODeviceLatencyTargetUSec is not documented!-->
|
||||||
|
|
||||||
|
<!--property BlockIOAccounting is not documented!-->
|
||||||
|
|
||||||
|
<!--property BlockIOWeight is not documented!-->
|
||||||
|
|
||||||
|
<!--property StartupBlockIOWeight is not documented!-->
|
||||||
|
|
||||||
|
<!--property BlockIODeviceWeight is not documented!-->
|
||||||
|
|
||||||
|
<!--property BlockIOReadBandwidth is not documented!-->
|
||||||
|
|
||||||
|
<!--property BlockIOWriteBandwidth is not documented!-->
|
||||||
|
|
||||||
<!--property MemoryAccounting is not documented!-->
|
<!--property MemoryAccounting is not documented!-->
|
||||||
|
|
||||||
<!--property DefaultMemoryLow is not documented!-->
|
<!--property DefaultMemoryLow is not documented!-->
|
||||||
|
@ -5768,6 +5862,8 @@ node /org/freedesktop/systemd1/unit/avahi_2ddaemon_2esocket {
|
||||||
|
|
||||||
<!--property MemoryZSwapWriteback is not documented!-->
|
<!--property MemoryZSwapWriteback is not documented!-->
|
||||||
|
|
||||||
|
<!--property MemoryLimit is not documented!-->
|
||||||
|
|
||||||
<!--property DevicePolicy is not documented!-->
|
<!--property DevicePolicy is not documented!-->
|
||||||
|
|
||||||
<!--property DeviceAllow is not documented!-->
|
<!--property DeviceAllow is not documented!-->
|
||||||
|
@ -6332,6 +6428,10 @@ node /org/freedesktop/systemd1/unit/avahi_2ddaemon_2esocket {
|
||||||
|
|
||||||
<variablelist class="dbus-property" generated="True" extra-ref="StartupCPUWeight"/>
|
<variablelist class="dbus-property" generated="True" extra-ref="StartupCPUWeight"/>
|
||||||
|
|
||||||
|
<variablelist class="dbus-property" generated="True" extra-ref="CPUShares"/>
|
||||||
|
|
||||||
|
<variablelist class="dbus-property" generated="True" extra-ref="StartupCPUShares"/>
|
||||||
|
|
||||||
<variablelist class="dbus-property" generated="True" extra-ref="CPUQuotaPerSecUSec"/>
|
<variablelist class="dbus-property" generated="True" extra-ref="CPUQuotaPerSecUSec"/>
|
||||||
|
|
||||||
<variablelist class="dbus-property" generated="True" extra-ref="CPUQuotaPeriodUSec"/>
|
<variablelist class="dbus-property" generated="True" extra-ref="CPUQuotaPeriodUSec"/>
|
||||||
|
@ -6362,6 +6462,18 @@ node /org/freedesktop/systemd1/unit/avahi_2ddaemon_2esocket {
|
||||||
|
|
||||||
<variablelist class="dbus-property" generated="True" extra-ref="IODeviceLatencyTargetUSec"/>
|
<variablelist class="dbus-property" generated="True" extra-ref="IODeviceLatencyTargetUSec"/>
|
||||||
|
|
||||||
|
<variablelist class="dbus-property" generated="True" extra-ref="BlockIOAccounting"/>
|
||||||
|
|
||||||
|
<variablelist class="dbus-property" generated="True" extra-ref="BlockIOWeight"/>
|
||||||
|
|
||||||
|
<variablelist class="dbus-property" generated="True" extra-ref="StartupBlockIOWeight"/>
|
||||||
|
|
||||||
|
<variablelist class="dbus-property" generated="True" extra-ref="BlockIODeviceWeight"/>
|
||||||
|
|
||||||
|
<variablelist class="dbus-property" generated="True" extra-ref="BlockIOReadBandwidth"/>
|
||||||
|
|
||||||
|
<variablelist class="dbus-property" generated="True" extra-ref="BlockIOWriteBandwidth"/>
|
||||||
|
|
||||||
<variablelist class="dbus-property" generated="True" extra-ref="MemoryAccounting"/>
|
<variablelist class="dbus-property" generated="True" extra-ref="MemoryAccounting"/>
|
||||||
|
|
||||||
<variablelist class="dbus-property" generated="True" extra-ref="DefaultMemoryLow"/>
|
<variablelist class="dbus-property" generated="True" extra-ref="DefaultMemoryLow"/>
|
||||||
|
@ -6394,6 +6506,8 @@ node /org/freedesktop/systemd1/unit/avahi_2ddaemon_2esocket {
|
||||||
|
|
||||||
<variablelist class="dbus-property" generated="True" extra-ref="MemoryZSwapWriteback"/>
|
<variablelist class="dbus-property" generated="True" extra-ref="MemoryZSwapWriteback"/>
|
||||||
|
|
||||||
|
<variablelist class="dbus-property" generated="True" extra-ref="MemoryLimit"/>
|
||||||
|
|
||||||
<variablelist class="dbus-property" generated="True" extra-ref="DevicePolicy"/>
|
<variablelist class="dbus-property" generated="True" extra-ref="DevicePolicy"/>
|
||||||
|
|
||||||
<variablelist class="dbus-property" generated="True" extra-ref="DeviceAllow"/>
|
<variablelist class="dbus-property" generated="True" extra-ref="DeviceAllow"/>
|
||||||
|
@ -7022,6 +7136,10 @@ node /org/freedesktop/systemd1/unit/home_2emount {
|
||||||
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||||
readonly t StartupCPUWeight = ...;
|
readonly t StartupCPUWeight = ...;
|
||||||
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||||
|
readonly t CPUShares = ...;
|
||||||
|
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||||
|
readonly t StartupCPUShares = ...;
|
||||||
|
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||||
readonly t CPUQuotaPerSecUSec = ...;
|
readonly t CPUQuotaPerSecUSec = ...;
|
||||||
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||||
readonly t CPUQuotaPeriodUSec = ...;
|
readonly t CPUQuotaPeriodUSec = ...;
|
||||||
|
@ -7052,6 +7170,18 @@ node /org/freedesktop/systemd1/unit/home_2emount {
|
||||||
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||||
readonly a(st) IODeviceLatencyTargetUSec = [...];
|
readonly a(st) IODeviceLatencyTargetUSec = [...];
|
||||||
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||||
|
readonly b BlockIOAccounting = ...;
|
||||||
|
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||||
|
readonly t BlockIOWeight = ...;
|
||||||
|
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||||
|
readonly t StartupBlockIOWeight = ...;
|
||||||
|
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||||
|
readonly a(st) BlockIODeviceWeight = [...];
|
||||||
|
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||||
|
readonly a(st) BlockIOReadBandwidth = [...];
|
||||||
|
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||||
|
readonly a(st) BlockIOWriteBandwidth = [...];
|
||||||
|
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||||
readonly b MemoryAccounting = ...;
|
readonly b MemoryAccounting = ...;
|
||||||
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||||
readonly t DefaultMemoryLow = ...;
|
readonly t DefaultMemoryLow = ...;
|
||||||
|
@ -7084,6 +7214,8 @@ node /org/freedesktop/systemd1/unit/home_2emount {
|
||||||
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||||
readonly b MemoryZSwapWriteback = ...;
|
readonly b MemoryZSwapWriteback = ...;
|
||||||
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||||
|
readonly t MemoryLimit = ...;
|
||||||
|
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||||
readonly s DevicePolicy = '...';
|
readonly s DevicePolicy = '...';
|
||||||
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||||
readonly a(ss) DeviceAllow = [...];
|
readonly a(ss) DeviceAllow = [...];
|
||||||
|
@ -7605,6 +7737,10 @@ node /org/freedesktop/systemd1/unit/home_2emount {
|
||||||
|
|
||||||
<!--property StartupCPUWeight is not documented!-->
|
<!--property StartupCPUWeight is not documented!-->
|
||||||
|
|
||||||
|
<!--property CPUShares is not documented!-->
|
||||||
|
|
||||||
|
<!--property StartupCPUShares is not documented!-->
|
||||||
|
|
||||||
<!--property CPUQuotaPerSecUSec is not documented!-->
|
<!--property CPUQuotaPerSecUSec is not documented!-->
|
||||||
|
|
||||||
<!--property CPUQuotaPeriodUSec is not documented!-->
|
<!--property CPUQuotaPeriodUSec is not documented!-->
|
||||||
|
@ -7635,6 +7771,18 @@ node /org/freedesktop/systemd1/unit/home_2emount {
|
||||||
|
|
||||||
<!--property IODeviceLatencyTargetUSec is not documented!-->
|
<!--property IODeviceLatencyTargetUSec is not documented!-->
|
||||||
|
|
||||||
|
<!--property BlockIOAccounting is not documented!-->
|
||||||
|
|
||||||
|
<!--property BlockIOWeight is not documented!-->
|
||||||
|
|
||||||
|
<!--property StartupBlockIOWeight is not documented!-->
|
||||||
|
|
||||||
|
<!--property BlockIODeviceWeight is not documented!-->
|
||||||
|
|
||||||
|
<!--property BlockIOReadBandwidth is not documented!-->
|
||||||
|
|
||||||
|
<!--property BlockIOWriteBandwidth is not documented!-->
|
||||||
|
|
||||||
<!--property MemoryAccounting is not documented!-->
|
<!--property MemoryAccounting is not documented!-->
|
||||||
|
|
||||||
<!--property DefaultMemoryLow is not documented!-->
|
<!--property DefaultMemoryLow is not documented!-->
|
||||||
|
@ -7667,6 +7815,8 @@ node /org/freedesktop/systemd1/unit/home_2emount {
|
||||||
|
|
||||||
<!--property MemoryZSwapWriteback is not documented!-->
|
<!--property MemoryZSwapWriteback is not documented!-->
|
||||||
|
|
||||||
|
<!--property MemoryLimit is not documented!-->
|
||||||
|
|
||||||
<!--property DevicePolicy is not documented!-->
|
<!--property DevicePolicy is not documented!-->
|
||||||
|
|
||||||
<!--property DeviceAllow is not documented!-->
|
<!--property DeviceAllow is not documented!-->
|
||||||
|
@ -8147,6 +8297,10 @@ node /org/freedesktop/systemd1/unit/home_2emount {
|
||||||
|
|
||||||
<variablelist class="dbus-property" generated="True" extra-ref="StartupCPUWeight"/>
|
<variablelist class="dbus-property" generated="True" extra-ref="StartupCPUWeight"/>
|
||||||
|
|
||||||
|
<variablelist class="dbus-property" generated="True" extra-ref="CPUShares"/>
|
||||||
|
|
||||||
|
<variablelist class="dbus-property" generated="True" extra-ref="StartupCPUShares"/>
|
||||||
|
|
||||||
<variablelist class="dbus-property" generated="True" extra-ref="CPUQuotaPerSecUSec"/>
|
<variablelist class="dbus-property" generated="True" extra-ref="CPUQuotaPerSecUSec"/>
|
||||||
|
|
||||||
<variablelist class="dbus-property" generated="True" extra-ref="CPUQuotaPeriodUSec"/>
|
<variablelist class="dbus-property" generated="True" extra-ref="CPUQuotaPeriodUSec"/>
|
||||||
|
@ -8177,6 +8331,18 @@ node /org/freedesktop/systemd1/unit/home_2emount {
|
||||||
|
|
||||||
<variablelist class="dbus-property" generated="True" extra-ref="IODeviceLatencyTargetUSec"/>
|
<variablelist class="dbus-property" generated="True" extra-ref="IODeviceLatencyTargetUSec"/>
|
||||||
|
|
||||||
|
<variablelist class="dbus-property" generated="True" extra-ref="BlockIOAccounting"/>
|
||||||
|
|
||||||
|
<variablelist class="dbus-property" generated="True" extra-ref="BlockIOWeight"/>
|
||||||
|
|
||||||
|
<variablelist class="dbus-property" generated="True" extra-ref="StartupBlockIOWeight"/>
|
||||||
|
|
||||||
|
<variablelist class="dbus-property" generated="True" extra-ref="BlockIODeviceWeight"/>
|
||||||
|
|
||||||
|
<variablelist class="dbus-property" generated="True" extra-ref="BlockIOReadBandwidth"/>
|
||||||
|
|
||||||
|
<variablelist class="dbus-property" generated="True" extra-ref="BlockIOWriteBandwidth"/>
|
||||||
|
|
||||||
<variablelist class="dbus-property" generated="True" extra-ref="MemoryAccounting"/>
|
<variablelist class="dbus-property" generated="True" extra-ref="MemoryAccounting"/>
|
||||||
|
|
||||||
<variablelist class="dbus-property" generated="True" extra-ref="DefaultMemoryLow"/>
|
<variablelist class="dbus-property" generated="True" extra-ref="DefaultMemoryLow"/>
|
||||||
|
@ -8209,6 +8375,8 @@ node /org/freedesktop/systemd1/unit/home_2emount {
|
||||||
|
|
||||||
<variablelist class="dbus-property" generated="True" extra-ref="MemoryZSwapWriteback"/>
|
<variablelist class="dbus-property" generated="True" extra-ref="MemoryZSwapWriteback"/>
|
||||||
|
|
||||||
|
<variablelist class="dbus-property" generated="True" extra-ref="MemoryLimit"/>
|
||||||
|
|
||||||
<variablelist class="dbus-property" generated="True" extra-ref="DevicePolicy"/>
|
<variablelist class="dbus-property" generated="True" extra-ref="DevicePolicy"/>
|
||||||
|
|
||||||
<variablelist class="dbus-property" generated="True" extra-ref="DeviceAllow"/>
|
<variablelist class="dbus-property" generated="True" extra-ref="DeviceAllow"/>
|
||||||
|
@ -8964,6 +9132,10 @@ node /org/freedesktop/systemd1/unit/dev_2dsda3_2eswap {
|
||||||
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||||
readonly t StartupCPUWeight = ...;
|
readonly t StartupCPUWeight = ...;
|
||||||
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||||
|
readonly t CPUShares = ...;
|
||||||
|
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||||
|
readonly t StartupCPUShares = ...;
|
||||||
|
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||||
readonly t CPUQuotaPerSecUSec = ...;
|
readonly t CPUQuotaPerSecUSec = ...;
|
||||||
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||||
readonly t CPUQuotaPeriodUSec = ...;
|
readonly t CPUQuotaPeriodUSec = ...;
|
||||||
|
@ -8994,6 +9166,18 @@ node /org/freedesktop/systemd1/unit/dev_2dsda3_2eswap {
|
||||||
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||||
readonly a(st) IODeviceLatencyTargetUSec = [...];
|
readonly a(st) IODeviceLatencyTargetUSec = [...];
|
||||||
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||||
|
readonly b BlockIOAccounting = ...;
|
||||||
|
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||||
|
readonly t BlockIOWeight = ...;
|
||||||
|
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||||
|
readonly t StartupBlockIOWeight = ...;
|
||||||
|
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||||
|
readonly a(st) BlockIODeviceWeight = [...];
|
||||||
|
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||||
|
readonly a(st) BlockIOReadBandwidth = [...];
|
||||||
|
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||||
|
readonly a(st) BlockIOWriteBandwidth = [...];
|
||||||
|
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||||
readonly b MemoryAccounting = ...;
|
readonly b MemoryAccounting = ...;
|
||||||
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||||
readonly t DefaultMemoryLow = ...;
|
readonly t DefaultMemoryLow = ...;
|
||||||
|
@ -9026,6 +9210,8 @@ node /org/freedesktop/systemd1/unit/dev_2dsda3_2eswap {
|
||||||
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||||
readonly b MemoryZSwapWriteback = ...;
|
readonly b MemoryZSwapWriteback = ...;
|
||||||
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||||
|
readonly t MemoryLimit = ...;
|
||||||
|
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||||
readonly s DevicePolicy = '...';
|
readonly s DevicePolicy = '...';
|
||||||
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||||
readonly a(ss) DeviceAllow = [...];
|
readonly a(ss) DeviceAllow = [...];
|
||||||
|
@ -9529,6 +9715,10 @@ node /org/freedesktop/systemd1/unit/dev_2dsda3_2eswap {
|
||||||
|
|
||||||
<!--property StartupCPUWeight is not documented!-->
|
<!--property StartupCPUWeight is not documented!-->
|
||||||
|
|
||||||
|
<!--property CPUShares is not documented!-->
|
||||||
|
|
||||||
|
<!--property StartupCPUShares is not documented!-->
|
||||||
|
|
||||||
<!--property CPUQuotaPerSecUSec is not documented!-->
|
<!--property CPUQuotaPerSecUSec is not documented!-->
|
||||||
|
|
||||||
<!--property CPUQuotaPeriodUSec is not documented!-->
|
<!--property CPUQuotaPeriodUSec is not documented!-->
|
||||||
|
@ -9559,6 +9749,18 @@ node /org/freedesktop/systemd1/unit/dev_2dsda3_2eswap {
|
||||||
|
|
||||||
<!--property IODeviceLatencyTargetUSec is not documented!-->
|
<!--property IODeviceLatencyTargetUSec is not documented!-->
|
||||||
|
|
||||||
|
<!--property BlockIOAccounting is not documented!-->
|
||||||
|
|
||||||
|
<!--property BlockIOWeight is not documented!-->
|
||||||
|
|
||||||
|
<!--property StartupBlockIOWeight is not documented!-->
|
||||||
|
|
||||||
|
<!--property BlockIODeviceWeight is not documented!-->
|
||||||
|
|
||||||
|
<!--property BlockIOReadBandwidth is not documented!-->
|
||||||
|
|
||||||
|
<!--property BlockIOWriteBandwidth is not documented!-->
|
||||||
|
|
||||||
<!--property MemoryAccounting is not documented!-->
|
<!--property MemoryAccounting is not documented!-->
|
||||||
|
|
||||||
<!--property DefaultMemoryLow is not documented!-->
|
<!--property DefaultMemoryLow is not documented!-->
|
||||||
|
@ -9591,6 +9793,8 @@ node /org/freedesktop/systemd1/unit/dev_2dsda3_2eswap {
|
||||||
|
|
||||||
<!--property MemoryZSwapWriteback is not documented!-->
|
<!--property MemoryZSwapWriteback is not documented!-->
|
||||||
|
|
||||||
|
<!--property MemoryLimit is not documented!-->
|
||||||
|
|
||||||
<!--property DevicePolicy is not documented!-->
|
<!--property DevicePolicy is not documented!-->
|
||||||
|
|
||||||
<!--property DeviceAllow is not documented!-->
|
<!--property DeviceAllow is not documented!-->
|
||||||
|
@ -10053,6 +10257,10 @@ node /org/freedesktop/systemd1/unit/dev_2dsda3_2eswap {
|
||||||
|
|
||||||
<variablelist class="dbus-property" generated="True" extra-ref="StartupCPUWeight"/>
|
<variablelist class="dbus-property" generated="True" extra-ref="StartupCPUWeight"/>
|
||||||
|
|
||||||
|
<variablelist class="dbus-property" generated="True" extra-ref="CPUShares"/>
|
||||||
|
|
||||||
|
<variablelist class="dbus-property" generated="True" extra-ref="StartupCPUShares"/>
|
||||||
|
|
||||||
<variablelist class="dbus-property" generated="True" extra-ref="CPUQuotaPerSecUSec"/>
|
<variablelist class="dbus-property" generated="True" extra-ref="CPUQuotaPerSecUSec"/>
|
||||||
|
|
||||||
<variablelist class="dbus-property" generated="True" extra-ref="CPUQuotaPeriodUSec"/>
|
<variablelist class="dbus-property" generated="True" extra-ref="CPUQuotaPeriodUSec"/>
|
||||||
|
@ -10083,6 +10291,18 @@ node /org/freedesktop/systemd1/unit/dev_2dsda3_2eswap {
|
||||||
|
|
||||||
<variablelist class="dbus-property" generated="True" extra-ref="IODeviceLatencyTargetUSec"/>
|
<variablelist class="dbus-property" generated="True" extra-ref="IODeviceLatencyTargetUSec"/>
|
||||||
|
|
||||||
|
<variablelist class="dbus-property" generated="True" extra-ref="BlockIOAccounting"/>
|
||||||
|
|
||||||
|
<variablelist class="dbus-property" generated="True" extra-ref="BlockIOWeight"/>
|
||||||
|
|
||||||
|
<variablelist class="dbus-property" generated="True" extra-ref="StartupBlockIOWeight"/>
|
||||||
|
|
||||||
|
<variablelist class="dbus-property" generated="True" extra-ref="BlockIODeviceWeight"/>
|
||||||
|
|
||||||
|
<variablelist class="dbus-property" generated="True" extra-ref="BlockIOReadBandwidth"/>
|
||||||
|
|
||||||
|
<variablelist class="dbus-property" generated="True" extra-ref="BlockIOWriteBandwidth"/>
|
||||||
|
|
||||||
<variablelist class="dbus-property" generated="True" extra-ref="MemoryAccounting"/>
|
<variablelist class="dbus-property" generated="True" extra-ref="MemoryAccounting"/>
|
||||||
|
|
||||||
<variablelist class="dbus-property" generated="True" extra-ref="DefaultMemoryLow"/>
|
<variablelist class="dbus-property" generated="True" extra-ref="DefaultMemoryLow"/>
|
||||||
|
@ -10115,6 +10335,8 @@ node /org/freedesktop/systemd1/unit/dev_2dsda3_2eswap {
|
||||||
|
|
||||||
<variablelist class="dbus-property" generated="True" extra-ref="MemoryZSwapWriteback"/>
|
<variablelist class="dbus-property" generated="True" extra-ref="MemoryZSwapWriteback"/>
|
||||||
|
|
||||||
|
<variablelist class="dbus-property" generated="True" extra-ref="MemoryLimit"/>
|
||||||
|
|
||||||
<variablelist class="dbus-property" generated="True" extra-ref="DevicePolicy"/>
|
<variablelist class="dbus-property" generated="True" extra-ref="DevicePolicy"/>
|
||||||
|
|
||||||
<variablelist class="dbus-property" generated="True" extra-ref="DeviceAllow"/>
|
<variablelist class="dbus-property" generated="True" extra-ref="DeviceAllow"/>
|
||||||
|
@ -10723,6 +10945,10 @@ node /org/freedesktop/systemd1/unit/system_2eslice {
|
||||||
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||||
readonly t StartupCPUWeight = ...;
|
readonly t StartupCPUWeight = ...;
|
||||||
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||||
|
readonly t CPUShares = ...;
|
||||||
|
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||||
|
readonly t StartupCPUShares = ...;
|
||||||
|
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||||
readonly t CPUQuotaPerSecUSec = ...;
|
readonly t CPUQuotaPerSecUSec = ...;
|
||||||
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||||
readonly t CPUQuotaPeriodUSec = ...;
|
readonly t CPUQuotaPeriodUSec = ...;
|
||||||
|
@ -10753,6 +10979,18 @@ node /org/freedesktop/systemd1/unit/system_2eslice {
|
||||||
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||||
readonly a(st) IODeviceLatencyTargetUSec = [...];
|
readonly a(st) IODeviceLatencyTargetUSec = [...];
|
||||||
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||||
|
readonly b BlockIOAccounting = ...;
|
||||||
|
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||||
|
readonly t BlockIOWeight = ...;
|
||||||
|
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||||
|
readonly t StartupBlockIOWeight = ...;
|
||||||
|
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||||
|
readonly a(st) BlockIODeviceWeight = [...];
|
||||||
|
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||||
|
readonly a(st) BlockIOReadBandwidth = [...];
|
||||||
|
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||||
|
readonly a(st) BlockIOWriteBandwidth = [...];
|
||||||
|
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||||
readonly b MemoryAccounting = ...;
|
readonly b MemoryAccounting = ...;
|
||||||
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||||
readonly t DefaultMemoryLow = ...;
|
readonly t DefaultMemoryLow = ...;
|
||||||
|
@ -10785,6 +11023,8 @@ node /org/freedesktop/systemd1/unit/system_2eslice {
|
||||||
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||||
readonly b MemoryZSwapWriteback = ...;
|
readonly b MemoryZSwapWriteback = ...;
|
||||||
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||||
|
readonly t MemoryLimit = ...;
|
||||||
|
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||||
readonly s DevicePolicy = '...';
|
readonly s DevicePolicy = '...';
|
||||||
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||||
readonly a(ss) DeviceAllow = [...];
|
readonly a(ss) DeviceAllow = [...];
|
||||||
|
@ -10898,6 +11138,10 @@ node /org/freedesktop/systemd1/unit/system_2eslice {
|
||||||
|
|
||||||
<!--property StartupCPUWeight is not documented!-->
|
<!--property StartupCPUWeight is not documented!-->
|
||||||
|
|
||||||
|
<!--property CPUShares is not documented!-->
|
||||||
|
|
||||||
|
<!--property StartupCPUShares is not documented!-->
|
||||||
|
|
||||||
<!--property CPUQuotaPerSecUSec is not documented!-->
|
<!--property CPUQuotaPerSecUSec is not documented!-->
|
||||||
|
|
||||||
<!--property CPUQuotaPeriodUSec is not documented!-->
|
<!--property CPUQuotaPeriodUSec is not documented!-->
|
||||||
|
@ -10928,6 +11172,18 @@ node /org/freedesktop/systemd1/unit/system_2eslice {
|
||||||
|
|
||||||
<!--property IODeviceLatencyTargetUSec is not documented!-->
|
<!--property IODeviceLatencyTargetUSec is not documented!-->
|
||||||
|
|
||||||
|
<!--property BlockIOAccounting is not documented!-->
|
||||||
|
|
||||||
|
<!--property BlockIOWeight is not documented!-->
|
||||||
|
|
||||||
|
<!--property StartupBlockIOWeight is not documented!-->
|
||||||
|
|
||||||
|
<!--property BlockIODeviceWeight is not documented!-->
|
||||||
|
|
||||||
|
<!--property BlockIOReadBandwidth is not documented!-->
|
||||||
|
|
||||||
|
<!--property BlockIOWriteBandwidth is not documented!-->
|
||||||
|
|
||||||
<!--property MemoryAccounting is not documented!-->
|
<!--property MemoryAccounting is not documented!-->
|
||||||
|
|
||||||
<!--property DefaultMemoryLow is not documented!-->
|
<!--property DefaultMemoryLow is not documented!-->
|
||||||
|
@ -10960,6 +11216,8 @@ node /org/freedesktop/systemd1/unit/system_2eslice {
|
||||||
|
|
||||||
<!--property MemoryZSwapWriteback is not documented!-->
|
<!--property MemoryZSwapWriteback is not documented!-->
|
||||||
|
|
||||||
|
<!--property MemoryLimit is not documented!-->
|
||||||
|
|
||||||
<!--property DevicePolicy is not documented!-->
|
<!--property DevicePolicy is not documented!-->
|
||||||
|
|
||||||
<!--property DeviceAllow is not documented!-->
|
<!--property DeviceAllow is not documented!-->
|
||||||
|
@ -11080,6 +11338,10 @@ node /org/freedesktop/systemd1/unit/system_2eslice {
|
||||||
|
|
||||||
<variablelist class="dbus-property" generated="True" extra-ref="StartupCPUWeight"/>
|
<variablelist class="dbus-property" generated="True" extra-ref="StartupCPUWeight"/>
|
||||||
|
|
||||||
|
<variablelist class="dbus-property" generated="True" extra-ref="CPUShares"/>
|
||||||
|
|
||||||
|
<variablelist class="dbus-property" generated="True" extra-ref="StartupCPUShares"/>
|
||||||
|
|
||||||
<variablelist class="dbus-property" generated="True" extra-ref="CPUQuotaPerSecUSec"/>
|
<variablelist class="dbus-property" generated="True" extra-ref="CPUQuotaPerSecUSec"/>
|
||||||
|
|
||||||
<variablelist class="dbus-property" generated="True" extra-ref="CPUQuotaPeriodUSec"/>
|
<variablelist class="dbus-property" generated="True" extra-ref="CPUQuotaPeriodUSec"/>
|
||||||
|
@ -11110,6 +11372,18 @@ node /org/freedesktop/systemd1/unit/system_2eslice {
|
||||||
|
|
||||||
<variablelist class="dbus-property" generated="True" extra-ref="IODeviceLatencyTargetUSec"/>
|
<variablelist class="dbus-property" generated="True" extra-ref="IODeviceLatencyTargetUSec"/>
|
||||||
|
|
||||||
|
<variablelist class="dbus-property" generated="True" extra-ref="BlockIOAccounting"/>
|
||||||
|
|
||||||
|
<variablelist class="dbus-property" generated="True" extra-ref="BlockIOWeight"/>
|
||||||
|
|
||||||
|
<variablelist class="dbus-property" generated="True" extra-ref="StartupBlockIOWeight"/>
|
||||||
|
|
||||||
|
<variablelist class="dbus-property" generated="True" extra-ref="BlockIODeviceWeight"/>
|
||||||
|
|
||||||
|
<variablelist class="dbus-property" generated="True" extra-ref="BlockIOReadBandwidth"/>
|
||||||
|
|
||||||
|
<variablelist class="dbus-property" generated="True" extra-ref="BlockIOWriteBandwidth"/>
|
||||||
|
|
||||||
<variablelist class="dbus-property" generated="True" extra-ref="MemoryAccounting"/>
|
<variablelist class="dbus-property" generated="True" extra-ref="MemoryAccounting"/>
|
||||||
|
|
||||||
<variablelist class="dbus-property" generated="True" extra-ref="DefaultMemoryLow"/>
|
<variablelist class="dbus-property" generated="True" extra-ref="DefaultMemoryLow"/>
|
||||||
|
@ -11142,6 +11416,8 @@ node /org/freedesktop/systemd1/unit/system_2eslice {
|
||||||
|
|
||||||
<variablelist class="dbus-property" generated="True" extra-ref="MemoryZSwapWriteback"/>
|
<variablelist class="dbus-property" generated="True" extra-ref="MemoryZSwapWriteback"/>
|
||||||
|
|
||||||
|
<variablelist class="dbus-property" generated="True" extra-ref="MemoryLimit"/>
|
||||||
|
|
||||||
<variablelist class="dbus-property" generated="True" extra-ref="DevicePolicy"/>
|
<variablelist class="dbus-property" generated="True" extra-ref="DevicePolicy"/>
|
||||||
|
|
||||||
<variablelist class="dbus-property" generated="True" extra-ref="DeviceAllow"/>
|
<variablelist class="dbus-property" generated="True" extra-ref="DeviceAllow"/>
|
||||||
|
@ -11293,6 +11569,10 @@ node /org/freedesktop/systemd1/unit/session_2d1_2escope {
|
||||||
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||||
readonly t StartupCPUWeight = ...;
|
readonly t StartupCPUWeight = ...;
|
||||||
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||||
|
readonly t CPUShares = ...;
|
||||||
|
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||||
|
readonly t StartupCPUShares = ...;
|
||||||
|
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||||
readonly t CPUQuotaPerSecUSec = ...;
|
readonly t CPUQuotaPerSecUSec = ...;
|
||||||
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||||
readonly t CPUQuotaPeriodUSec = ...;
|
readonly t CPUQuotaPeriodUSec = ...;
|
||||||
|
@ -11323,6 +11603,18 @@ node /org/freedesktop/systemd1/unit/session_2d1_2escope {
|
||||||
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||||
readonly a(st) IODeviceLatencyTargetUSec = [...];
|
readonly a(st) IODeviceLatencyTargetUSec = [...];
|
||||||
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||||
|
readonly b BlockIOAccounting = ...;
|
||||||
|
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||||
|
readonly t BlockIOWeight = ...;
|
||||||
|
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||||
|
readonly t StartupBlockIOWeight = ...;
|
||||||
|
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||||
|
readonly a(st) BlockIODeviceWeight = [...];
|
||||||
|
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||||
|
readonly a(st) BlockIOReadBandwidth = [...];
|
||||||
|
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||||
|
readonly a(st) BlockIOWriteBandwidth = [...];
|
||||||
|
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||||
readonly b MemoryAccounting = ...;
|
readonly b MemoryAccounting = ...;
|
||||||
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||||
readonly t DefaultMemoryLow = ...;
|
readonly t DefaultMemoryLow = ...;
|
||||||
|
@ -11355,6 +11647,8 @@ node /org/freedesktop/systemd1/unit/session_2d1_2escope {
|
||||||
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||||
readonly b MemoryZSwapWriteback = ...;
|
readonly b MemoryZSwapWriteback = ...;
|
||||||
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||||
|
readonly t MemoryLimit = ...;
|
||||||
|
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||||
readonly s DevicePolicy = '...';
|
readonly s DevicePolicy = '...';
|
||||||
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
@org.freedesktop.DBus.Property.EmitsChangedSignal("false")
|
||||||
readonly a(ss) DeviceAllow = [...];
|
readonly a(ss) DeviceAllow = [...];
|
||||||
|
@ -11488,6 +11782,10 @@ node /org/freedesktop/systemd1/unit/session_2d1_2escope {
|
||||||
|
|
||||||
<!--property StartupCPUWeight is not documented!-->
|
<!--property StartupCPUWeight is not documented!-->
|
||||||
|
|
||||||
|
<!--property CPUShares is not documented!-->
|
||||||
|
|
||||||
|
<!--property StartupCPUShares is not documented!-->
|
||||||
|
|
||||||
<!--property CPUQuotaPerSecUSec is not documented!-->
|
<!--property CPUQuotaPerSecUSec is not documented!-->
|
||||||
|
|
||||||
<!--property CPUQuotaPeriodUSec is not documented!-->
|
<!--property CPUQuotaPeriodUSec is not documented!-->
|
||||||
|
@ -11518,6 +11816,18 @@ node /org/freedesktop/systemd1/unit/session_2d1_2escope {
|
||||||
|
|
||||||
<!--property IODeviceLatencyTargetUSec is not documented!-->
|
<!--property IODeviceLatencyTargetUSec is not documented!-->
|
||||||
|
|
||||||
|
<!--property BlockIOAccounting is not documented!-->
|
||||||
|
|
||||||
|
<!--property BlockIOWeight is not documented!-->
|
||||||
|
|
||||||
|
<!--property StartupBlockIOWeight is not documented!-->
|
||||||
|
|
||||||
|
<!--property BlockIODeviceWeight is not documented!-->
|
||||||
|
|
||||||
|
<!--property BlockIOReadBandwidth is not documented!-->
|
||||||
|
|
||||||
|
<!--property BlockIOWriteBandwidth is not documented!-->
|
||||||
|
|
||||||
<!--property MemoryAccounting is not documented!-->
|
<!--property MemoryAccounting is not documented!-->
|
||||||
|
|
||||||
<!--property DefaultMemoryLow is not documented!-->
|
<!--property DefaultMemoryLow is not documented!-->
|
||||||
|
@ -11550,6 +11860,8 @@ node /org/freedesktop/systemd1/unit/session_2d1_2escope {
|
||||||
|
|
||||||
<!--property MemoryZSwapWriteback is not documented!-->
|
<!--property MemoryZSwapWriteback is not documented!-->
|
||||||
|
|
||||||
|
<!--property MemoryLimit is not documented!-->
|
||||||
|
|
||||||
<!--property DevicePolicy is not documented!-->
|
<!--property DevicePolicy is not documented!-->
|
||||||
|
|
||||||
<!--property DeviceAllow is not documented!-->
|
<!--property DeviceAllow is not documented!-->
|
||||||
|
@ -11700,6 +12012,10 @@ node /org/freedesktop/systemd1/unit/session_2d1_2escope {
|
||||||
|
|
||||||
<variablelist class="dbus-property" generated="True" extra-ref="StartupCPUWeight"/>
|
<variablelist class="dbus-property" generated="True" extra-ref="StartupCPUWeight"/>
|
||||||
|
|
||||||
|
<variablelist class="dbus-property" generated="True" extra-ref="CPUShares"/>
|
||||||
|
|
||||||
|
<variablelist class="dbus-property" generated="True" extra-ref="StartupCPUShares"/>
|
||||||
|
|
||||||
<variablelist class="dbus-property" generated="True" extra-ref="CPUQuotaPerSecUSec"/>
|
<variablelist class="dbus-property" generated="True" extra-ref="CPUQuotaPerSecUSec"/>
|
||||||
|
|
||||||
<variablelist class="dbus-property" generated="True" extra-ref="CPUQuotaPeriodUSec"/>
|
<variablelist class="dbus-property" generated="True" extra-ref="CPUQuotaPeriodUSec"/>
|
||||||
|
@ -11730,6 +12046,18 @@ node /org/freedesktop/systemd1/unit/session_2d1_2escope {
|
||||||
|
|
||||||
<variablelist class="dbus-property" generated="True" extra-ref="IODeviceLatencyTargetUSec"/>
|
<variablelist class="dbus-property" generated="True" extra-ref="IODeviceLatencyTargetUSec"/>
|
||||||
|
|
||||||
|
<variablelist class="dbus-property" generated="True" extra-ref="BlockIOAccounting"/>
|
||||||
|
|
||||||
|
<variablelist class="dbus-property" generated="True" extra-ref="BlockIOWeight"/>
|
||||||
|
|
||||||
|
<variablelist class="dbus-property" generated="True" extra-ref="StartupBlockIOWeight"/>
|
||||||
|
|
||||||
|
<variablelist class="dbus-property" generated="True" extra-ref="BlockIODeviceWeight"/>
|
||||||
|
|
||||||
|
<variablelist class="dbus-property" generated="True" extra-ref="BlockIOReadBandwidth"/>
|
||||||
|
|
||||||
|
<variablelist class="dbus-property" generated="True" extra-ref="BlockIOWriteBandwidth"/>
|
||||||
|
|
||||||
<variablelist class="dbus-property" generated="True" extra-ref="MemoryAccounting"/>
|
<variablelist class="dbus-property" generated="True" extra-ref="MemoryAccounting"/>
|
||||||
|
|
||||||
<variablelist class="dbus-property" generated="True" extra-ref="DefaultMemoryLow"/>
|
<variablelist class="dbus-property" generated="True" extra-ref="DefaultMemoryLow"/>
|
||||||
|
@ -11762,6 +12090,8 @@ node /org/freedesktop/systemd1/unit/session_2d1_2escope {
|
||||||
|
|
||||||
<variablelist class="dbus-property" generated="True" extra-ref="MemoryZSwapWriteback"/>
|
<variablelist class="dbus-property" generated="True" extra-ref="MemoryZSwapWriteback"/>
|
||||||
|
|
||||||
|
<variablelist class="dbus-property" generated="True" extra-ref="MemoryLimit"/>
|
||||||
|
|
||||||
<variablelist class="dbus-property" generated="True" extra-ref="DevicePolicy"/>
|
<variablelist class="dbus-property" generated="True" extra-ref="DevicePolicy"/>
|
||||||
|
|
||||||
<variablelist class="dbus-property" generated="True" extra-ref="DeviceAllow"/>
|
<variablelist class="dbus-property" generated="True" extra-ref="DeviceAllow"/>
|
||||||
|
|
|
@ -506,9 +506,6 @@ Jan 12 10:46:45 example.com bluetoothd[8900]: gatt-time-server: Input/output err
|
||||||
<listitem>
|
<listitem>
|
||||||
<para>Reload one or more units if they support it. If not, stop and then start them instead. If the units
|
<para>Reload one or more units if they support it. If not, stop and then start them instead. If the units
|
||||||
are not running yet, they will be started.</para>
|
are not running yet, they will be started.</para>
|
||||||
|
|
||||||
<para>This has a slightly differing functionality when used in combination with <option>--marked</option>,
|
|
||||||
see below.</para>
|
|
||||||
</listitem>
|
</listitem>
|
||||||
</varlistentry>
|
</varlistentry>
|
||||||
<varlistentry>
|
<varlistentry>
|
||||||
|
|
|
@ -24,7 +24,7 @@
|
||||||
|
|
||||||
<refsynopsisdiv>
|
<refsynopsisdiv>
|
||||||
<programlisting>
|
<programlisting>
|
||||||
Host unix/* unix,* vsock/* vsock,* vsock-mux/* vsock-mux,*
|
Host unix/* vsock/* vsock-mux/*
|
||||||
ProxyCommand /usr/lib/systemd/systemd-ssh-proxy %h %p
|
ProxyCommand /usr/lib/systemd/systemd-ssh-proxy %h %p
|
||||||
ProxyUseFdpass yes
|
ProxyUseFdpass yes
|
||||||
</programlisting>
|
</programlisting>
|
||||||
|
@ -46,7 +46,7 @@ Host unix/* unix,* vsock/* vsock,* vsock-mux/* vsock-mux,*
|
||||||
configuration fragment like the following:</para>
|
configuration fragment like the following:</para>
|
||||||
|
|
||||||
<programlisting>
|
<programlisting>
|
||||||
Host unix/* unix,* vsock/* vsock,* vsock-mux/* vsock-mux,*
|
Host unix/* vsock/* vsock-mux/*
|
||||||
ProxyCommand /usr/lib/systemd/systemd-ssh-proxy %h %p
|
ProxyCommand /usr/lib/systemd/systemd-ssh-proxy %h %p
|
||||||
ProxyUseFdpass yes
|
ProxyUseFdpass yes
|
||||||
CheckHostIP no
|
CheckHostIP no
|
||||||
|
@ -69,9 +69,7 @@ Host .host
|
||||||
direct <constant>AF_VSOCK</constant> communication between the host and guests, and provide their own
|
direct <constant>AF_VSOCK</constant> communication between the host and guests, and provide their own
|
||||||
multiplexer over <constant>AF_UNIX</constant> sockets. See
|
multiplexer over <constant>AF_UNIX</constant> sockets. See
|
||||||
<ulink url="https://github.com/cloud-hypervisor/cloud-hypervisor/blob/main/docs/vsock.md">cloud-hypervisor VSOCK support</ulink>
|
<ulink url="https://github.com/cloud-hypervisor/cloud-hypervisor/blob/main/docs/vsock.md">cloud-hypervisor VSOCK support</ulink>
|
||||||
and <ulink url="https://github.com/firecracker-microvm/firecracker/blob/main/docs/vsock.md">Using the Firecracker Virtio-vsock Device</ulink>.
|
and <ulink url="https://github.com/firecracker-microvm/firecracker/blob/main/docs/vsock.md">Using the Firecracker Virtio-vsock Device</ulink>.</para>
|
||||||
Note that <literal>,</literal> can be used as a separator instead of <literal>/</literal> to be
|
|
||||||
compatible with tools like <literal>scp</literal> and <literal>rsync</literal>.</para>
|
|
||||||
|
|
||||||
<para>Moreover, connecting to <literal>.host</literal> will connect to the local host via SSH, without
|
<para>Moreover, connecting to <literal>.host</literal> will connect to the local host via SSH, without
|
||||||
involving networking.</para>
|
involving networking.</para>
|
||||||
|
@ -115,12 +113,6 @@ Host .host
|
||||||
|
|
||||||
<programlisting>ssh unix/run/ssh-unix-local/socket</programlisting>
|
<programlisting>ssh unix/run/ssh-unix-local/socket</programlisting>
|
||||||
</example>
|
</example>
|
||||||
|
|
||||||
<example>
|
|
||||||
<title>Copy local 'foo' file to a local VM with CID 1348</title>
|
|
||||||
|
|
||||||
<programlisting>scp foo vsock,1348:</programlisting>
|
|
||||||
</example>
|
|
||||||
</refsect1>
|
</refsect1>
|
||||||
|
|
||||||
<refsect1>
|
<refsect1>
|
||||||
|
|
|
@ -1738,10 +1738,8 @@ NFTSet=prefix:netdev:filter:eth_ipv4_prefix</programlisting>
|
||||||
<term><varname>FirewallMark=</varname></term>
|
<term><varname>FirewallMark=</varname></term>
|
||||||
<listitem>
|
<listitem>
|
||||||
<para>Specifies the iptables firewall mark value to match (a number in the range
|
<para>Specifies the iptables firewall mark value to match (a number in the range
|
||||||
0…4294967295). Optionally, the firewall mask (also a number between 0…4294967295) can be
|
1…4294967295). Optionally, the firewall mask (also a number between 1…4294967295) can be
|
||||||
suffixed with a slash (<literal>/</literal>), e.g., <literal>7/255</literal>. When the
|
suffixed with a slash (<literal>/</literal>), e.g., <literal>7/255</literal>.</para>
|
||||||
mark value is non-zero and no mask is explicitly specified, all bits of the mark are
|
|
||||||
compared. </para>
|
|
||||||
|
|
||||||
<xi:include href="version-info.xml" xpointer="v235"/>
|
<xi:include href="version-info.xml" xpointer="v235"/>
|
||||||
</listitem>
|
</listitem>
|
||||||
|
|
|
@ -769,16 +769,6 @@
|
||||||
<xi:include href="version-info.xml" xpointer="v258"/>
|
<xi:include href="version-info.xml" xpointer="v258"/>
|
||||||
</listitem>
|
</listitem>
|
||||||
</varlistentry>
|
</varlistentry>
|
||||||
<varlistentry>
|
|
||||||
<term><option>--revert</option></term>
|
|
||||||
<listitem>
|
|
||||||
<para>Revert settings previously set with <command>udevadm control</command> command. When
|
|
||||||
specified, settings set with <option>-l/--log-level=</option>, <option>--trace</option>,
|
|
||||||
<option>-m/--children-max=</option>, and <option>-p/--property=</option> will be cleared.</para>
|
|
||||||
|
|
||||||
<xi:include href="version-info.xml" xpointer="v258"/>
|
|
||||||
</listitem>
|
|
||||||
</varlistentry>
|
|
||||||
<varlistentry>
|
<varlistentry>
|
||||||
<term><option>-t</option></term>
|
<term><option>-t</option></term>
|
||||||
<term><option>--timeout=<replaceable>seconds</replaceable></option></term>
|
<term><option>--timeout=<replaceable>seconds</replaceable></option></term>
|
||||||
|
|
100
meson.build
100
meson.build
|
@ -13,12 +13,6 @@ project('systemd', 'c',
|
||||||
meson_version : '>= 0.62.0',
|
meson_version : '>= 0.62.0',
|
||||||
)
|
)
|
||||||
|
|
||||||
add_test_setup(
|
|
||||||
'default',
|
|
||||||
exclude_suites : ['integration-tests'],
|
|
||||||
is_default : true,
|
|
||||||
)
|
|
||||||
|
|
||||||
project_major_version = meson.project_version().split('.')[0].split('~')[0]
|
project_major_version = meson.project_version().split('.')[0].split('~')[0]
|
||||||
if meson.project_version().contains('.')
|
if meson.project_version().contains('.')
|
||||||
project_minor_version = meson.project_version().split('.')[-1].split('~')[0]
|
project_minor_version = meson.project_version().split('.')[-1].split('~')[0]
|
||||||
|
@ -345,6 +339,7 @@ meson_build_sh = find_program('tools/meson-build.sh')
|
||||||
want_tests = get_option('tests')
|
want_tests = get_option('tests')
|
||||||
want_slow_tests = want_tests != 'false' and get_option('slow-tests')
|
want_slow_tests = want_tests != 'false' and get_option('slow-tests')
|
||||||
want_fuzz_tests = want_tests != 'false' and get_option('fuzz-tests')
|
want_fuzz_tests = want_tests != 'false' and get_option('fuzz-tests')
|
||||||
|
want_integration_tests = want_tests != 'false' and get_option('integration-tests')
|
||||||
install_tests = want_tests != 'false' and get_option('install-tests')
|
install_tests = want_tests != 'false' and get_option('install-tests')
|
||||||
|
|
||||||
if add_languages('cpp', native : false, required : fuzzer_build)
|
if add_languages('cpp', native : false, required : fuzzer_build)
|
||||||
|
@ -1482,18 +1477,50 @@ endif
|
||||||
dmi_arches = ['x86', 'x86_64', 'aarch64', 'arm', 'ia64', 'loongarch64', 'mips', 'riscv64']
|
dmi_arches = ['x86', 'x86_64', 'aarch64', 'arm', 'ia64', 'loongarch64', 'mips', 'riscv64']
|
||||||
conf.set10('HAVE_DMI', host_machine.cpu_family() in dmi_arches)
|
conf.set10('HAVE_DMI', host_machine.cpu_family() in dmi_arches)
|
||||||
|
|
||||||
|
# We support one or the other. If gcrypt is available, we assume it's there to
|
||||||
|
# be used, and use it in preference.
|
||||||
|
opt = get_option('cryptolib')
|
||||||
|
if opt == 'openssl' and conf.get('HAVE_OPENSSL') == 0
|
||||||
|
error('openssl requested as the default cryptolib, but not available')
|
||||||
|
endif
|
||||||
|
conf.set10('PREFER_OPENSSL',
|
||||||
|
opt == 'openssl' or (opt == 'auto' and conf.get('HAVE_OPENSSL') == 1 and conf.get('HAVE_GCRYPT') == 0))
|
||||||
|
conf.set10('HAVE_OPENSSL_OR_GCRYPT',
|
||||||
|
conf.get('HAVE_OPENSSL') == 1 or conf.get('HAVE_GCRYPT') == 1)
|
||||||
|
lib_openssl_or_gcrypt = conf.get('PREFER_OPENSSL') == 1 ? [libopenssl] : [libgcrypt, libgpg_error]
|
||||||
|
|
||||||
dns_over_tls = get_option('dns-over-tls')
|
dns_over_tls = get_option('dns-over-tls')
|
||||||
have_openssl = conf.get('HAVE_OPENSSL') == 1
|
if dns_over_tls != 'false'
|
||||||
if dns_over_tls == 'false'
|
if dns_over_tls == 'gnutls' and conf.get('PREFER_OPENSSL') == 1
|
||||||
have = false
|
error('Sorry, -Ddns-over-tls=gnutls is not supported when openssl is used as the cryptolib')
|
||||||
elif dns_over_tls == 'auto'
|
endif
|
||||||
have = have_openssl
|
|
||||||
elif have_openssl
|
if dns_over_tls == 'gnutls'
|
||||||
have = true
|
have_openssl = false
|
||||||
else
|
else
|
||||||
error('DNS-over-TLS support was requested, but OpenSSL support is disabled.')
|
have_openssl = conf.get('HAVE_OPENSSL') == 1
|
||||||
|
if dns_over_tls == 'openssl' and not have_openssl
|
||||||
|
error('DNS-over-TLS support was requested with openssl, but dependencies are not available')
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
if dns_over_tls == 'openssl' or have_openssl
|
||||||
|
have_gnutls = false
|
||||||
|
else
|
||||||
|
have_gnutls = conf.get('HAVE_GNUTLS') == 1 and libgnutls.version().version_compare('>= 3.6.0')
|
||||||
|
if dns_over_tls != 'auto' and not have_gnutls
|
||||||
|
str = dns_over_tls == 'gnutls' ? ' with gnutls' : ''
|
||||||
|
error('DNS-over-TLS support was requested@0@, but dependencies are not available'.format(str))
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
have = have_gnutls or have_openssl
|
||||||
|
else
|
||||||
|
have = false
|
||||||
|
have_gnutls = false
|
||||||
|
have_openssl = false
|
||||||
endif
|
endif
|
||||||
conf.set10('ENABLE_DNS_OVER_TLS', have)
|
conf.set10('ENABLE_DNS_OVER_TLS', have)
|
||||||
|
conf.set10('DNS_OVER_TLS_USE_GNUTLS', have_gnutls)
|
||||||
|
conf.set10('DNS_OVER_TLS_USE_OPENSSL', have_openssl)
|
||||||
|
|
||||||
default_dns_over_tls = get_option('default-dns-over-tls')
|
default_dns_over_tls = get_option('default-dns-over-tls')
|
||||||
if default_dns_over_tls != 'no' and conf.get('ENABLE_DNS_OVER_TLS') == 0
|
if default_dns_over_tls != 'no' and conf.get('ENABLE_DNS_OVER_TLS') == 0
|
||||||
|
@ -1520,8 +1547,8 @@ have = get_option('repart').require(
|
||||||
conf.set10('ENABLE_REPART', have)
|
conf.set10('ENABLE_REPART', have)
|
||||||
|
|
||||||
default_dnssec = get_option('default-dnssec')
|
default_dnssec = get_option('default-dnssec')
|
||||||
if default_dnssec != 'no' and conf.get('HAVE_OPENSSL') == 0
|
if default_dnssec != 'no' and conf.get('HAVE_OPENSSL_OR_GCRYPT') == 0
|
||||||
message('default-dnssec cannot be set to yes or allow-downgrade when openssl is disabled. Setting default-dnssec to no.')
|
message('default-dnssec cannot be set to yes or allow-downgrade openssl and gcrypt are disabled. Setting default-dnssec to no.')
|
||||||
default_dnssec = 'no'
|
default_dnssec = 'no'
|
||||||
endif
|
endif
|
||||||
conf.set('DEFAULT_DNSSEC_MODE',
|
conf.set('DEFAULT_DNSSEC_MODE',
|
||||||
|
@ -1552,7 +1579,7 @@ conf.set10('ENABLE_STORAGETM', get_option('storagetm'))
|
||||||
|
|
||||||
have = get_option('importd').require(
|
have = get_option('importd').require(
|
||||||
conf.get('HAVE_LIBCURL') == 1 and
|
conf.get('HAVE_LIBCURL') == 1 and
|
||||||
conf.get('HAVE_OPENSSL') == 1 and
|
conf.get('HAVE_OPENSSL_OR_GCRYPT') == 1 and
|
||||||
conf.get('HAVE_ZLIB') == 1 and
|
conf.get('HAVE_ZLIB') == 1 and
|
||||||
conf.get('HAVE_XZ') == 1,
|
conf.get('HAVE_XZ') == 1,
|
||||||
error_message : 'curl, openssl/grypt, zlib and xz required').allowed()
|
error_message : 'curl, openssl/grypt, zlib and xz required').allowed()
|
||||||
|
@ -1961,12 +1988,11 @@ endif
|
||||||
conf.set_quoted('VERSION_TAG', version_tag)
|
conf.set_quoted('VERSION_TAG', version_tag)
|
||||||
|
|
||||||
vcs_tag = get_option('vcs-tag')
|
vcs_tag = get_option('vcs-tag')
|
||||||
version_h = custom_target('version',
|
version_h = vcs_tag(
|
||||||
build_always_stale : vcs_tag,
|
|
||||||
input : 'src/version/version.h.in',
|
input : 'src/version/version.h.in',
|
||||||
output : 'version.h',
|
output : 'version.h',
|
||||||
capture : true,
|
fallback : '',
|
||||||
command : ['tools/vcs-tag.sh', '@INPUT@', get_option('mode'), vcs_tag ? '1' : '0'],
|
command : [vcs_tag ? 'tools/vcs-tag.sh' : 'true', get_option('mode')],
|
||||||
)
|
)
|
||||||
|
|
||||||
shared_lib_tag = get_option('shared-lib-tag')
|
shared_lib_tag = get_option('shared-lib-tag')
|
||||||
|
@ -2021,18 +2047,11 @@ boot_stubs = []
|
||||||
|
|
||||||
build_dir_include = include_directories('.')
|
build_dir_include = include_directories('.')
|
||||||
|
|
||||||
basic_includes = [
|
basic_includes = include_directories(
|
||||||
include_directories(
|
|
||||||
'src/basic',
|
'src/basic',
|
||||||
'src/fundamental',
|
'src/fundamental',
|
||||||
'src/systemd',
|
'src/systemd',
|
||||||
'.',
|
'.')
|
||||||
),
|
|
||||||
include_directories(
|
|
||||||
'src/basic/include',
|
|
||||||
is_system : true,
|
|
||||||
),
|
|
||||||
]
|
|
||||||
|
|
||||||
libsystemd_includes = [basic_includes, include_directories(
|
libsystemd_includes = [basic_includes, include_directories(
|
||||||
'src/libsystemd/sd-bus',
|
'src/libsystemd/sd-bus',
|
||||||
|
@ -2641,6 +2660,10 @@ endif
|
||||||
#####################################################################
|
#####################################################################
|
||||||
|
|
||||||
mkosi = find_program('mkosi', required : false)
|
mkosi = find_program('mkosi', required : false)
|
||||||
|
if want_integration_tests and not mkosi.found()
|
||||||
|
error('Could not find mkosi which is required to run the integration tests')
|
||||||
|
endif
|
||||||
|
|
||||||
mkosi_depends = public_programs
|
mkosi_depends = public_programs
|
||||||
|
|
||||||
foreach executable : ['systemd-journal-remote', 'systemd-sbsign', 'systemd-keyutil']
|
foreach executable : ['systemd-journal-remote', 'systemd-sbsign', 'systemd-keyutil']
|
||||||
|
@ -3065,7 +3088,6 @@ foreach tuple : [
|
||||||
|
|
||||||
# optional features
|
# optional features
|
||||||
['dmi'],
|
['dmi'],
|
||||||
['DNS-over-TLS'],
|
|
||||||
['idn'],
|
['idn'],
|
||||||
['polkit'],
|
['polkit'],
|
||||||
['legacy-pkla', install_polkit_pkla],
|
['legacy-pkla', install_polkit_pkla],
|
||||||
|
@ -3130,6 +3152,22 @@ else
|
||||||
found += 'static-libudev(@0@)'.format(static_libudev)
|
found += 'static-libudev(@0@)'.format(static_libudev)
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
if conf.get('HAVE_OPENSSL_OR_GCRYPT') == 1 and conf.get('PREFER_OPENSSL') == 1
|
||||||
|
found += 'cryptolib(openssl)'
|
||||||
|
elif conf.get('HAVE_OPENSSL_OR_GCRYPT') == 1
|
||||||
|
found += 'cryptolib(gcrypt)'
|
||||||
|
else
|
||||||
|
missing += 'cryptolib'
|
||||||
|
endif
|
||||||
|
|
||||||
|
if conf.get('DNS_OVER_TLS_USE_GNUTLS') == 1
|
||||||
|
found += 'DNS-over-TLS(gnutls)'
|
||||||
|
elif conf.get('DNS_OVER_TLS_USE_OPENSSL') == 1
|
||||||
|
found += 'DNS-over-TLS(openssl)'
|
||||||
|
else
|
||||||
|
missing += 'DNS-over-TLS'
|
||||||
|
endif
|
||||||
|
|
||||||
summary({
|
summary({
|
||||||
'enabled' : ', '.join(found),
|
'enabled' : ', '.join(found),
|
||||||
'disabled' : ', '.join(missing)},
|
'disabled' : ', '.join(missing)},
|
||||||
|
|
|
@ -358,7 +358,7 @@ option('default-llmnr', type : 'combo',
|
||||||
choices : ['yes', 'resolve', 'no'],
|
choices : ['yes', 'resolve', 'no'],
|
||||||
description : 'default LLMNR mode',
|
description : 'default LLMNR mode',
|
||||||
value : 'yes')
|
value : 'yes')
|
||||||
option('dns-over-tls', type : 'combo', choices : ['auto', 'openssl', 'true', 'false'],
|
option('dns-over-tls', type : 'combo', choices : ['auto', 'gnutls', 'openssl', 'true', 'false'],
|
||||||
description : 'DNS-over-TLS support')
|
description : 'DNS-over-TLS support')
|
||||||
option('dns-servers', type : 'string',
|
option('dns-servers', type : 'string',
|
||||||
description : 'space-separated list of default DNS servers',
|
description : 'space-separated list of default DNS servers',
|
||||||
|
@ -434,8 +434,8 @@ option('gnutls', type : 'feature', deprecated : { 'true' : 'enabled', 'false' :
|
||||||
description : 'gnutls support')
|
description : 'gnutls support')
|
||||||
option('openssl', type : 'feature', deprecated : { 'true' : 'enabled', 'false' : 'disabled' },
|
option('openssl', type : 'feature', deprecated : { 'true' : 'enabled', 'false' : 'disabled' },
|
||||||
description : 'openssl support')
|
description : 'openssl support')
|
||||||
option('cryptolib', type : 'combo', choices : ['auto', 'openssl'],
|
option('cryptolib', type : 'combo', choices : ['auto', 'openssl', 'gcrypt'],
|
||||||
description : 'This option is deprecated and will be removed in a future release')
|
description : 'whether to use openssl or gcrypt where both are supported')
|
||||||
option('p11kit', type : 'feature', deprecated : { 'true' : 'enabled', 'false' : 'disabled' },
|
option('p11kit', type : 'feature', deprecated : { 'true' : 'enabled', 'false' : 'disabled' },
|
||||||
description : 'p11kit support')
|
description : 'p11kit support')
|
||||||
option('libfido2', type : 'feature', deprecated : { 'true' : 'enabled', 'false' : 'disabled' },
|
option('libfido2', type : 'feature', deprecated : { 'true' : 'enabled', 'false' : 'disabled' },
|
||||||
|
@ -509,7 +509,7 @@ option('install-tests', type : 'boolean', value : false,
|
||||||
description : 'install test executables')
|
description : 'install test executables')
|
||||||
option('log-message-verification', type : 'feature', deprecated : { 'true' : 'enabled', 'false' : 'disabled' },
|
option('log-message-verification', type : 'feature', deprecated : { 'true' : 'enabled', 'false' : 'disabled' },
|
||||||
description : 'do fake printf() calls to verify format strings')
|
description : 'do fake printf() calls to verify format strings')
|
||||||
option('integration-tests', type : 'boolean', value : false, deprecated : true,
|
option('integration-tests', type : 'boolean', value : false,
|
||||||
description : 'run the integration tests')
|
description : 'run the integration tests')
|
||||||
|
|
||||||
option('ok-color', type : 'combo',
|
option('ok-color', type : 'combo',
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
# SPDX-License-Identifier: LGPL-2.1-or-later
|
# SPDX-License-Identifier: LGPL-2.1-or-later
|
||||||
|
|
||||||
[Config]
|
[Config]
|
||||||
MinimumVersion=commit:dbb4020beee2cdf250f93a425794f1cf8b0fe693
|
MinimumVersion=commit:32105855f386c980069d134d1b0f8fea4db2129e
|
||||||
Dependencies=
|
Dependencies=
|
||||||
exitrd
|
exitrd
|
||||||
initrd
|
initrd
|
||||||
|
@ -39,11 +39,15 @@ WithTests=no
|
||||||
|
|
||||||
[Validation]
|
[Validation]
|
||||||
SignExpectedPcr=yes
|
SignExpectedPcr=yes
|
||||||
|
SignExpectedPcrKey=../mkosi.key
|
||||||
|
SignExpectedPcrCertificate=../mkosi.crt
|
||||||
|
VerityKey=../mkosi.key
|
||||||
|
VerityCertificate=../mkosi.crt
|
||||||
|
|
||||||
[Content]
|
[Content]
|
||||||
ExtraTrees=
|
ExtraTrees=
|
||||||
mkosi.extra.common
|
mkosi.extra.common
|
||||||
mkosi.crt:/usr/lib/verity.d/mkosi.crt # sysext verification key
|
../mkosi.crt:/usr/lib/verity.d/mkosi.crt # sysext verification key
|
||||||
%O/minimal-0.root-%a.raw:/usr/share/minimal_0.raw
|
%O/minimal-0.root-%a.raw:/usr/share/minimal_0.raw
|
||||||
%O/minimal-0.root-%a-verity.raw:/usr/share/minimal_0.verity
|
%O/minimal-0.root-%a-verity.raw:/usr/share/minimal_0.verity
|
||||||
%O/minimal-0.root-%a-verity-sig.raw:/usr/share/minimal_0.verity.sig
|
%O/minimal-0.root-%a-verity-sig.raw:/usr/share/minimal_0.verity.sig
|
||||||
|
@ -78,7 +82,8 @@ KernelCommandLine=
|
||||||
oops=panic
|
oops=panic
|
||||||
panic=-1
|
panic=-1
|
||||||
softlockup_panic=1
|
softlockup_panic=1
|
||||||
panic_on_warn=1
|
# Disabled due to BTRFS issue, waiting for the fix to become available
|
||||||
|
panic_on_warn=0
|
||||||
psi=1
|
psi=1
|
||||||
mitigations=off
|
mitigations=off
|
||||||
|
|
||||||
|
@ -133,14 +138,14 @@ Packages=
|
||||||
zstd
|
zstd
|
||||||
|
|
||||||
[Runtime]
|
[Runtime]
|
||||||
|
SshKey=../mkosi.key
|
||||||
|
SshCertificate=../mkosi.crt
|
||||||
Credentials=
|
Credentials=
|
||||||
journal.storage=persistent
|
journal.storage=persistent
|
||||||
tty.serial.hvc0.agetty.autologin=root
|
tty.serial.hvc0.agetty.autologin=root
|
||||||
tty.serial.hvc0.login.noauth=yes
|
tty.serial.hvc0.login.noauth=yes
|
||||||
tty.console.agetty.autologin=root
|
tty.console.agetty.autologin=root
|
||||||
tty.console.login.noauth=yes
|
tty.console.login.noauth=yes
|
||||||
tty.virtual.tty1.agetty.autologin=root
|
|
||||||
tty.virtual.tty1.login.noauth=yes
|
|
||||||
RuntimeBuildSources=yes
|
RuntimeBuildSources=yes
|
||||||
RuntimeScratch=no
|
RuntimeScratch=no
|
||||||
CPUs=2
|
CPUs=2
|
||||||
|
|
|
@ -4,7 +4,6 @@
|
||||||
Distribution=arch
|
Distribution=arch
|
||||||
|
|
||||||
[Content]
|
[Content]
|
||||||
PrepareScripts=systemd.prepare
|
|
||||||
VolatilePackages=
|
VolatilePackages=
|
||||||
systemd
|
systemd
|
||||||
systemd-libs
|
systemd-libs
|
||||||
|
|
|
@ -17,7 +17,6 @@ for PACKAGE in "${PACKAGES[@]}"; do
|
||||||
sed --quiet 's/^Depends On *: //p' # Filter out everything except "Depends On:" line and fetch dependencies from it.
|
sed --quiet 's/^Depends On *: //p' # Filter out everything except "Depends On:" line and fetch dependencies from it.
|
||||||
)"
|
)"
|
||||||
|
|
||||||
if ! ((SYSTEMD_REQUIRED_DEPS_ONLY)); then
|
|
||||||
DEPS="$DEPS $(
|
DEPS="$DEPS $(
|
||||||
pacman --sync --info "$PACKAGE" |
|
pacman --sync --info "$PACKAGE" |
|
||||||
sed '1,/^$/d' | # Only keep result from first repository (delete everything after first blank line).
|
sed '1,/^$/d' | # Only keep result from first repository (delete everything after first blank line).
|
||||||
|
@ -26,7 +25,6 @@ for PACKAGE in "${PACKAGES[@]}"; do
|
||||||
sed 's/ *\(.*\):.*/\1/' | # Drop descriptions (everything after first colon for all lines).
|
sed 's/ *\(.*\):.*/\1/' | # Drop descriptions (everything after first colon for all lines).
|
||||||
tr '\n' ' ' # Transform newlines to whitespace.
|
tr '\n' ' ' # Transform newlines to whitespace.
|
||||||
)"
|
)"
|
||||||
fi
|
|
||||||
done
|
done
|
||||||
|
|
||||||
echo "$DEPS" |
|
echo "$DEPS" |
|
|
@ -5,7 +5,6 @@ Distribution=|centos
|
||||||
Distribution=|fedora
|
Distribution=|fedora
|
||||||
|
|
||||||
[Content]
|
[Content]
|
||||||
PrepareScripts=systemd.prepare
|
|
||||||
VolatilePackages=
|
VolatilePackages=
|
||||||
systemd
|
systemd
|
||||||
systemd-boot
|
systemd-boot
|
||||||
|
|
|
@ -8,5 +8,5 @@ Distribution=|fedora
|
||||||
Environment=
|
Environment=
|
||||||
GIT_URL=https://src.fedoraproject.org/rpms/systemd.git
|
GIT_URL=https://src.fedoraproject.org/rpms/systemd.git
|
||||||
GIT_BRANCH=rawhide
|
GIT_BRANCH=rawhide
|
||||||
GIT_COMMIT=6646d13acae64665f63354cd60ecf963ee563b96
|
GIT_COMMIT=08ce156d74460867657fb9b201c8be93d31e07de
|
||||||
PKG_SUBDIR=fedora
|
PKG_SUBDIR=fedora
|
||||||
|
|
|
@ -8,12 +8,7 @@ fi
|
||||||
|
|
||||||
mapfile -t PACKAGES < <(jq --raw-output .VolatilePackages[] <"$MKOSI_CONFIG")
|
mapfile -t PACKAGES < <(jq --raw-output .VolatilePackages[] <"$MKOSI_CONFIG")
|
||||||
|
|
||||||
DEP_TYPES=(--requires)
|
for DEPS in --requires --recommends --suggests; do
|
||||||
if ! ((SYSTEMD_REQUIRED_DEPS_ONLY)); then
|
|
||||||
DEP_TYPES+=(--recommends --suggests)
|
|
||||||
fi
|
|
||||||
|
|
||||||
for DEPS in "${DEP_TYPES[@]}"; do
|
|
||||||
# We need --latest-limit=1 to only consider the newest version of the packages.
|
# We need --latest-limit=1 to only consider the newest version of the packages.
|
||||||
# --latest-limit=1 is per <name>.<arch> so we have to pass --arch= explicitly to make sure i686 packages
|
# --latest-limit=1 is per <name>.<arch> so we have to pass --arch= explicitly to make sure i686 packages
|
||||||
# are not considered on x86-64.
|
# are not considered on x86-64.
|
|
@ -5,7 +5,6 @@ Distribution=|debian
|
||||||
Distribution=|ubuntu
|
Distribution=|ubuntu
|
||||||
|
|
||||||
[Content]
|
[Content]
|
||||||
PrepareScripts=systemd.prepare
|
|
||||||
VolatilePackages=
|
VolatilePackages=
|
||||||
libnss-myhostname
|
libnss-myhostname
|
||||||
libnss-mymachines
|
libnss-mymachines
|
||||||
|
|
|
@ -9,5 +9,5 @@ Environment=
|
||||||
GIT_URL=https://salsa.debian.org/systemd-team/systemd.git
|
GIT_URL=https://salsa.debian.org/systemd-team/systemd.git
|
||||||
GIT_SUBDIR=debian
|
GIT_SUBDIR=debian
|
||||||
GIT_BRANCH=debian/master
|
GIT_BRANCH=debian/master
|
||||||
GIT_COMMIT=91a4d114e0b5a01385477f8862caedc1056fa68b
|
GIT_COMMIT=46432631232015b78071f84e5a3fb944621c83f7
|
||||||
PKG_SUBDIR=debian
|
PKG_SUBDIR=debian
|
||||||
|
|
|
@ -22,14 +22,9 @@ for PACKAGE in "${PACKAGES[@]}"; do
|
||||||
# Get all the dependencies of the systemd packages including recommended and suggested dependencies.
|
# Get all the dependencies of the systemd packages including recommended and suggested dependencies.
|
||||||
PATTERNS+=(
|
PATTERNS+=(
|
||||||
"?and(?reverse-depends(?exact-name($PACKAGE)), $COMMON)"
|
"?and(?reverse-depends(?exact-name($PACKAGE)), $COMMON)"
|
||||||
)
|
|
||||||
|
|
||||||
if ! ((SYSTEMD_REQUIRED_DEPS_ONLY)); then
|
|
||||||
PATTERNS+=(
|
|
||||||
"?and(?reverse-recommends(?exact-name($PACKAGE)), $COMMON)"
|
"?and(?reverse-recommends(?exact-name($PACKAGE)), $COMMON)"
|
||||||
"?and(?reverse-suggests(?exact-name($PACKAGE)), $COMMON)"
|
"?and(?reverse-suggests(?exact-name($PACKAGE)), $COMMON)"
|
||||||
)
|
)
|
||||||
fi
|
|
||||||
done
|
done
|
||||||
|
|
||||||
mkosi-install "${PATTERNS[@]}"
|
mkosi-install "${PATTERNS[@]}"
|
|
@ -11,7 +11,6 @@ Repositories=non-oss
|
||||||
SandboxTrees=macros.db_backend:/etc/rpm/macros.db_backend
|
SandboxTrees=macros.db_backend:/etc/rpm/macros.db_backend
|
||||||
|
|
||||||
[Content]
|
[Content]
|
||||||
PrepareScripts=systemd.prepare
|
|
||||||
VolatilePackages=
|
VolatilePackages=
|
||||||
libsystemd0
|
libsystemd0
|
||||||
libudev1
|
libudev1
|
||||||
|
|
|
@ -9,15 +9,11 @@ fi
|
||||||
mapfile -t PACKAGES < <(jq --raw-output .VolatilePackages[] <"$MKOSI_CONFIG")
|
mapfile -t PACKAGES < <(jq --raw-output .VolatilePackages[] <"$MKOSI_CONFIG")
|
||||||
|
|
||||||
DEPS=""
|
DEPS=""
|
||||||
DEP_TYPES=(--requires)
|
|
||||||
if ! ((SYSTEMD_REQUIRED_DEPS_ONLY)); then
|
|
||||||
DEP_TYPES+=(--recommends --suggests)
|
|
||||||
fi
|
|
||||||
|
|
||||||
for PACKAGE in "${PACKAGES[@]}"; do
|
for PACKAGE in "${PACKAGES[@]}"; do
|
||||||
# zypper's output is not machine readable so we make do with sed instead.
|
# zypper's output is not machine readable so we make do with sed instead.
|
||||||
DEPS="$DEPS\n$(
|
DEPS="$DEPS\n$(
|
||||||
zypper info "${DEP_TYPES[@]}" "$PACKAGE" |
|
zypper info --requires --recommends --suggests "$PACKAGE" |
|
||||||
sed '/Requires/,$!d' | # Remove everything before Requires line
|
sed '/Requires/,$!d' | # Remove everything before Requires line
|
||||||
sed --quiet 's/^ //p' # All indented lines have dependencies
|
sed --quiet 's/^ //p' # All indented lines have dependencies
|
||||||
)"
|
)"
|
|
@ -22,7 +22,7 @@ if ((LLVM)) && [[ -n "$SANITIZERS" ]]; then
|
||||||
MKOSI_LDFLAGS="$MKOSI_LDFLAGS -Wl,-rpath=$(realpath "$(clang --print-runtime-dir)")"
|
MKOSI_LDFLAGS="$MKOSI_LDFLAGS -Wl,-rpath=$(realpath "$(clang --print-runtime-dir)")"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
MKOSI_MESON_OPTIONS="-D mode=developer -D vcs-tag=${VCS_TAG:-true} -D b_sanitize=${SANITIZERS:-none} -Dtime-epoch=1744207869"
|
MKOSI_MESON_OPTIONS="-D mode=developer -D vcs-tag=${VCS_TAG:-true} -D b_sanitize=${SANITIZERS:-none}"
|
||||||
if ((WIPE)) && [[ -d "$BUILDDIR/meson-private" ]]; then
|
if ((WIPE)) && [[ -d "$BUILDDIR/meson-private" ]]; then
|
||||||
MKOSI_MESON_OPTIONS="$MKOSI_MESON_OPTIONS --wipe"
|
MKOSI_MESON_OPTIONS="$MKOSI_MESON_OPTIONS --wipe"
|
||||||
fi
|
fi
|
||||||
|
|
|
@ -52,7 +52,7 @@ if ((LLVM)) && [[ -n "$SANITIZERS" ]]; then
|
||||||
MKOSI_LDFLAGS="$MKOSI_LDFLAGS -Wl,-rpath=$(realpath "$(clang --print-runtime-dir)")"
|
MKOSI_LDFLAGS="$MKOSI_LDFLAGS -Wl,-rpath=$(realpath "$(clang --print-runtime-dir)")"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
MKOSI_MESON_OPTIONS="-D mode=developer -D vcs-tag=${VCS_TAG:-true} -D b_sanitize=${SANITIZERS:-none} -Dtime-epoch=1744207869"
|
MKOSI_MESON_OPTIONS="-D mode=developer -D vcs-tag=${VCS_TAG:-true} -D b_sanitize=${SANITIZERS:-none}"
|
||||||
if ((WIPE)) && [[ -d "$BUILDDIR/meson-private" ]]; then
|
if ((WIPE)) && [[ -d "$BUILDDIR/meson-private" ]]; then
|
||||||
MKOSI_MESON_OPTIONS="$MKOSI_MESON_OPTIONS --wipe"
|
MKOSI_MESON_OPTIONS="$MKOSI_MESON_OPTIONS --wipe"
|
||||||
fi
|
fi
|
||||||
|
|
|
@ -22,7 +22,7 @@ if ((LLVM)) && [[ -n "$SANITIZERS" ]]; then
|
||||||
MKOSI_LDFLAGS="$MKOSI_LDFLAGS -Wl,-rpath=$(realpath "$(clang --print-runtime-dir)")"
|
MKOSI_LDFLAGS="$MKOSI_LDFLAGS -Wl,-rpath=$(realpath "$(clang --print-runtime-dir)")"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
MKOSI_MESON_OPTIONS="-D mode=developer -D vcs-tag=${VCS_TAG:-true} -D b_sanitize=${SANITIZERS:-none} -Dtime-epoch=1744207869"
|
MKOSI_MESON_OPTIONS="-D mode=developer -D vcs-tag=${VCS_TAG:-true} -D b_sanitize=${SANITIZERS:-none}"
|
||||||
if ((WIPE)) && [[ -d "$BUILDDIR/meson-private" ]]; then
|
if ((WIPE)) && [[ -d "$BUILDDIR/meson-private" ]]; then
|
||||||
MKOSI_MESON_OPTIONS="$MKOSI_MESON_OPTIONS --wipe"
|
MKOSI_MESON_OPTIONS="$MKOSI_MESON_OPTIONS --wipe"
|
||||||
fi
|
fi
|
||||||
|
|
|
@ -57,7 +57,7 @@ if [[ -z "${MKOSI_LDFLAGS// }" ]]; then
|
||||||
MKOSI_LDFLAGS="%{nil}"
|
MKOSI_LDFLAGS="%{nil}"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
MKOSI_MESON_OPTIONS="-D mode=developer -D vcs-tag=${VCS_TAG:-true} -D b_sanitize=${SANITIZERS:-none} -Dtime-epoch=1744207869"
|
MKOSI_MESON_OPTIONS="-D mode=developer -D vcs-tag=${VCS_TAG:-true} -D b_sanitize=${SANITIZERS:-none}"
|
||||||
if ((WIPE)) && [[ -d "$BUILDDIR/meson-private" ]]; then
|
if ((WIPE)) && [[ -d "$BUILDDIR/meson-private" ]]; then
|
||||||
MKOSI_MESON_OPTIONS="$MKOSI_MESON_OPTIONS --wipe"
|
MKOSI_MESON_OPTIONS="$MKOSI_MESON_OPTIONS --wipe"
|
||||||
fi
|
fi
|
||||||
|
|
|
@ -3,9 +3,6 @@
|
||||||
[Output]
|
[Output]
|
||||||
Format=directory
|
Format=directory
|
||||||
|
|
||||||
[Build]
|
|
||||||
Environment=SYSTEMD_REQUIRED_DEPS_ONLY=1
|
|
||||||
|
|
||||||
[Content]
|
[Content]
|
||||||
Bootable=no
|
Bootable=no
|
||||||
Locale=C.UTF-8
|
Locale=C.UTF-8
|
||||||
|
@ -14,7 +11,6 @@ CleanPackageMetadata=yes
|
||||||
MakeInitrd=yes
|
MakeInitrd=yes
|
||||||
|
|
||||||
Packages=
|
Packages=
|
||||||
coreutils
|
|
||||||
bash
|
bash
|
||||||
|
|
||||||
[Include]
|
[Include]
|
||||||
|
|
|
@ -4,7 +4,6 @@
|
||||||
Distribution=arch
|
Distribution=arch
|
||||||
|
|
||||||
[Content]
|
[Content]
|
||||||
PrepareScripts=%D/mkosi/mkosi.conf.d/arch/systemd.prepare
|
|
||||||
VolatilePackages=
|
VolatilePackages=
|
||||||
systemd
|
systemd
|
||||||
systemd-libs
|
systemd-libs
|
||||||
|
|
|
@ -5,6 +5,5 @@ Distribution=|centos
|
||||||
Distribution=|fedora
|
Distribution=|fedora
|
||||||
|
|
||||||
[Content]
|
[Content]
|
||||||
PrepareScripts=%D/mkosi/mkosi.conf.d/centos-fedora/systemd.prepare
|
|
||||||
VolatilePackages=
|
VolatilePackages=
|
||||||
systemd-standalone-shutdown
|
systemd-standalone-shutdown
|
||||||
|
|
|
@ -4,6 +4,5 @@
|
||||||
Distribution=debian
|
Distribution=debian
|
||||||
|
|
||||||
[Content]
|
[Content]
|
||||||
PrepareScripts=%D/mkosi/mkosi.conf.d/debian-ubuntu/systemd.prepare
|
|
||||||
VolatilePackages=
|
VolatilePackages=
|
||||||
systemd-standalone-shutdown
|
systemd-standalone-shutdown
|
||||||
|
|
|
@ -4,7 +4,6 @@
|
||||||
Distribution=opensuse
|
Distribution=opensuse
|
||||||
|
|
||||||
[Content]
|
[Content]
|
||||||
PrepareScripts=%D/mkosi/mkosi.conf.d/opensuse/systemd.prepare
|
|
||||||
Packages=
|
Packages=
|
||||||
diffutils
|
diffutils
|
||||||
grep
|
grep
|
||||||
|
|
|
@ -4,7 +4,6 @@
|
||||||
Distribution=ubuntu
|
Distribution=ubuntu
|
||||||
|
|
||||||
[Content]
|
[Content]
|
||||||
PrepareScripts=%D/mkosi/mkosi.conf.d/debian-ubuntu/systemd.prepare
|
|
||||||
VolatilePackages=
|
VolatilePackages=
|
||||||
libsystemd-shared
|
libsystemd-shared
|
||||||
libsystemd0
|
libsystemd0
|
||||||
|
|
|
@ -6,14 +6,10 @@ Include=
|
||||||
%D/mkosi/mkosi.sanitizers
|
%D/mkosi/mkosi.sanitizers
|
||||||
%D/mkosi/mkosi.coverage
|
%D/mkosi/mkosi.coverage
|
||||||
|
|
||||||
[Build]
|
|
||||||
Environment=SYSTEMD_REQUIRED_DEPS_ONLY=1
|
|
||||||
|
|
||||||
[Content]
|
[Content]
|
||||||
ExtraTrees=%D/mkosi/mkosi.extra.common
|
ExtraTrees=%D/mkosi/mkosi.extra.common
|
||||||
|
|
||||||
Packages=
|
Packages=
|
||||||
coreutils
|
|
||||||
findutils
|
findutils
|
||||||
grep
|
grep
|
||||||
sed
|
sed
|
||||||
|
|
|
@ -4,7 +4,6 @@
|
||||||
Distribution=arch
|
Distribution=arch
|
||||||
|
|
||||||
[Content]
|
[Content]
|
||||||
PrepareScripts=%D/mkosi/mkosi.conf.d/arch/systemd.prepare
|
|
||||||
Packages=
|
Packages=
|
||||||
btrfs-progs
|
btrfs-progs
|
||||||
tpm2-tools
|
tpm2-tools
|
||||||
|
|
|
@ -5,7 +5,6 @@ Distribution=|centos
|
||||||
Distribution=|fedora
|
Distribution=|fedora
|
||||||
|
|
||||||
[Content]
|
[Content]
|
||||||
PrepareScripts=%D/mkosi/mkosi.conf.d/centos-fedora/systemd.prepare
|
|
||||||
Packages=
|
Packages=
|
||||||
tpm2-tools
|
tpm2-tools
|
||||||
|
|
||||||
|
|
|
@ -5,7 +5,6 @@ Distribution=|debian
|
||||||
Distribution=|ubuntu
|
Distribution=|ubuntu
|
||||||
|
|
||||||
[Content]
|
[Content]
|
||||||
PrepareScripts=%D/mkosi/mkosi.conf.d/debian-ubuntu/systemd.prepare
|
|
||||||
Packages=
|
Packages=
|
||||||
btrfs-progs
|
btrfs-progs
|
||||||
tpm2-tools
|
tpm2-tools
|
||||||
|
|
|
@ -4,7 +4,6 @@
|
||||||
Distribution=opensuse
|
Distribution=opensuse
|
||||||
|
|
||||||
[Content]
|
[Content]
|
||||||
PrepareScripts=%D/mkosi/mkosi.conf.d/opensuse/systemd.prepare
|
|
||||||
Packages=
|
Packages=
|
||||||
btrfs-progs
|
btrfs-progs
|
||||||
kmod
|
kmod
|
||||||
|
|
|
@ -3,9 +3,6 @@
|
||||||
[Output]
|
[Output]
|
||||||
Format=directory
|
Format=directory
|
||||||
|
|
||||||
[Build]
|
|
||||||
Environment=SYSTEMD_REQUIRED_DEPS_ONLY=1
|
|
||||||
|
|
||||||
[Content]
|
[Content]
|
||||||
Bootable=no
|
Bootable=no
|
||||||
Locale=C.UTF-8
|
Locale=C.UTF-8
|
||||||
|
|
|
@ -4,7 +4,6 @@
|
||||||
Distribution=arch
|
Distribution=arch
|
||||||
|
|
||||||
[Content]
|
[Content]
|
||||||
PrepareScripts=%D/mkosi/mkosi.conf.d/arch/systemd.prepare
|
|
||||||
Packages=
|
Packages=
|
||||||
inetutils
|
inetutils
|
||||||
iproute
|
iproute
|
||||||
|
|
|
@ -5,7 +5,6 @@ Distribution=|centos
|
||||||
Distribution=|fedora
|
Distribution=|fedora
|
||||||
|
|
||||||
[Content]
|
[Content]
|
||||||
PrepareScripts=%D/mkosi/mkosi.conf.d/centos-fedora/systemd.prepare
|
|
||||||
Packages=
|
Packages=
|
||||||
hostname
|
hostname
|
||||||
iproute
|
iproute
|
||||||
|
|
|
@ -5,7 +5,6 @@ Distribution=|debian
|
||||||
Distribution=|ubuntu
|
Distribution=|ubuntu
|
||||||
|
|
||||||
[Content]
|
[Content]
|
||||||
PrepareScripts=%D/mkosi/mkosi.conf.d/debian-ubuntu/systemd.prepare
|
|
||||||
Packages=
|
Packages=
|
||||||
hostname
|
hostname
|
||||||
iproute2
|
iproute2
|
||||||
|
|
|
@ -4,7 +4,6 @@
|
||||||
Distribution=opensuse
|
Distribution=opensuse
|
||||||
|
|
||||||
[Content]
|
[Content]
|
||||||
PrepareScripts=%D/mkosi/mkosi.conf.d/opensuse/systemd.prepare
|
|
||||||
Packages=
|
Packages=
|
||||||
diffutils
|
diffutils
|
||||||
grep
|
grep
|
||||||
|
|
|
@ -0,0 +1 @@
|
||||||
|
../usr/lib/os-release
|
|
@ -9,8 +9,3 @@ echo "Hello from dummy init, beautiful day, innit?"
|
||||||
ip link
|
ip link
|
||||||
EOF
|
EOF
|
||||||
chmod +x "$BUILDROOT/sbin/init"
|
chmod +x "$BUILDROOT/sbin/init"
|
||||||
|
|
||||||
# Arch relies on tmpfiles.d/etc.conf but this image isn't booted
|
|
||||||
if [ ! -e "$BUILDROOT/etc/os-release" ]; then
|
|
||||||
ln -s ../usr/lib/os-release "$BUILDROOT/etc/os-release"
|
|
||||||
fi
|
|
||||||
|
|
|
@ -34,9 +34,8 @@ done
|
||||||
# systemd-journald.
|
# systemd-journald.
|
||||||
rm -rf "$BUILDROOT/var/log/journal"
|
rm -rf "$BUILDROOT/var/log/journal"
|
||||||
|
|
||||||
# Make sure our own nsswitch.conf from the repository is used instead of the distribution's by deleting the
|
|
||||||
# distribution's and relying on tmpfiles to put ours in place during boot.
|
|
||||||
rm -f /etc/nsswitch.conf
|
rm -f /etc/nsswitch.conf
|
||||||
|
cp "$SRCDIR/factory/etc/nsswitch.conf" /etc/nsswitch.conf
|
||||||
|
|
||||||
# Remove to make TEST-73-LOCALE pass on Ubuntu.
|
# Remove to make TEST-73-LOCALE pass on Ubuntu.
|
||||||
rm -f /etc/default/keyboard
|
rm -f /etc/default/keyboard
|
||||||
|
@ -59,8 +58,8 @@ SYSTEMD_REPART_MKFS_OPTIONS_EXT4="" \
|
||||||
--dry-run=no \
|
--dry-run=no \
|
||||||
--size=auto \
|
--size=auto \
|
||||||
--offline=true \
|
--offline=true \
|
||||||
--root mkosi/mkosi.credentials \
|
--root test/integration-tests/TEST-24-CRYPTSETUP \
|
||||||
--definitions mkosi/keydev.repart \
|
--definitions test/integration-tests/TEST-24-CRYPTSETUP/keydev.repart \
|
||||||
"$OUTPUTDIR/keydev.raw"
|
"$OUTPUTDIR/keydev.raw"
|
||||||
|
|
||||||
can_test_pkcs11() {
|
can_test_pkcs11() {
|
||||||
|
@ -133,7 +132,7 @@ EOF
|
||||||
certtool --generate-self-signed \
|
certtool --generate-self-signed \
|
||||||
--load-privkey="pkcs11:token=TestToken;object=RSATestKey;type=private" \
|
--load-privkey="pkcs11:token=TestToken;object=RSATestKey;type=private" \
|
||||||
--load-pubkey="pkcs11:token=TestToken;object=RSATestKey;type=public" \
|
--load-pubkey="pkcs11:token=TestToken;object=RSATestKey;type=public" \
|
||||||
--template "mkosi/template.cfg" \
|
--template "test/integration-tests/TEST-24-CRYPTSETUP/template.cfg" \
|
||||||
--outder --outfile "/tmp/rsa_test.crt"
|
--outder --outfile "/tmp/rsa_test.crt"
|
||||||
|
|
||||||
pkcs11-tool --module "$SOFTHSM_MODULE" --token-label "TestToken" --pin "env:GNUTLS_PIN" --so-pin "env:GNUTLS_SO_PIN" --write-object "/tmp/rsa_test.crt" --type cert --label "RSATestKey"
|
pkcs11-tool --module "$SOFTHSM_MODULE" --token-label "TestToken" --pin "env:GNUTLS_PIN" --so-pin "env:GNUTLS_SO_PIN" --write-object "/tmp/rsa_test.crt" --type cert --label "RSATestKey"
|
||||||
|
@ -145,7 +144,7 @@ EOF
|
||||||
certtool --generate-self-signed \
|
certtool --generate-self-signed \
|
||||||
--load-privkey="pkcs11:token=TestToken;object=ECTestKey;type=private" \
|
--load-privkey="pkcs11:token=TestToken;object=ECTestKey;type=private" \
|
||||||
--load-pubkey="pkcs11:token=TestToken;object=ECTestKey;type=public" \
|
--load-pubkey="pkcs11:token=TestToken;object=ECTestKey;type=public" \
|
||||||
--template "mkosi/template.cfg" \
|
--template "test/integration-tests/TEST-24-CRYPTSETUP/template.cfg" \
|
||||||
--outder --outfile "/tmp/ec_test.crt"
|
--outder --outfile "/tmp/ec_test.crt"
|
||||||
|
|
||||||
pkcs11-tool --module "$SOFTHSM_MODULE" --token-label "TestToken" --pin "env:GNUTLS_PIN" --so-pin "env:GNUTLS_SO_PIN" --write-object "/tmp/ec_test.crt" --type cert --label "ECTestKey"
|
pkcs11-tool --module "$SOFTHSM_MODULE" --token-label "TestToken" --pin "env:GNUTLS_PIN" --so-pin "env:GNUTLS_SO_PIN" --write-object "/tmp/ec_test.crt" --type cert --label "ECTestKey"
|
||||||
|
|
|
@ -77,20 +77,6 @@ ENV{DDC_DEVICE}=="?*", TAG+="uaccess"
|
||||||
# media player raw devices (for user-mode drivers, Android SDK, etc.)
|
# media player raw devices (for user-mode drivers, Android SDK, etc.)
|
||||||
SUBSYSTEM=="usb", ENV{ID_MEDIA_PLAYER}=="?*", TAG+="uaccess"
|
SUBSYSTEM=="usb", ENV{ID_MEDIA_PLAYER}=="?*", TAG+="uaccess"
|
||||||
|
|
||||||
# Android devices (ADB DbC, ADB, Fastboot)
|
|
||||||
# Used to interact with devices over Android Debug Bridge and Fastboot protocols, see:
|
|
||||||
# * https://developer.android.com/tools/adb
|
|
||||||
# * https://source.android.com/docs/setup/test/running
|
|
||||||
# * https://source.android.com/docs/setup/test/flash
|
|
||||||
#
|
|
||||||
# The bInterfaceClass and bInterfaceSubClass used are documented in source code here:
|
|
||||||
# * https://android.googlesource.com/platform/packages/modules/adb/+/d0db47dcdf941673f405e1095e6ffb5e565902e5/adb.h#199
|
|
||||||
# * https://android.googlesource.com/platform/system/core/+/7199051aaf0ddfa2849650933119307327d8669c/fastboot/fastboot.cpp#244
|
|
||||||
#
|
|
||||||
# Since it's using a generic vendor specific interface class, this can potentially result
|
|
||||||
# in a rare case where non-ADB/Fastboot device ends up with an ID_DEBUG_APPLIANCE="android".
|
|
||||||
SUBSYSTEM=="usb", ENV{ID_USB_INTERFACES}=="*:dc0201:*|*:ff4201:*|*:ff4203:*", ENV{ID_DEBUG_APPLIANCE}="android"
|
|
||||||
|
|
||||||
# software-defined radio communication devices
|
# software-defined radio communication devices
|
||||||
ENV{ID_SOFTWARE_RADIO}=="?*", TAG+="uaccess"
|
ENV{ID_SOFTWARE_RADIO}=="?*", TAG+="uaccess"
|
||||||
|
|
||||||
|
@ -125,7 +111,4 @@ SUBSYSTEM=="hidraw", ENV{ID_HARDWARE_WALLET}=="1", TAG+="uaccess"
|
||||||
# As defined in https://en.wikipedia.org/wiki/3Dconnexion
|
# As defined in https://en.wikipedia.org/wiki/3Dconnexion
|
||||||
SUBSYSTEM=="hidraw", ENV{ID_INPUT_3D_MOUSE}=="1", TAG+="uaccess"
|
SUBSYSTEM=="hidraw", ENV{ID_INPUT_3D_MOUSE}=="1", TAG+="uaccess"
|
||||||
|
|
||||||
# Debug interfaces (e.g. Android Debug Bridge)
|
|
||||||
ENV{ID_DEBUG_APPLIANCE}=="?*", TAG+="uaccess"
|
|
||||||
|
|
||||||
LABEL="uaccess_end"
|
LABEL="uaccess_end"
|
||||||
|
|
|
@ -73,7 +73,7 @@ _importctl() {
|
||||||
comps='no checksum signature'
|
comps='no checksum signature'
|
||||||
;;
|
;;
|
||||||
--format)
|
--format)
|
||||||
comps='uncompressed xz gzip bzip2 zstd'
|
comps='uncompressed xz gzip bzip2'
|
||||||
;;
|
;;
|
||||||
--class)
|
--class)
|
||||||
comps='machine portable sysext confext'
|
comps='machine portable sysext confext'
|
||||||
|
|
|
@ -85,7 +85,7 @@ _machinectl() {
|
||||||
comps=$( machinectl --verify=help 2>/dev/null )
|
comps=$( machinectl --verify=help 2>/dev/null )
|
||||||
;;
|
;;
|
||||||
--format)
|
--format)
|
||||||
comps='uncompressed xz gzip bzip2 zstd'
|
comps='uncompressed xz gzip bzip2'
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
COMPREPLY=( $(compgen -W '$comps' -- "$cur") )
|
COMPREPLY=( $(compgen -W '$comps' -- "$cur") )
|
||||||
|
|
|
@ -93,7 +93,7 @@ _udevadm() {
|
||||||
-g --tag-match -y --sysname-match --name-match -b --parent-match
|
-g --tag-match -y --sysname-match --name-match -b --parent-match
|
||||||
--prioritized-subsystem'
|
--prioritized-subsystem'
|
||||||
[SETTLE]='-t --timeout -E --exit-if-exists'
|
[SETTLE]='-t --timeout -E --exit-if-exists'
|
||||||
[CONTROL_STANDALONE]='-e --exit -s --stop-exec-queue -S --start-exec-queue -R --reload --ping --revert
|
[CONTROL_STANDALONE]='-e --exit -s --stop-exec-queue -S --start-exec-queue -R --reload --ping
|
||||||
--load-credentials'
|
--load-credentials'
|
||||||
[CONTROL_ARG]='-l --log-priority -p --property -m --children-max -t --timeout --trace'
|
[CONTROL_ARG]='-l --log-priority -p --property -m --children-max -t --timeout --trace'
|
||||||
[MONITOR_STANDALONE]='-k --kernel -u --udev -p --property'
|
[MONITOR_STANDALONE]='-k --kernel -u --udev -p --property'
|
||||||
|
|
|
@ -67,7 +67,6 @@ _udevadm_control(){
|
||||||
'(-p --property)'{-p,--property=}'[Set a global property for all events.]:KEY=VALUE' \
|
'(-p --property)'{-p,--property=}'[Set a global property for all events.]:KEY=VALUE' \
|
||||||
'(-m --children-max=)'{-m,--children-max=}'[Set the maximum number of events.]:N' \
|
'(-m --children-max=)'{-m,--children-max=}'[Set the maximum number of events.]:N' \
|
||||||
'--trace=[Enable/disable trace logging.]:BOOL' \
|
'--trace=[Enable/disable trace logging.]:BOOL' \
|
||||||
'--revert[Revert previously set configurations.]' \
|
|
||||||
'(-t --timeout=)'{-t,--timeout=}'[The maximum number of seconds to wait for a reply from systemd-udevd.]:SECONDS'
|
'(-t --timeout=)'{-t,--timeout=}'[The maximum number of seconds to wait for a reply from systemd-udevd.]:SECONDS'
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -5,7 +5,6 @@
|
||||||
#include "ansi-color.h"
|
#include "ansi-color.h"
|
||||||
#include "battery-util.h"
|
#include "battery-util.h"
|
||||||
#include "build.h"
|
#include "build.h"
|
||||||
#include "log.h"
|
|
||||||
#include "main-func.h"
|
#include "main-func.h"
|
||||||
#include "pretty-print.h"
|
#include "pretty-print.h"
|
||||||
|
|
||||||
|
|
|
@ -4,7 +4,6 @@
|
||||||
|
|
||||||
#include "analyze-compare-versions.h"
|
#include "analyze-compare-versions.h"
|
||||||
#include "compare-operator.h"
|
#include "compare-operator.h"
|
||||||
#include "log.h"
|
|
||||||
#include "macro.h"
|
#include "macro.h"
|
||||||
#include "string-util.h"
|
#include "string-util.h"
|
||||||
#include "strv.h"
|
#include "strv.h"
|
||||||
|
|
|
@ -3,7 +3,6 @@
|
||||||
|
|
||||||
#include "sd-bus.h"
|
#include "sd-bus.h"
|
||||||
|
|
||||||
#include "memory-util.h"
|
|
||||||
#include "time-util.h"
|
#include "time-util.h"
|
||||||
#include "unit-def.h"
|
#include "unit-def.h"
|
||||||
|
|
||||||
|
|
|
@ -31,7 +31,7 @@ static void log_syntax_callback(const char *unit, int level, void *userdata) {
|
||||||
|
|
||||||
r = set_put_strdup(s, unit);
|
r = set_put_strdup(s, unit);
|
||||||
if (r < 0) {
|
if (r < 0) {
|
||||||
set_free(*s);
|
set_free_free(*s);
|
||||||
*s = POINTER_MAX;
|
*s = POINTER_MAX;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -265,7 +265,7 @@ static int verify_unit(Unit *u, bool check_man, const char *root) {
|
||||||
static void set_destroy_ignore_pointer_max(Set **s) {
|
static void set_destroy_ignore_pointer_max(Set **s) {
|
||||||
if (*s == POINTER_MAX)
|
if (*s == POINTER_MAX)
|
||||||
return;
|
return;
|
||||||
set_free(*s);
|
set_free_free(*s);
|
||||||
}
|
}
|
||||||
|
|
||||||
int verify_units(
|
int verify_units(
|
||||||
|
|
|
@ -408,6 +408,35 @@ static int read_brightness(sd_device *device, unsigned max_brightness, unsigned
|
||||||
assert(device);
|
assert(device);
|
||||||
assert(ret_brightness);
|
assert(ret_brightness);
|
||||||
|
|
||||||
|
if (device_in_subsystem(device, "backlight")) {
|
||||||
|
r = sd_device_get_sysattr_value(device, "actual_brightness", &value);
|
||||||
|
if (r == -ENOENT) {
|
||||||
|
log_device_debug_errno(device, r, "Failed to read 'actual_brightness' attribute, "
|
||||||
|
"fall back to use 'brightness' attribute: %m");
|
||||||
|
goto use_brightness;
|
||||||
|
}
|
||||||
|
if (r < 0)
|
||||||
|
return log_device_debug_errno(device, r, "Failed to read 'actual_brightness' attribute: %m");
|
||||||
|
|
||||||
|
r = safe_atou(value, &brightness);
|
||||||
|
if (r < 0) {
|
||||||
|
log_device_debug_errno(device, r, "Failed to parse 'actual_brightness' attribute, "
|
||||||
|
"fall back to use 'brightness' attribute: %s", value);
|
||||||
|
goto use_brightness;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (brightness > max_brightness) {
|
||||||
|
log_device_debug(device, "actual_brightness=%u is larger than max_brightness=%u, "
|
||||||
|
"fall back to use 'brightness' attribute", brightness, max_brightness);
|
||||||
|
goto use_brightness;
|
||||||
|
}
|
||||||
|
|
||||||
|
log_device_debug(device, "Current actual_brightness is %u", brightness);
|
||||||
|
*ret_brightness = brightness;
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
use_brightness:
|
||||||
r = sd_device_get_sysattr_value(device, "brightness", &value);
|
r = sd_device_get_sysattr_value(device, "brightness", &value);
|
||||||
if (r < 0)
|
if (r < 0)
|
||||||
return log_device_debug_errno(device, r, "Failed to read 'brightness' attribute: %m");
|
return log_device_debug_errno(device, r, "Failed to read 'brightness' attribute: %m");
|
||||||
|
|
|
@ -6,6 +6,7 @@
|
||||||
|
|
||||||
#include "alloc-util.h"
|
#include "alloc-util.h"
|
||||||
#include "macro.h"
|
#include "macro.h"
|
||||||
|
#include "memory-util.h"
|
||||||
|
|
||||||
void* memdup(const void *p, size_t l) {
|
void* memdup(const void *p, size_t l) {
|
||||||
void *ret;
|
void *ret;
|
||||||
|
|
|
@ -7,9 +7,7 @@
|
||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
|
|
||||||
#include "assert-util.h"
|
|
||||||
#include "macro.h"
|
#include "macro.h"
|
||||||
#include "memory-util.h"
|
|
||||||
|
|
||||||
#if HAS_FEATURE_MEMORY_SANITIZER
|
#if HAS_FEATURE_MEMORY_SANITIZER
|
||||||
# include <sanitizer/msan_interface.h>
|
# include <sanitizer/msan_interface.h>
|
||||||
|
@ -268,3 +266,5 @@ _alloc_(2) static inline void *realloc0(void *p, size_t new_size) {
|
||||||
|
|
||||||
return q;
|
return q;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#include "memory-util.h"
|
||||||
|
|
|
@ -8,7 +8,6 @@
|
||||||
#include "argv-util.h"
|
#include "argv-util.h"
|
||||||
#include "capability-util.h"
|
#include "capability-util.h"
|
||||||
#include "errno-util.h"
|
#include "errno-util.h"
|
||||||
#include "log.h"
|
|
||||||
#include "missing_sched.h"
|
#include "missing_sched.h"
|
||||||
#include "parse-util.h"
|
#include "parse-util.h"
|
||||||
#include "path-util.h"
|
#include "path-util.h"
|
||||||
|
|
|
@ -3,7 +3,6 @@
|
||||||
|
|
||||||
#include <stdbool.h>
|
#include <stdbool.h>
|
||||||
|
|
||||||
#include "assert-util.h"
|
|
||||||
#include "macro.h"
|
#include "macro.h"
|
||||||
|
|
||||||
extern int saved_argc;
|
extern int saved_argc;
|
||||||
|
|
|
@ -1,65 +0,0 @@
|
||||||
/* SPDX-License-Identifier: LGPL-2.1-or-later */
|
|
||||||
|
|
||||||
#include <stdio.h>
|
|
||||||
|
|
||||||
#include "assert-util.h"
|
|
||||||
#include "errno-util.h"
|
|
||||||
#include "log.h"
|
|
||||||
|
|
||||||
static bool assert_return_is_critical = BUILD_MODE_DEVELOPER;
|
|
||||||
|
|
||||||
/* Akin to glibc's __abort_msg; which is private and we hence cannot
|
|
||||||
* use here. */
|
|
||||||
static char *log_abort_msg = NULL;
|
|
||||||
|
|
||||||
void log_set_assert_return_is_critical(bool b) {
|
|
||||||
assert_return_is_critical = b;
|
|
||||||
}
|
|
||||||
|
|
||||||
bool log_get_assert_return_is_critical(void) {
|
|
||||||
return assert_return_is_critical;
|
|
||||||
}
|
|
||||||
|
|
||||||
static void log_assert(
|
|
||||||
int level,
|
|
||||||
const char *text,
|
|
||||||
const char *file,
|
|
||||||
int line,
|
|
||||||
const char *func,
|
|
||||||
const char *format) {
|
|
||||||
|
|
||||||
static char buffer[LINE_MAX];
|
|
||||||
|
|
||||||
if (_likely_(LOG_PRI(level) > log_get_max_level()))
|
|
||||||
return;
|
|
||||||
|
|
||||||
DISABLE_WARNING_FORMAT_NONLITERAL;
|
|
||||||
(void) snprintf(buffer, sizeof buffer, format, text, file, line, func);
|
|
||||||
REENABLE_WARNING;
|
|
||||||
|
|
||||||
log_abort_msg = buffer;
|
|
||||||
|
|
||||||
log_dispatch_internal(level, 0, file, line, func, NULL, NULL, NULL, NULL, buffer);
|
|
||||||
}
|
|
||||||
|
|
||||||
_noreturn_ void log_assert_failed(const char *text, const char *file, int line, const char *func) {
|
|
||||||
log_assert(LOG_CRIT, text, file, line, func,
|
|
||||||
"Assertion '%s' failed at %s:%u, function %s(). Aborting.");
|
|
||||||
abort();
|
|
||||||
}
|
|
||||||
|
|
||||||
_noreturn_ void log_assert_failed_unreachable(const char *file, int line, const char *func) {
|
|
||||||
log_assert(LOG_CRIT, "Code should not be reached", file, line, func,
|
|
||||||
"%s at %s:%u, function %s(). Aborting. 💥");
|
|
||||||
abort();
|
|
||||||
}
|
|
||||||
|
|
||||||
void log_assert_failed_return(const char *text, const char *file, int line, const char *func) {
|
|
||||||
|
|
||||||
if (assert_return_is_critical)
|
|
||||||
log_assert_failed(text, file, line, func);
|
|
||||||
|
|
||||||
PROTECT_ERRNO;
|
|
||||||
log_assert(LOG_DEBUG, text, file, line, func,
|
|
||||||
"Assertion '%s' failed at %s:%u, function %s(), ignoring.");
|
|
||||||
}
|
|
|
@ -1,84 +0,0 @@
|
||||||
/* SPDX-License-Identifier: LGPL-2.1-or-later */
|
|
||||||
#pragma once
|
|
||||||
|
|
||||||
#include "assert-fundamental.h"
|
|
||||||
#include "macro.h"
|
|
||||||
|
|
||||||
/* Logging for various assertions */
|
|
||||||
|
|
||||||
void log_set_assert_return_is_critical(bool b);
|
|
||||||
bool log_get_assert_return_is_critical(void) _pure_;
|
|
||||||
|
|
||||||
_noreturn_ void log_assert_failed(const char *text, const char *file, int line, const char *func);
|
|
||||||
_noreturn_ void log_assert_failed_unreachable(const char *file, int line, const char *func);
|
|
||||||
void log_assert_failed_return(const char *text, const char *file, int line, const char *func);
|
|
||||||
|
|
||||||
#ifdef __COVERITY__
|
|
||||||
|
|
||||||
/* Use special definitions of assertion macros in order to prevent
|
|
||||||
* false positives of ASSERT_SIDE_EFFECT on Coverity static analyzer
|
|
||||||
* for uses of assert_se() and assert_return().
|
|
||||||
*
|
|
||||||
* These definitions make expression go through a (trivial) function
|
|
||||||
* call to ensure they are not discarded. Also use ! or !! to ensure
|
|
||||||
* the boolean expressions are seen as such.
|
|
||||||
*
|
|
||||||
* This technique has been described and recommended in:
|
|
||||||
* https://community.synopsys.com/s/question/0D534000046Yuzb/suppressing-assertsideeffect-for-functions-that-allow-for-sideeffects
|
|
||||||
*/
|
|
||||||
|
|
||||||
extern void __coverity_panic__(void);
|
|
||||||
|
|
||||||
static inline void __coverity_check__(int condition) {
|
|
||||||
if (!condition)
|
|
||||||
__coverity_panic__();
|
|
||||||
}
|
|
||||||
|
|
||||||
static inline int __coverity_check_and_return__(int condition) {
|
|
||||||
return condition;
|
|
||||||
}
|
|
||||||
|
|
||||||
#define assert_message_se(expr, message) __coverity_check__(!!(expr))
|
|
||||||
|
|
||||||
#define assert_log(expr, message) __coverity_check_and_return__(!!(expr))
|
|
||||||
|
|
||||||
#else /* ! __COVERITY__ */
|
|
||||||
|
|
||||||
#define assert_message_se(expr, message) \
|
|
||||||
do { \
|
|
||||||
if (_unlikely_(!(expr))) \
|
|
||||||
log_assert_failed(message, PROJECT_FILE, __LINE__, __func__); \
|
|
||||||
} while (false)
|
|
||||||
|
|
||||||
#define assert_log(expr, message) ((_likely_(expr)) \
|
|
||||||
? (true) \
|
|
||||||
: (log_assert_failed_return(message, PROJECT_FILE, __LINE__, __func__), false))
|
|
||||||
|
|
||||||
#endif /* __COVERITY__ */
|
|
||||||
|
|
||||||
#define assert_se(expr) assert_message_se(expr, #expr)
|
|
||||||
|
|
||||||
/* We override the glibc assert() here. */
|
|
||||||
#undef assert
|
|
||||||
#ifdef NDEBUG
|
|
||||||
#define assert(expr) ({ if (!(expr)) __builtin_unreachable(); })
|
|
||||||
#else
|
|
||||||
#define assert(expr) assert_message_se(expr, #expr)
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#define assert_not_reached() \
|
|
||||||
log_assert_failed_unreachable(PROJECT_FILE, __LINE__, __func__)
|
|
||||||
|
|
||||||
#define assert_return(expr, r) \
|
|
||||||
do { \
|
|
||||||
if (!assert_log(expr, #expr)) \
|
|
||||||
return (r); \
|
|
||||||
} while (false)
|
|
||||||
|
|
||||||
#define assert_return_errno(expr, r, err) \
|
|
||||||
do { \
|
|
||||||
if (!assert_log(expr, #expr)) { \
|
|
||||||
errno = err; \
|
|
||||||
return (r); \
|
|
||||||
} \
|
|
||||||
} while (false)
|
|
|
@ -6,7 +6,6 @@
|
||||||
#include "ansi-color.h"
|
#include "ansi-color.h"
|
||||||
#include "build.h"
|
#include "build.h"
|
||||||
#include "extract-word.h"
|
#include "extract-word.h"
|
||||||
#include "log.h"
|
|
||||||
#include "macro.h"
|
#include "macro.h"
|
||||||
#include "string-util.h"
|
#include "string-util.h"
|
||||||
#include "terminal-util.h"
|
#include "terminal-util.h"
|
||||||
|
|
|
@ -8,7 +8,6 @@
|
||||||
#include "capability-util.h"
|
#include "capability-util.h"
|
||||||
#include "cap-list.h"
|
#include "cap-list.h"
|
||||||
#include "extract-word.h"
|
#include "extract-word.h"
|
||||||
#include "log.h"
|
|
||||||
#include "macro.h"
|
#include "macro.h"
|
||||||
#include "parse-util.h"
|
#include "parse-util.h"
|
||||||
#include "stdio-util.h"
|
#include "stdio-util.h"
|
||||||
|
|
|
@ -20,7 +20,6 @@
|
||||||
#include "macro.h"
|
#include "macro.h"
|
||||||
#include "parse-util.h"
|
#include "parse-util.h"
|
||||||
#include "pidref.h"
|
#include "pidref.h"
|
||||||
#include "process-util.h"
|
|
||||||
#include "stat-util.h"
|
#include "stat-util.h"
|
||||||
#include "user-util.h"
|
#include "user-util.h"
|
||||||
|
|
||||||
|
|
|
@ -10,7 +10,6 @@
|
||||||
#include "errno-util.h"
|
#include "errno-util.h"
|
||||||
#include "fd-util.h"
|
#include "fd-util.h"
|
||||||
#include "fs-util.h"
|
#include "fs-util.h"
|
||||||
#include "log.h"
|
|
||||||
#include "macro.h"
|
#include "macro.h"
|
||||||
#include "string-util.h"
|
#include "string-util.h"
|
||||||
|
|
||||||
|
|
|
@ -27,7 +27,6 @@
|
||||||
#include "fd-util.h"
|
#include "fd-util.h"
|
||||||
#include "fileio.h"
|
#include "fileio.h"
|
||||||
#include "io-util.h"
|
#include "io-util.h"
|
||||||
#include "log.h"
|
|
||||||
#include "macro.h"
|
#include "macro.h"
|
||||||
#include "sparse-endian.h"
|
#include "sparse-endian.h"
|
||||||
#include "string-table.h"
|
#include "string-table.h"
|
||||||
|
|
|
@ -19,6 +19,7 @@
|
||||||
#include "nulstr-util.h"
|
#include "nulstr-util.h"
|
||||||
#include "path-util.h"
|
#include "path-util.h"
|
||||||
#include "set.h"
|
#include "set.h"
|
||||||
|
#include "sort-util.h"
|
||||||
#include "stat-util.h"
|
#include "stat-util.h"
|
||||||
#include "string-util.h"
|
#include "string-util.h"
|
||||||
#include "strv.h"
|
#include "strv.h"
|
||||||
|
@ -121,22 +122,29 @@ static int files_add(
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static int base_cmp(char * const *a, char * const *b) {
|
||||||
|
assert(a);
|
||||||
|
assert(b);
|
||||||
|
return path_compare_filename(*a, *b);
|
||||||
|
}
|
||||||
|
|
||||||
static int copy_and_sort_files_from_hashmap(Hashmap *fh, char ***ret) {
|
static int copy_and_sort_files_from_hashmap(Hashmap *fh, char ***ret) {
|
||||||
_cleanup_free_ char **sv = NULL;
|
_cleanup_free_ char **sv = NULL;
|
||||||
char **files;
|
char **files;
|
||||||
int r;
|
|
||||||
|
|
||||||
assert(ret);
|
assert(ret);
|
||||||
|
|
||||||
r = hashmap_dump_sorted(fh, (void***) &sv, /* ret_n = */ NULL);
|
sv = hashmap_get_strv(fh);
|
||||||
if (r < 0)
|
if (!sv)
|
||||||
return r;
|
return -ENOMEM;
|
||||||
|
|
||||||
/* The entries in the array given by hashmap_dump_sorted() are still owned by the hashmap. */
|
/* The entries in the array given by hashmap_get_strv() are still owned by the hashmap. */
|
||||||
files = strv_copy(sv);
|
files = strv_copy(sv);
|
||||||
if (!files)
|
if (!files)
|
||||||
return -ENOMEM;
|
return -ENOMEM;
|
||||||
|
|
||||||
|
typesafe_qsort(files, strv_length(files), base_cmp);
|
||||||
|
|
||||||
*ret = files;
|
*ret = files;
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
@ -229,7 +237,7 @@ int conf_files_insert(char ***strv, const char *root, char **dirs, const char *p
|
||||||
for (i = 0; i < n; i++) {
|
for (i = 0; i < n; i++) {
|
||||||
int c;
|
int c;
|
||||||
|
|
||||||
c = path_compare_filename((*strv)[i], path);
|
c = base_cmp((char* const*) *strv + i, (char* const*) &path);
|
||||||
if (c == 0)
|
if (c == 0)
|
||||||
/* Oh, there already is an entry with a matching name (the last component). */
|
/* Oh, there already is an entry with a matching name (the last component). */
|
||||||
STRV_FOREACH(dir, dirs) {
|
STRV_FOREACH(dir, dirs) {
|
||||||
|
|
|
@ -14,7 +14,6 @@
|
||||||
#include "errno-util.h"
|
#include "errno-util.h"
|
||||||
#include "fd-util.h"
|
#include "fd-util.h"
|
||||||
#include "fileio.h"
|
#include "fileio.h"
|
||||||
#include "log.h"
|
|
||||||
#include "string-table.h"
|
#include "string-table.h"
|
||||||
#include "utf8.h"
|
#include "utf8.h"
|
||||||
|
|
||||||
|
|
|
@ -1,7 +1,6 @@
|
||||||
/* SPDX-License-Identifier: LGPL-2.1-or-later */
|
/* SPDX-License-Identifier: LGPL-2.1-or-later */
|
||||||
|
|
||||||
#include "dlfcn-util.h"
|
#include "dlfcn-util.h"
|
||||||
#include "log.h"
|
|
||||||
|
|
||||||
static int dlsym_many_or_warnv(void *dl, int log_level, va_list ap) {
|
static int dlsym_many_or_warnv(void *dl, int log_level, va_list ap) {
|
||||||
void (**fn)(void);
|
void (**fn)(void);
|
||||||
|
|
|
@ -3,7 +3,6 @@
|
||||||
|
|
||||||
#include <dlfcn.h>
|
#include <dlfcn.h>
|
||||||
|
|
||||||
#include "assert-util.h"
|
|
||||||
#include "macro.h"
|
#include "macro.h"
|
||||||
|
|
||||||
static inline void* safe_dlclose(void *dl) {
|
static inline void* safe_dlclose(void *dl) {
|
||||||
|
|
|
@ -15,7 +15,6 @@
|
||||||
#include "fd-util.h"
|
#include "fd-util.h"
|
||||||
#include "fileio.h"
|
#include "fileio.h"
|
||||||
#include "io-util.h"
|
#include "io-util.h"
|
||||||
#include "log.h"
|
|
||||||
#include "macro.h"
|
#include "macro.h"
|
||||||
#include "memory-util.h"
|
#include "memory-util.h"
|
||||||
#include "missing_fs.h"
|
#include "missing_fs.h"
|
||||||
|
|
|
@ -7,7 +7,6 @@
|
||||||
#include "fd-util.h"
|
#include "fd-util.h"
|
||||||
#include "fileio.h"
|
#include "fileio.h"
|
||||||
#include "fs-util.h"
|
#include "fs-util.h"
|
||||||
#include "log.h"
|
|
||||||
#include "string-util.h"
|
#include "string-util.h"
|
||||||
#include "strv.h"
|
#include "strv.h"
|
||||||
#include "tmpfile-util.h"
|
#include "tmpfile-util.h"
|
||||||
|
|
|
@ -11,7 +11,6 @@
|
||||||
#include "errno-util.h"
|
#include "errno-util.h"
|
||||||
#include "escape.h"
|
#include "escape.h"
|
||||||
#include "extract-word.h"
|
#include "extract-word.h"
|
||||||
#include "log.h"
|
|
||||||
#include "macro.h"
|
#include "macro.h"
|
||||||
#include "parse-util.h"
|
#include "parse-util.h"
|
||||||
#include "path-util.h"
|
#include "path-util.h"
|
||||||
|
@ -547,7 +546,7 @@ char* strv_env_get_n(char * const *l, const char *name, size_t k, ReplaceEnvFlag
|
||||||
return NULL;
|
return NULL;
|
||||||
|
|
||||||
t = strndupa_safe(name, k);
|
t = strndupa_safe(name, k);
|
||||||
return secure_getenv(t);
|
return getenv(t);
|
||||||
};
|
};
|
||||||
|
|
||||||
return NULL;
|
return NULL;
|
||||||
|
@ -1106,7 +1105,7 @@ int getenv_steal_erase(const char *name, char **ret) {
|
||||||
* it from there. Usecase: reading passwords from the env block (which is a bad idea, but useful for
|
* it from there. Usecase: reading passwords from the env block (which is a bad idea, but useful for
|
||||||
* testing, and given that people are likely going to misuse this, be thorough) */
|
* testing, and given that people are likely going to misuse this, be thorough) */
|
||||||
|
|
||||||
e = secure_getenv(name);
|
e = getenv(name);
|
||||||
if (!e) {
|
if (!e) {
|
||||||
if (ret)
|
if (ret)
|
||||||
*ret = NULL;
|
*ret = NULL;
|
||||||
|
|
|
@ -5,7 +5,6 @@
|
||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
|
|
||||||
#include "assert-util.h"
|
|
||||||
#include "macro.h"
|
#include "macro.h"
|
||||||
|
|
||||||
/* strerror(3) says that glibc uses a maximum length of 1024 bytes. */
|
/* strerror(3) says that glibc uses a maximum length of 1024 bytes. */
|
||||||
|
|
|
@ -8,7 +8,6 @@
|
||||||
|
|
||||||
#include "ether-addr-util.h"
|
#include "ether-addr-util.h"
|
||||||
#include "hexdecoct.h"
|
#include "hexdecoct.h"
|
||||||
#include "log.h"
|
|
||||||
#include "macro.h"
|
#include "macro.h"
|
||||||
#include "string-util.h"
|
#include "string-util.h"
|
||||||
|
|
||||||
|
|
|
@ -15,7 +15,6 @@
|
||||||
#include "fileio.h"
|
#include "fileio.h"
|
||||||
#include "fs-util.h"
|
#include "fs-util.h"
|
||||||
#include "io-util.h"
|
#include "io-util.h"
|
||||||
#include "log.h"
|
|
||||||
#include "macro.h"
|
#include "macro.h"
|
||||||
#include "missing_fcntl.h"
|
#include "missing_fcntl.h"
|
||||||
#include "missing_fs.h"
|
#include "missing_fs.h"
|
||||||
|
@ -1002,13 +1001,13 @@ int fd_verify_safe_flags_full(int fd, int extra_flags) {
|
||||||
if (flags < 0)
|
if (flags < 0)
|
||||||
return -errno;
|
return -errno;
|
||||||
|
|
||||||
unexpected_flags = flags & ~(O_ACCMODE_STRICT|O_NOFOLLOW|RAW_O_LARGEFILE|extra_flags);
|
unexpected_flags = flags & ~(O_ACCMODE|O_NOFOLLOW|RAW_O_LARGEFILE|extra_flags);
|
||||||
if (unexpected_flags != 0)
|
if (unexpected_flags != 0)
|
||||||
return log_debug_errno(SYNTHETIC_ERRNO(EREMOTEIO),
|
return log_debug_errno(SYNTHETIC_ERRNO(EREMOTEIO),
|
||||||
"Unexpected flags set for extrinsic fd: 0%o",
|
"Unexpected flags set for extrinsic fd: 0%o",
|
||||||
(unsigned) unexpected_flags);
|
(unsigned) unexpected_flags);
|
||||||
|
|
||||||
return flags & (O_ACCMODE_STRICT | extra_flags); /* return the flags variable, but remove the noise */
|
return flags & (O_ACCMODE | extra_flags); /* return the flags variable, but remove the noise */
|
||||||
}
|
}
|
||||||
|
|
||||||
int read_nr_open(void) {
|
int read_nr_open(void) {
|
||||||
|
@ -1133,7 +1132,7 @@ int fds_are_same_mount(int fd1, int fd2) {
|
||||||
}
|
}
|
||||||
|
|
||||||
const char* accmode_to_string(int flags) {
|
const char* accmode_to_string(int flags) {
|
||||||
switch (flags & O_ACCMODE_STRICT) {
|
switch (flags & O_ACCMODE) {
|
||||||
case O_RDONLY:
|
case O_RDONLY:
|
||||||
return "ro";
|
return "ro";
|
||||||
case O_WRONLY:
|
case O_WRONLY:
|
||||||
|
|
|
@ -8,7 +8,6 @@
|
||||||
#include <sys/socket.h>
|
#include <sys/socket.h>
|
||||||
|
|
||||||
#include "macro.h"
|
#include "macro.h"
|
||||||
#include "memory-util.h"
|
|
||||||
#include "missing_fcntl.h"
|
#include "missing_fcntl.h"
|
||||||
#include "stdio-util.h"
|
#include "stdio-util.h"
|
||||||
|
|
||||||
|
|
|
@ -1,8 +1,6 @@
|
||||||
/* SPDX-License-Identifier: LGPL-2.1-or-later */
|
/* SPDX-License-Identifier: LGPL-2.1-or-later */
|
||||||
|
|
||||||
#include "format-ifname.h"
|
#include "format-ifname.h"
|
||||||
#include "log.h"
|
|
||||||
#include "stdio-util.h"
|
|
||||||
#include "string-util.h"
|
#include "string-util.h"
|
||||||
|
|
||||||
assert_cc(STRLEN("%") + DECIMAL_STR_MAX(int) <= IF_NAMESIZE);
|
assert_cc(STRLEN("%") + DECIMAL_STR_MAX(int) <= IF_NAMESIZE);
|
||||||
|
|
|
@ -1036,7 +1036,7 @@ int open_mkdir_at_full(int dirfd, const char *path, int flags, XOpenFlags xopen_
|
||||||
|
|
||||||
if (flags & ~(O_RDONLY|O_CLOEXEC|O_DIRECTORY|O_EXCL|O_NOATIME|O_NOFOLLOW|O_PATH))
|
if (flags & ~(O_RDONLY|O_CLOEXEC|O_DIRECTORY|O_EXCL|O_NOATIME|O_NOFOLLOW|O_PATH))
|
||||||
return -EINVAL;
|
return -EINVAL;
|
||||||
if ((flags & O_ACCMODE_STRICT) != O_RDONLY)
|
if ((flags & O_ACCMODE) != O_RDONLY)
|
||||||
return -EINVAL;
|
return -EINVAL;
|
||||||
|
|
||||||
/* Note that O_DIRECTORY|O_NOFOLLOW is implied, but we allow specifying it anyway. The following
|
/* Note that O_DIRECTORY|O_NOFOLLOW is implied, but we allow specifying it anyway. The following
|
||||||
|
|
|
@ -4,7 +4,6 @@
|
||||||
|
|
||||||
#include "gcrypt-util.h"
|
#include "gcrypt-util.h"
|
||||||
#include "hexdecoct.h"
|
#include "hexdecoct.h"
|
||||||
#include "log.h"
|
|
||||||
|
|
||||||
static void *gcrypt_dl = NULL;
|
static void *gcrypt_dl = NULL;
|
||||||
|
|
||||||
|
@ -106,4 +105,39 @@ int initialize_libgcrypt(bool secmem) {
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
# if !PREFER_OPENSSL
|
||||||
|
int string_hashsum(const char *s, size_t len, int md_algorithm, char **out) {
|
||||||
|
_cleanup_(sym_gcry_md_closep) gcry_md_hd_t md = NULL;
|
||||||
|
gcry_error_t err;
|
||||||
|
size_t hash_size;
|
||||||
|
void *hash;
|
||||||
|
char *enc;
|
||||||
|
int r;
|
||||||
|
|
||||||
|
r = initialize_libgcrypt(false);
|
||||||
|
if (r < 0)
|
||||||
|
return r;
|
||||||
|
|
||||||
|
hash_size = sym_gcry_md_get_algo_dlen(md_algorithm);
|
||||||
|
assert(hash_size > 0);
|
||||||
|
|
||||||
|
err = sym_gcry_md_open(&md, md_algorithm, 0);
|
||||||
|
if (gcry_err_code(err) != GPG_ERR_NO_ERROR || !md)
|
||||||
|
return -EIO;
|
||||||
|
|
||||||
|
sym_gcry_md_write(md, s, len);
|
||||||
|
|
||||||
|
hash = sym_gcry_md_read(md, 0);
|
||||||
|
if (!hash)
|
||||||
|
return -EIO;
|
||||||
|
|
||||||
|
enc = hexmem(hash, hash_size);
|
||||||
|
if (!enc)
|
||||||
|
return -ENOMEM;
|
||||||
|
|
||||||
|
*out = enc;
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
# endif
|
||||||
#endif
|
#endif
|
||||||
|
|
|
@ -11,7 +11,6 @@
|
||||||
|
|
||||||
#include "dlfcn-util.h"
|
#include "dlfcn-util.h"
|
||||||
#include "macro.h"
|
#include "macro.h"
|
||||||
#include "memory-util.h"
|
|
||||||
|
|
||||||
extern DLSYM_PROTOTYPE(gcry_md_close);
|
extern DLSYM_PROTOTYPE(gcry_md_close);
|
||||||
extern DLSYM_PROTOTYPE(gcry_md_copy);
|
extern DLSYM_PROTOTYPE(gcry_md_copy);
|
||||||
|
@ -64,3 +63,25 @@ DEFINE_TRIVIAL_CLEANUP_FUNC_FULL(gcry_md_hd_t, gcry_md_close, NULL);
|
||||||
(h__)->buf[(h__)->bufpos++] = (c) & 0xff; \
|
(h__)->buf[(h__)->bufpos++] = (c) & 0xff; \
|
||||||
} while(false)
|
} while(false)
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#if !PREFER_OPENSSL
|
||||||
|
# if HAVE_GCRYPT
|
||||||
|
int string_hashsum(const char *s, size_t len, int md_algorithm, char **out);
|
||||||
|
# endif
|
||||||
|
|
||||||
|
static inline int string_hashsum_sha224(const char *s, size_t len, char **out) {
|
||||||
|
# if HAVE_GCRYPT
|
||||||
|
return string_hashsum(s, len, GCRY_MD_SHA224, out);
|
||||||
|
# else
|
||||||
|
return -EOPNOTSUPP;
|
||||||
|
# endif
|
||||||
|
}
|
||||||
|
|
||||||
|
static inline int string_hashsum_sha256(const char *s, size_t len, char **out) {
|
||||||
|
# if HAVE_GCRYPT
|
||||||
|
return string_hashsum(s, len, GCRY_MD_SHA256, out);
|
||||||
|
# else
|
||||||
|
return -EOPNOTSUPP;
|
||||||
|
# endif
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
|
@ -8,7 +8,6 @@
|
||||||
#include "dirent-util.h"
|
#include "dirent-util.h"
|
||||||
#include "errno-util.h"
|
#include "errno-util.h"
|
||||||
#include "glob-util.h"
|
#include "glob-util.h"
|
||||||
#include "log.h"
|
|
||||||
#include "macro.h"
|
#include "macro.h"
|
||||||
#include "path-util.h"
|
#include "path-util.h"
|
||||||
#include "strv.h"
|
#include "strv.h"
|
||||||
|
|
|
@ -12,7 +12,6 @@
|
||||||
#include "alloc-util.h"
|
#include "alloc-util.h"
|
||||||
#include "fileio.h"
|
#include "fileio.h"
|
||||||
#include "hashmap.h"
|
#include "hashmap.h"
|
||||||
#include "log.h"
|
|
||||||
#include "logarithm.h"
|
#include "logarithm.h"
|
||||||
#include "macro.h"
|
#include "macro.h"
|
||||||
#include "memory-util.h"
|
#include "memory-util.h"
|
||||||
|
@ -913,20 +912,24 @@ static void hashmap_free_no_clear(HashmapBase *h) {
|
||||||
free(h);
|
free(h);
|
||||||
}
|
}
|
||||||
|
|
||||||
HashmapBase* _hashmap_free(HashmapBase *h) {
|
HashmapBase* _hashmap_free(HashmapBase *h, free_func_t default_free_key, free_func_t default_free_value) {
|
||||||
if (h) {
|
if (h) {
|
||||||
_hashmap_clear(h);
|
_hashmap_clear(h, default_free_key, default_free_value);
|
||||||
hashmap_free_no_clear(h);
|
hashmap_free_no_clear(h);
|
||||||
}
|
}
|
||||||
|
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
void _hashmap_clear(HashmapBase *h) {
|
void _hashmap_clear(HashmapBase *h, free_func_t default_free_key, free_func_t default_free_value) {
|
||||||
|
free_func_t free_key, free_value;
|
||||||
if (!h)
|
if (!h)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
if (h->hash_ops->free_key || h->hash_ops->free_value) {
|
free_key = h->hash_ops->free_key ?: default_free_key;
|
||||||
|
free_value = h->hash_ops->free_value ?: default_free_value;
|
||||||
|
|
||||||
|
if (free_key || free_value) {
|
||||||
|
|
||||||
/* If destructor calls are defined, let's destroy things defensively: let's take the item out of the
|
/* If destructor calls are defined, let's destroy things defensively: let's take the item out of the
|
||||||
* hash table, and only then call the destructor functions. If these destructors then try to unregister
|
* hash table, and only then call the destructor functions. If these destructors then try to unregister
|
||||||
|
@ -938,11 +941,11 @@ void _hashmap_clear(HashmapBase *h) {
|
||||||
|
|
||||||
v = _hashmap_first_key_and_value(h, true, &k);
|
v = _hashmap_first_key_and_value(h, true, &k);
|
||||||
|
|
||||||
if (h->hash_ops->free_key)
|
if (free_key)
|
||||||
h->hash_ops->free_key(k);
|
free_key(k);
|
||||||
|
|
||||||
if (h->hash_ops->free_value)
|
if (free_value)
|
||||||
h->hash_ops->free_value(v);
|
free_value(v);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1777,7 +1780,7 @@ HashmapBase* _hashmap_copy(HashmapBase *h HASHMAP_DEBUG_PARAMS) {
|
||||||
}
|
}
|
||||||
|
|
||||||
if (r < 0)
|
if (r < 0)
|
||||||
return _hashmap_free(copy);
|
return _hashmap_free(copy, NULL, NULL);
|
||||||
|
|
||||||
return copy;
|
return copy;
|
||||||
}
|
}
|
||||||
|
@ -1802,23 +1805,6 @@ char** _hashmap_get_strv(HashmapBase *h) {
|
||||||
return sv;
|
return sv;
|
||||||
}
|
}
|
||||||
|
|
||||||
char** set_to_strv(Set **s) {
|
|
||||||
assert(s);
|
|
||||||
|
|
||||||
/* This is similar to set_get_strv(), but invalidates the set on success. */
|
|
||||||
|
|
||||||
char **v = new(char*, set_size(*s) + 1);
|
|
||||||
if (!v)
|
|
||||||
return NULL;
|
|
||||||
|
|
||||||
for (char **p = v; (*p = set_steal_first(*s)); p++)
|
|
||||||
;
|
|
||||||
|
|
||||||
assert(set_isempty(*s));
|
|
||||||
*s = set_free(*s);
|
|
||||||
return v;
|
|
||||||
}
|
|
||||||
|
|
||||||
void* ordered_hashmap_next(OrderedHashmap *h, const void *key) {
|
void* ordered_hashmap_next(OrderedHashmap *h, const void *key) {
|
||||||
struct ordered_hashmap_entry *e;
|
struct ordered_hashmap_entry *e;
|
||||||
unsigned hash, idx;
|
unsigned hash, idx;
|
||||||
|
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue