Commit Graph
100 Commits
Author SHA1 Message Date
Luca Boccassi 86838bf08b core: warn on ExitType=cgroup with legacy cgroup setup
'cgroup empty' notifications are not reliable on v1, so log a warning.

See: https://github.com/systemd/systemd/issues/22320
2022-02-02 07:07:47 +09:00
Luca Boccassi 9d67fb0e33 Merge pull request #22175 from keszybz/kernel-install-mkosi-initrd
kernel-install: add support for KERNEL_INSTALL_INITRD_GENERATOR and KERNEL_INSTALL_STAGING_AREA
2022-01-31 23:09:46 +00:00
Luca Boccassi 187df3dd91 Merge pull request #22316 from yuwata/network-mac-address-length
network: several cleanups related to MAC address length
2022-01-31 14:21:28 +00:00
Luca Boccassi 0ec3af43f2 Merge pull request #22300 from yuwata/bus-fix-error-handling
tree-wide: fix bus method error handling
2022-01-31 14:03:00 +00:00
Luca Boccassi 06d4d83fa7 Merge pull request #22274 from yuwata/resolve-comment
resolve: cleanups for on_stream_io()
2022-01-31 13:56:04 +00:00
Luca Boccassi 9d6d4c305a core: don't fail on EEXIST when creating mount point
systemd[1016]: Failed to mount /tmp/app1 (type n/a) on /run/systemd/unit-extensions/1 (MS_BIND ): No such file or directory
systemd[1016]: Failed to create destination mount point node '/run/systemd/unit-extensions/1': File exists
2022-01-31 13:53:47 +01:00
Luca Boccassi dd802109c6 Merge pull request #22276 from mrc0mmand/TEST-64-workaround
test: temporary workaround for #21819
2022-01-28 00:56:04 +00:00
Luca Boccassi 3fa80e5e75 core: do not attempt to add 'private' symlinks when RootImage/RootDirectory are used
A bind mount is added directly from private on the host to the actual
destination directory, no need for the symlinks (which cannot be created
as the bind mount happens first and creates the target as an actual directory)

Fixes https://github.com/systemd/systemd/issues/22264
2022-01-28 00:54:10 +00:00
Luca Boccassi 6d7c999ab5 core: add clearer debug log when setting up ExecDirectories symlinks fails 2022-01-27 14:21:29 +00:00
Luca Boccassi 392d46d7a8 test: use mksquashfs -noappend
Makes the setup idempotent, as mksquashfs by default attempts to
append to an existing image
2022-01-27 14:21:29 +00:00
Luca Boccassi d76f0de746 test: rename service used in TEST-29-PORTABLE to avoid conflict
There's an app0.service in the extension app0.raw, so don't use the same
name for a unit in minimal.raw
2022-01-27 14:21:29 +00:00
Luca Boccassi 3a5cd7dd8d Merge pull request #22251 from medhefgo/boot-cleanup
boot: Small improvements
2022-01-26 22:34:32 +00:00
Luca Boccassi 429cddbaf1 NEWS: note breaking change w.r.t. Restart=always and ExecCondition= 2022-01-26 19:03:34 +00:00
Luca Boccassi abb99360d3 core: do not restart a service with Restart=always when ExecCondition fails
When a Condition*= fails, and a service has Restart=always,
the service is not restarted.
Follow the same behaviour for ExecCondition= to avoid inconsistencies.

Fixes #22257
2022-01-26 19:02:11 +00:00
Luca Boccassi e3f7ed944a portable: add flag to return extension-releases in GetImageMetadataWithExtensions
Return the name of each extension and the associated extension-release
file, and pretty-print them in 'portablectl inspect', if a new flag
is passed.

$ portablectl inspect --extension app2 --extension app0  minimal app0 app1
(Matching unit files with prefixes 'app0', 'app1'.)
Image:
        /run/portables/minimal.raw
Portable Service:
        n/a
Operating System:
        Debian GNU/Linux 10 (buster)
Extension:
        /run/portables/app2.raw
        Extension Scope:
                n/a
        Extension Compatibility Level:
                n/a
        Portable Service:
                n/a
        Portable Prefixes:
                n/a
        Operating System:
                n/a (debian 10)
Extension:
        /run/portables/app0.raw
        Extension Scope:
                n/a
        Extension Compatibility Level:
                n/a
        Portable Service:
                n/a
        Portable Prefixes:
                n/a
        Operating System:
                n/a (debian 10)
Unit files:
        app0.service
2022-01-25 22:22:47 +00:00
Luca Boccassi 0017415cc5 portable: add GetImageStateWithExtensions method
Allow to correctly query a layered portable service for
attached/detached state.
2022-01-25 06:44:27 +09:00
Luca Boccassi cb94b8acc5 Merge pull request #22203 from brauner/2022-01-21.procsubset.pid
core/namespace: allow using ProtectSubset=pid and ProtectHostname=tru…
2022-01-24 13:04:23 +00:00
Luca Boccassi aa3160b967 Merge pull request #22231 from yuwata/resolve-synthesize
resolve: synthesize several filtered name
2022-01-24 12:11:29 +00:00
Luca Boccassi a07b992606 core: add ExtensionDirectories= setting
Add a new setting that follows the same principle and implementation
as ExtensionImages, but using directories as sources.
It will be used to implement support for extending portable images
with directories, since portable services can already use a directory
as root.
2022-01-21 22:53:12 +09:00
Luca Boccassi 071be9701a Merge pull request #22195 from keszybz/more-specifiers
Add unit specifiers for fragment path and directory
2022-01-21 11:22:22 +00:00
Luca Boccassi de843f8582 Merge pull request #21865 from yuwata/network-sr-iov
udev/net: support configuring SR-IOV virtual functions through .link file
2022-01-19 22:38:00 +00:00
Luca Boccassi 70a5c6dce0 sysext: use LO_FLAGS_PARTSCAN when opening image
Jan 17 12:34:59 myguest1 (sd-sysext)[486]: Device '/var/lib/extensions/myext.raw' is loopback block device with partition scanning turned off, please turn it on.

Fixes https://github.com/systemd/systemd/issues/22146
2022-01-19 08:54:50 +01:00
Luca Boccassi 78ab2b5064 core: refuse to mount ExtensionImages if the base layer doesn't at least have ID in os-release
We can't match an extension if we don't at least have an ID,
so refuse to continue
2022-01-19 00:08:57 +00:00
Luca Boccassi 37361f46d5 dissect-image: validate extension-release even if the host has only ID in os-release
A rolling distro won't set VERSION_ID or SYSEXT_LEVEL in os-release,
which means we skip validation of ExtensionImages.
Validate even with just an ID, the lower level helper already
recognizes and accepts this use case.

Fixes https://github.com/systemd/systemd/issues/22146
2022-01-19 00:01:48 +00:00
Luca Boccassi 095162d721 Merge pull request #22159 from medhefgo/boot-xbootldr
boot: xbootldr improvements
2022-01-18 22:40:58 +00:00
Luca Boccassi 5a2de315ff Merge pull request #22153 from evverx/switch-to-bullseye
ci: switch Debian from unstable to testing on mkosi
2022-01-18 11:54:35 +00:00
Luca Boccassi e91aa2ea23 man: add more references for extensions to portablectl
Link in systemd.io and systemd-sysext

Fixes #22146
2022-01-18 14:28:03 +09:00
Luca Boccassi 8f502f09c3 Merge pull request #22125 from DaanDeMeyer/copy-holes
shared: Copy holes in sparse files in copy_bytes_full()
2022-01-17 21:15:14 +00:00
Luca Boccassi 682a9f2e88 Merge pull request #22147 from keszybz/stdio-bridge-docs
More docs for systemd-stdio-bridge
2022-01-17 14:11:53 +00:00
Luca Boccassi cf18de1b26 systemd-stdio-bridge: add manpage 2022-01-17 16:54:56 +09:00
Luca Boccassi 6eed65d455 man: change 'allow[s] to' -> 'allow[s] one to'
Lintian is opinionated about this and we get nagged
2022-01-16 15:49:43 +00:00
Luca Boccassi aac3efd24c Merge pull request #22136 from yuwata/network-wireguard-disable-adding-routes-to-allowed-ips-by-default
network: wireguard: disable adding routes to allowed ips by default
2022-01-16 14:04:30 +00:00
Luca Boccassi 8a592c6fc2 Merge pull request #22130 from keszybz/silence-gcc-warning-in-sd-device
Silence gcc warning in sd-device
2022-01-15 16:22:59 +00:00
Luca Boccassi e6d692ddfd Merge pull request #22111 from medhefgo/boot-cleanup
boot: Cleanup
2022-01-13 22:50:52 +00:00
Luca Boccassi fad7ad2b8b Merge pull request #22106 from yuwata/dhcp6-broken-NTP
sd-dhcp6-client: handle broken NTP server option gracefully
2022-01-13 22:43:07 +00:00
Luca Boccassi 8e65d93e85 test: do not assume x86-64 arch in TEST-58-REPART 2022-01-12 23:27:05 +00:00
Luca Boccassi a94b9977d5 test: add partition IDs for s390x and ppc64el to TEST-50-DISSECT 2022-01-12 22:59:20 +00:00
Luca Boccassi ac172d7063 Merge pull request #22090 from mbiebl/units-oomd-alias
units: don't install dbus-org.freedesktop.oom1.service alias
2022-01-12 15:03:00 +00:00
Luca Boccassi e80b51dad2 Merge pull request #22043 from medhefgo/boot-bitlocker
boot: Add BitLocker TPM key sealing workaround
2022-01-12 13:05:30 +00:00
Luca Boccassi 1d18a466c4 Merge pull request #22086 from keszybz/nss-no-proc-cmdline
Avoid looking at /prcc/cmdline from nss modules
2022-01-11 15:29:24 +00:00
Luca Boccassi 07b0de6584 Merge pull request #22082 from keszybz/no-update-if-nothing-to-update
bootctl: skip update if sd-boot wasn't installed
2022-01-11 15:28:35 +00:00
Luca Boccassi 3f3d4b4167 Merge pull request #22071 from keszybz/xdg-autostart-logs
Improve logs in systemd-xdg-autostart-generator
2022-01-10 16:55:14 +00:00
Luca Boccassi 55a89ea1b4 Merge pull request #22070 from keszybz/rm-rf-wip
Simplify recursive removal code and replace stack recursion with a heap queue
2022-01-10 15:35:42 +00:00
Luca Boccassi e683878c0f test: store empty files rather than symlinks for test-fstab-generator
Dangling symlinks get pruned when packaging up the installation
directory. Just store empty files instead, and compare the names
rather than the content for .requires/.wants - the filename is
what is important anyway, the content is ignored.

Fixes #22059
2022-01-09 18:17:40 +01:00
Luca Boccassi f2d323a3ab Merge pull request #22028 from medhefgo/boot-cleanup
boot: Cleanup
2022-01-09 15:44:55 +00:00
Luca Boccassi 7e1f61137a Merge pull request #22044 from keszybz/minor-man-page-adjustments
Minor man page adjustments
2022-01-07 22:14:30 +00:00
Luca Boccassi ff97eb4aac Merge pull request #21977 from systemd/wip/hadess/minipro-uaccess
hwdb: Allow end-users root-less access to TL866 EPROM readers
2022-01-04 15:51:28 +00:00
Luca Boccassi c9b1efdf14 Merge pull request #21990 from keszybz/indentation-and-comments
Indentation and comments
2022-01-04 00:18:10 +00:00
Luca Boccassi 73dfeb0c6e Merge pull request #21985 from yuwata/elf-util-cleanups
elf-util: several cleanups
2022-01-03 22:44:20 +00:00
Luca Boccassi af73d8bd83 Merge pull request #21940 from yuwata/network-wireguard-mask-allowed-ips
network: wireguard: handle invalid AllowedIPs= gracefully
2021-12-30 21:18:05 +00:00
Luca Boccassi 466f2351bb systemd-run: ensure error logs suggest to use '--user' when appropriate
Before:

$ systemd-run --service-type=notify --user false
Job for run-rc3fe52ee6ddd4a6eaaf1a20e0a949cdf.service failed because the control process exited with error code.
See "systemctl status run-rc3fe52ee6ddd4a6eaaf1a20e0a949cdf.service" and "journalctl -xeu run-rc3fe52ee6ddd4a6eaaf1a20e0a949cdf.service" for details.

After:

$ systemd-run --service-type=notify --user false
Job for run-r7791e380a7b6400ea01d6a0e5a458b23.service failed because the control process exited with error code.
See "systemctl --user status run-r7791e380a7b6400ea01d6a0e5a458b23.service" and "journalctl --user -xeu run-r7791e380a7b6400ea01d6a0e5a458b23.service" for details.

Fixes https://github.com/systemd/systemd/issues/21933
2021-12-30 23:50:45 +09:00
Luca Boccassi 86980de64b dbus-wait-for-jobs: add extra_args to bus_wait_for_jobs_one()
And pass it through to bus_wait_for_jobs()
2021-12-30 23:50:45 +09:00
Luca Boccassi b3bfe6b9e1 Merge pull request #21922 from medhefgo/boot-fix
boot: More BCD parser fixes
2021-12-29 19:35:42 +00:00
Luca Boccassi d39d3696c0 Merge pull request #21898 from yuwata/meson-dbus-interfaces-dir
meson: obtain dbus related directories from pkg-config
2021-12-29 12:39:50 +00:00
Luca Boccassi 69b5c7cf2a Merge pull request #21925 from yuwata/unit-file-symlinked-drop-in-directory
unit-file: fix symlinked drop-in directory handling
2021-12-28 20:38:24 +00:00
Luca Boccassi 4b3ad81bfa core: do not touch /run/systemd/systemd-units-load from user session instances
Follow-up for: https://github.com/systemd/systemd/commit/15b9243c0d7f6d1531fa65dbc01bd11e8e6c12ca
Fixes: https://github.com/systemd/systemd/issues/21911
2021-12-28 22:07:02 +09:00
Luca Boccassi e99f8605e2 Merge pull request #21916 from medhefgo/boot-fix
boot: Fixes
2021-12-28 11:48:19 +00:00
Luca Boccassi 7c3b51c469 chrattr-util: return EOPNOTSUPP from chrattr_full if no other failure was observed
When chattr_full tries to apply flags one-by-one, and one fails,
record which errno was returned. But record EOPNOTSUPP(&friends)
only if no other error is observed, and return it only in that case
(otherwise keep returning ENOANO), so that callers can respond
appropriately to EOPNOTSUPP vs more relevant errors.
For example, this lets tmpfiles.d log at debug level when a filesystem
flag cannot be applied because the filesystem does not support it,
but at warning level if something else went wrong when applying it.
Restores logging behaviour of tmpfiles.d to pre-250.

Follow-up for: https://github.com/systemd/systemd/commit/c1631ee124a30abfb9c71e2a1534b8afffc3b6a7

Fixes: https://github.com/systemd/systemd/issues/21901
2021-12-27 08:28:26 +09:00
Luca Boccassi a2ccfc9ccb Merge pull request #21881 from yuwata/update-linux-headers
Update linux headers
2021-12-26 17:30:47 +00:00
Luca Boccassi 4ac8526215 Merge pull request #21892 from yuwata/network-vxlan-automatic-local-address-selection
network: vxlan: automatic local address selection
2021-12-26 17:27:41 +00:00
Luca Boccassi a5016a0ace Merge pull request #21870 from keszybz/cleanup-and-comments
Use _cleanup_ and adjust comments
2021-12-23 17:43:37 +00:00
Luca BoccassiandLucas Werkmeister 741c4c8da9 analyze: do not connect to DBUS with --offline
Co-authored-by: Lucas Werkmeister <mail@lucaswerkmeister.de>
2021-12-23 09:44:42 +09:00
Luca Boccassi 743814d7a2 Merge pull request #21858 from yuwata/fix-test-home
test: workaround for TEST-46-HOMED
2021-12-22 16:14:53 +00:00
Luca Boccassi 616779c345 NEWS: add note about path unit's TriggerLimitBurst= and TriggerLimitIntervalSec= 2021-12-20 13:52:49 +00:00
Luca Boccassi 077c5cf669 Merge pull request #21831 from keszybz/man-dnssec-fixlets
Fixlets for DNSSEC-related documentation
2021-12-20 12:04:41 +00:00
Luca Boccassi 47dba9fb09 path unit: add TriggerLimitBurst= and TriggerLimitIntervalSec=
Given there's now a default for these settings, also allow users to configure
them, matching socket units
2021-12-18 23:17:53 +00:00
Luca Boccassi ef1aa10692 man: fix typo in systemd.socket.5 2021-12-18 17:23:53 +00:00
Luca Boccassi 5cfe61f2de Merge pull request #21808 from DaanDeMeyer/path-trigger-limit
core: Add trigger limit for path units
2021-12-18 16:56:05 +00:00
Luca Boccassi ba679b8d56 logind: add a comment with a reminder why we don't use ProtrectProc=
Follow-up for https://github.com/systemd/systemd/pull/21785
2021-12-17 21:34:20 +09:00
Luca Boccassi c6837e4e86 Merge pull request #21790 from keszybz/network-generator-always
Enable systemd-network-generator by default
2021-12-16 15:50:39 +00:00
Luca Boccassi 58f62d7079 Merge pull request #21784 from DaanDeMeyer/issue-21675
journal: Hole punching improvements
2021-12-15 22:38:00 +00:00
Luca Boccassi 020d41ce4f Merge pull request #21769 from yuwata/home-fix-heap-use-after-free
home: fix heap-use-after-free
2021-12-14 15:54:00 +00:00
Luca Boccassi 720db03495 Merge pull request #21752 from keszybz/man-creds
Small improvements to systemd-creds output and man page
2021-12-13 19:43:37 +00:00
Luca Boccassi a0630d46a5 Merge pull request #21749 from nabijaczleweli/bashpsko
Shebang bash via env
2021-12-13 11:11:39 +00:00
Luca Boccassi 109a157cea test: bump timeout for TEST-50-DISSECT and TEST-67-INTEGRITY
TEST-67-INTEGRITY times out quite often, and when it passes
it does so a few seconds short of the timeout. It's a slow
qemu test, so bump the timeout.
TEST-50-DISSECT has been reported to fail in the same way
on Debian's infrastructure, again narrowly failing or passing
just short of the timeout.
2021-12-13 09:29:47 +01:00
Luca Boccassi 74d99c3ffb Merge pull request #21731 from yuwata/test-62-bpf-framework
test: fix TEST-62
2021-12-11 10:46:46 +00:00
Luca Boccassi 082c676165 meson: exclude .gitattributes when using install_subdir
It picks the whole content of the directory by default, but we don't
want to install .gitattributes files. Add it to all invocations, not
just the ones on subdirs with .gitattributes, so that we don't regress
in the future.

Fixes #21715
2021-12-10 07:30:58 +01:00
Luca Boccassi c65a0cf62f Merge pull request #21667 from yuwata/resolve-do-not-re-read-settings-from-networkd-when-unmodified
resolve: do not re-read settings from networkd when link state file is unmodified
2021-12-08 13:28:15 +00:00
Luca Boccassi f43282670b core: add StartUnitWithFlags DBUS method
When an activation job is skipped because of a Condition*= setting failing,
currently the JobRemoved signal lists 'done' as the result, just as with
a successful job.

This is a problem when doing dbus activation: dbus-broker will receive a
signal that says the job was successful, so then it moves into a state where
it waits for the requested name to appear on the bus, but that never happens
because the job was actually skipped.

Add a new StartUnitWithFlags that changes the behaviour of the JobRemoved
signal to list 'done' or 'skipped'.

Fixes #21520
2021-12-07 16:30:49 +01:00
Luca Boccassi 5328f80e92 Merge pull request #21646 from mrc0mmand/lgtm-followups
LGTM follow-ups
2021-12-07 00:14:45 +00:00
Luca Boccassi 3f88d5046f Merge pull request #21639 from yuwata/network-dhcp6pd-use-dhcp6_pd_prefix_acquired
network: dhcp6pd: use dhcp6 pd prefix acquired() and drop dhcp6_pd_distribute_prefix()
2021-12-07 00:14:04 +00:00
Luca Boccassi efeecf4010 NEWS: add more entries for v250 2021-12-06 15:58:38 +00:00
Luca Boccassi 11b109223f NEWS: add more entries for v250 2021-12-06 15:29:11 +00:00
Luca Boccassi 6b12086e1f meson: remove openssl dependency from repart
No longer needed since ade99252e2
2021-12-06 16:09:45 +09:00
Luca Boccassi bf71ade808 NEWS: add more entries for v250 2021-12-05 14:12:36 +00:00
Luca Boccassi 09dfd918ef Merge pull request #21607 from mrc0mmand/ci-install-libbpf
ci: run build test with BPF-related stuff as well
2021-12-03 18:37:33 +00:00
Luca Boccassi 86167587c5 Merge pull request #21582 from mrc0mmand/lgtm-uninitialized
lgtm: enable more queries
2021-12-03 18:25:19 +00:00
Luca Boccassi 68ee5d774c core: support user manager with Condition[Memory/CPU/IO]Pressure
Get the cgroup root path from the current PID, so that when
ran by the user manager we can get to the right path.
Eg: foo.slice:10% will check under:

/sys/fs/cgroup/user.slice/user-1000.slice/user@1000.service/foo.slice/cpu.pressure

Follow-up for 81513b382b
2021-12-02 11:21:06 +00:00
Luca Boccassi 6b88743c22 Merge pull request #21591 from yuwata/core-bpf-firewall-unsupported-reason
core/bpf-firewall: make bpf_firewall_supported() always set unsupport…
2021-12-01 21:20:30 +00:00
Luca Boccassi 541b127170 elf-util: do not ignore prctl() errors
We want to avoid loops, so fail and return if we can't disable
core dumping

CID#1467004
2021-12-01 16:00:26 +00:00
Luca Boccassi cb94244406 test: run commands with debug level logs in TEST-65-ANALYZE 2021-12-01 12:06:36 +00:00
Luca Boccassi a42232a18c cgroup: don't emit BPF firewall warning when manager is in test mode
Support for BPF might not have been checked, since it's not necessary
in test mode (eg: running offline analysis of units). This causes an
assert:

Assertion '(_error) != 0' failed at src/core/bpf-firewall.c:914, function emit_bpf_firewall_warning(). Aborting.

Export SYSTEMD_LOG_LEVEl=debug in TEST-65-ANALYZE is enough to trigger
this assert while doing an offline analysis of a unit that has some
firewall/network restrictions set.

Skip the warning if the manager is in test mode.
2021-12-01 12:06:36 +00:00
Luca Boccassi 81513b382b core: add Condition[Memory/CPU/IO]Pressure
By default checks PSI on /proc/pressure, and causes a unit to be skipped
if the threshold is above the given configuration for the avg300
measurement.
Also allow to pass a custom timespan, and a particular slice unit to
check under.

Fixes #20139
2021-12-01 09:53:18 +01:00
Luca Boccassi c7b5d3b5e4 Merge pull request #21553 from yuwata/network-wireguard-add-routes-to-allowed-ips
network: wireguard: add routes to AllowedIPs=
2021-11-30 23:30:31 +00:00
Luca Boccassi 917e655457 analyze: add inspect-elf verb to parse package metadata
Parses and prints package metadata from executables, libraries and core files

$ systemd-analyze inspect-elf /tmp/core ../fsverity-utils/fsverityb /bin/bash --json=off --no-pager
__________________________
           path: /tmp/core
        elfType: coredump
elfArchitecture: AMD x86-64

    module name: /tmp/crash
           type: deb
           name: hello
        version: 1.0
   architecture: amd64
             os: debian
      osVersion: 11
        buildId: b33541096a09c29a0ba4ec5c69364a2711b7c269

    module name: /usr/lib/x86_64-linux-gnu/libc-2.31.so
           type: deb
           name: hello
        version: 1.0
   architecture: amd64
             os: debian
      osVersion: 11
        buildId: 54eef5ce96cf37cb175b0d93186836ca1caf470c

    module name: /usr/lib/x86_64-linux-gnu/ld-2.31.so
           type: deb
           name: hello
        version: 1.0
   architecture: amd64
             os: debian
      osVersion: 11
        buildId: 32438eb3b034da54caf58c7a65446639f7cfe274
__________________________________________________________________
           path: /home/luca/git/systemd/../fsverity-utils/fsverity
        elfType: executable
elfArchitecture: AMD x86-64

           type: deb
           name: fsverity-utils
        version: 1.3-1
   architecture: amd64
             os: debian
   debugInfoUrl: https://debuginfod.debian.net
        buildId: 05b899e6ee0d3653e20458719b202ed3ca8d566f
_________________________
           path: /bin/bash
        elfType: executable
elfArchitecture: AMD x86-64

        buildId: 4fef260f60e257d2dbd4126bf8add83837aea190
$
$ systemd-analyze inspect-elf /tmp/core ../fsverity-utils/fsverity /bin/bash /tmp/core.test-condition.1000.f9b9a84a9fd1482c9702d6afa6f6934b.37640.1637083078000000 --json=pretty --no-pager
{
	"elfType" : "coredump",
	"elfArchitecture" : "AMD x86-64",
	"/home/bluca/git/fsverity-utils/fsverity" : {
		"type" : "deb",
		"name" : "fsverity-utils",
		"version" : "1.3-1",
		"buildId" : "7c895ecd2a271f93e96268f479fdc3c64a2ec4ee"
	},
	"/home/bluca/git/fsverity-utils/libfsverity.so.0" : {
		"type" : "deb",
		"name" : "fsverity-utils",
		"version" : "1.3-1",
		"buildId" : "b5e428254abf14237b0ae70ed85fffbb98a78f88"
	}
}
{
	"elfType" : "executable",
	"elfArchitecture" : "AMD x86-64",
	"/home/bluca/git/systemd/../fsverity-utils/fsverity" : {
		"type" : "deb",
		"name" : "fsverity-utils",
		"version" : "1.3-1",
		"buildId" : "7c895ecd2a271f93e96268f479fdc3c64a2ec4ee"
	}
}
{
	"elfType" : "executable",
	"elfArchitecture" : "AMD x86-64",
	"/bin/bash" : {
		"buildId" : "3313b4cb119dcce16927a9b6cc61dcd97dfc4d59"
	}
}
{
	"elfType" : "coredump",
	"elfArchitecture" : "AMD x86-64"
}
2021-11-30 23:14:07 +00:00
Luca Boccassi d48c2721b6 elf-util: add function to parse metadata out of ELF objects
Parse the packaging metadata from an ELF object, if any, and
print a pretty table following the spec defined at:
https://systemd.io/COREDUMP_PACKAGE_METADATA/
2021-11-30 23:14:07 +00:00
Luca Boccassi d2d8bd3a17 TODO: update dlopen todo list 2021-11-30 16:49:59 +00:00
Luca Boccassi 56f2a72919 elf-util: switch libelf/libdw to dlopen()
In order to avoid inflating the dependency list for the core
library, use dlopen when inspecting elfs, since it's only
used in two non-core executables.
2021-11-30 16:49:59 +00:00
Luca Boccassi 5361f62d6d meson: remove libdw dependency from pstore
systemd-pstore does not use any symbol from libdw, and never did,
but the dependency was listed since the beginning
2021-11-30 16:49:59 +00:00
Luca Boccassi 889f252973 elf-util: add stub for builds without libdw 2021-11-30 16:49:59 +00:00