Skip to content
Please note that GitHub no longer supports Internet Explorer.

We recommend upgrading to the latest Microsoft Edge, Google Chrome, or Firefox.

Learn more
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

systemd-homed #14096

Merged
merged 13 commits into from Jan 30, 2020
Merged

systemd-homed #14096

merged 13 commits into from Jan 30, 2020

Conversation

@poettering
Copy link
Member

poettering commented Nov 20, 2019

Yupp, as presented at AllSystemsGo! 2019, here it is! Should be pretty complete, with LUKS and fscrypt backends, with PKCS#11 yubikey unlocking, key suspending during system sleep, and lots and lots of other fancy features.

@poettering poettering force-pushed the poettering:homed branch from 164eebf to d5eb7de Nov 20, 2019
mrc0mmand added a commit to systemd/systemd-centos-ci that referenced this pull request Nov 20, 2019
- libutil-linux (libfdisk)
- libpwquality
- p11-kit

See: systemd/systemd#14096
@mrc0mmand

This comment has been minimized.

Copy link
Member

mrc0mmand commented Nov 20, 2019

CI summary:

  1. Following scripts have to be updated with the new deps:
  1. CentOS CI
    a) I'll most likely bump the CentOS 7 job to CentOS 8 tomorrow (today), as CentOS 7 doesn't have libfdisk (and because of a few other reasons)
    b) Arch in KVM (with & without sanitizers) should have the new deps since systemd/systemd-centos-ci@2c821d5
    c) Arch in KVM with sanitizers fails with:
archlinux_systemd_ci: ../src/shared/user-record.c:185:30: error: unused variable 'k' [-Werror,-Wunused-variable]
    archlinux_systemd_ci:         _cleanup_free_ char *k = NULL;
    archlinux_systemd_ci:                              ^
    archlinux_systemd_ci: ../src/shared/user-record.c:311:30: error: unused variable 'k' [-Werror,-Wunused-variable]
    archlinux_systemd_ci:         _cleanup_free_ char *k = NULL;
    archlinux_systemd_ci:                              ^
    archlinux_systemd_ci: ../src/shared/user-record.c:338:30: error: unused variable 'k' [-Werror,-Wunused-variable]
    archlinux_systemd_ci:         _cleanup_free_ char *k = NULL;
    archlinux_systemd_ci:                              ^
    archlinux_systemd_ci: ../src/shared/user-record.c:365:30: error: unused variable 'k' [-Werror,-Wunused-variable]
    archlinux_systemd_ci:         _cleanup_free_ char *k = NULL;
    archlinux_systemd_ci:                              ^
    archlinux_systemd_ci: ../src/shared/user-record.c:390:30: error: unused variable 'k' [-Werror,-Wunused-variable]
    archlinux_systemd_ci:         _cleanup_free_ char *k = NULL;
    archlinux_systemd_ci:                              ^
    archlinux_systemd_ci: 5 errors generated.
  1. Ubuntu CI should get updated with the new deps as well, cc @xnox, @ddstreet
  • libfdisk-dev
  • libpwquality-dev
  • p11-kit (libp11-kit-dev?)
@poettering

This comment has been minimized.

Copy link
Member Author

poettering commented Nov 21, 2019

@mrc0mmand Thank so much for tracking these down! Much appreciated!

@mrc0mmand

This comment has been minimized.

Copy link
Member

mrc0mmand commented Nov 21, 2019

Also, looks like the systemd-homed and systemd-logind services timeout throughout the integration testsuite:

Nov 21 01:06:01 systemd-testsuite systemd[301]: serial-getty@ttyS0.service: Executing: /sbin/agetty -o '-p -- \u' --keep-baud 115200,38400,9600 ttyS0 vt220
Nov 21 01:07:27 systemd-testsuite systemd[1]: Failed to get initial list of names: Connection timed out
Nov 21 01:07:27 systemd-testsuite kernel: kauditd_printk_skb: 3 callbacks suppressed
Nov 21 01:07:27 systemd-testsuite kernel: audit: type=1130 audit(1574294847.246:15): pid=1 uid=0 auid=4294967295 ses=4294967295 msg='unit=systemd-homed comm="systemd" exe="/usr/lib/systemd/systemd" hostname=? addr=? terminal=? res=failed'
Nov 21 01:07:27 systemd-testsuite audit[1]: SERVICE_START pid=1 uid=0 auid=4294967295 ses=4294967295 msg='unit=systemd-homed comm="systemd" exe="/usr/lib/systemd/systemd" hostname=? addr=? terminal=? res=failed'
Nov 21 01:07:27 systemd-testsuite systemd[1]: Event source manager-sync-bus-names (type defer) returned error, disabling: Connection timed out
Nov 21 01:07:27 systemd-testsuite systemd[1]: systemd-logind.service: Got notification message from PID 305 (WATCHDOG=1)
Nov 21 01:07:27 systemd-testsuite systemd[1]: systemd-logind.service: Got notification message from PID 305 (READY=1, STATUS=Processing requests...)
Nov 21 01:07:27 systemd-testsuite systemd[1]: systemd-journald.service: Got notification message from PID 266 (FDSTORE=1)
Nov 21 01:07:27 systemd-testsuite systemd[1]: systemd-journald.service: Added fd 57 (n/a) to fd store.
Nov 21 01:07:27 systemd-testsuite systemd[1]: systemd-homed.service: Got notification message from PID 292 (WATCHDOG=1)
Nov 21 01:07:27 systemd-testsuite systemd[1]: systemd-journald.service: Got notification message from PID 266 (WATCHDOG=1)
Nov 21 01:07:27 systemd-testsuite systemd[1]: Received SIGCHLD from PID 292 (systemd-homed).
Nov 21 01:07:27 systemd-testsuite systemd[1]: Child 292 (systemd-homed) died (code=exited, status=1/FAILURE)
Nov 21 01:07:27 systemd-testsuite systemd[1]: systemd-homed.service: Child 292 belongs to systemd-homed.service.
Nov 21 01:07:27 systemd-testsuite systemd[1]: systemd-homed.service: Main process exited, code=exited, status=1/FAILURE
Nov 21 01:07:27 systemd-testsuite systemd[1]: systemd-homed.service: Failed with result 'exit-code'.
Nov 21 01:07:27 systemd-testsuite systemd[1]: systemd-homed.service: Service will not restart (restart setting)
Nov 21 01:07:27 systemd-testsuite systemd[1]: systemd-homed.service: Changed start -> failed
Nov 21 01:07:27 systemd-testsuite systemd[1]: systemd-homed.service: Job 63 systemd-homed.service/start finished, result=failed
Nov 21 01:07:27 systemd-testsuite systemd[1]: Failed to start Home Manager.
Nov 21 01:07:27 systemd-testsuite systemd[1]: systemd-homed.service: Unit entered failed state.
Nov 21 01:07:27 systemd-testsuite systemd[1]: systemd-homed.service: Consumed 1.129s CPU time.
Nov 21 01:07:27 systemd-testsuite systemd[1]: systemd-homed.service: Control group is empty.
Nov 21 01:07:27 systemd-testsuite systemd[1]: systemd-journald.service: Received EPOLLHUP on stored fd 56 (stored), closing.
Nov 21 01:07:27 systemd-testsuite systemd[1]: n/a: New incoming connection.
Nov 21 01:07:27 systemd-testsuite systemd[1]: n/a: Connections of user 0: 1 (of 1024 max)
Nov 21 01:07:27 systemd-testsuite systemd[1]: varlink-21: varlink: setting state idle-server
Nov 21 01:07:27 systemd-testsuite systemd[1]: systemd-logind.service: start operation timed out. Terminating.
Nov 21 01:07:27 systemd-testsuite systemd[1]: systemd-logind.service: Changed start -> stop-sigterm
Nov 21 01:07:27 systemd-testsuite systemd[1]: systemd-logind.service: Got notification message from PID 305 (WATCHDOG=1)
Nov 21 01:07:27 systemd-testsuite systemd[1]: varlink-61: Got POLLHUP from socket.
Nov 21 01:07:27 systemd-testsuite systemd[1]: varlink-61: varlink: changing state idle-server → pending-disconnect
Nov 21 01:07:27 systemd-testsuite systemd[1]: varlink-61: varlink: changing state pending-disconnect → processing-disconnect
Nov 21 01:07:27 systemd-testsuite systemd[1]: varlink-61: varlink: changing state processing-disconnect → disconnected
Nov 21 01:07:27 systemd-testsuite systemd[1]: systemd-journald.service: Received EPOLLHUP on stored fd 57 (stored), closing.
Nov 21 01:07:27 systemd-testsuite systemd[1]: varlink-21: New incoming message: {"method":"io.systemd.UserDatabase.GetMemberships","parameters":{"userName":"systemd-timesync","service":"io.systemd.DynamicUser"},"more":true}
Nov 21 01:07:27 systemd-testsuite systemd[1]: varlink-21: varlink: changing state idle-server → processing-method-more
Nov 21 01:07:27 systemd-testsuite systemd[1]: varlink-21: Sending message: {"error":"io.systemd.UserDatabase.NoRecordFound","parameters":{}}
Nov 21 01:07:27 systemd-testsuite systemd[1]: varlink-21: varlink: changing state processing-method-more → processed-method
Nov 21 01:07:27 systemd-testsuite systemd[1]: varlink-21: varlink: changing state processed-method → idle-server
Nov 21 01:07:27 systemd-testsuite systemd[1]: Processing of bus failed, closing down: Connection timed out
Nov 21 01:07:27 systemd-testsuite systemd[1]: Bus bus-api-system: changing state AUTHENTICATING → CLOSING
Nov 21 01:07:27 systemd-testsuite systemd[1]: Failed to process message type=error sender=org.freedesktop.DBus destination=n/a path=n/a interface=n/a member=n/a cookie=4294967295 reply_cookie=1 signature=s error-name=org.freedesktop.DBus.Error.NoReply error-message=Connection terminated: Connection timed out
Nov 21 01:07:27 systemd-testsuite systemd[1]: Unable to add match type='signal',sender='org.freedesktop.DBus',path='/org/freedesktop/DBus',interface='org.freedesktop.DBus',member='NameOwnerChanged',arg0='org.freedesktop.home1', failing connection: Connection terminated
Nov 21 01:07:27 systemd-testsuite systemd[1]: varlink-21: Got POLLHUP from socket.
Nov 21 01:07:27 systemd-testsuite systemd[1]: varlink-21: varlink: changing state idle-server → pending-disconnect
Nov 21 01:07:27 systemd-testsuite systemd[1]: varlink-21: varlink: changing state pending-disconnect → processing-disconnect
Nov 21 01:07:27 systemd-testsuite systemd[1]: varlink-21: varlink: changing state processing-disconnect → disconnected
Nov 21 01:07:27 systemd-testsuite systemd[1]: Unexpected error response from GetNameOwner: Connection terminated
Nov 21 01:07:27 systemd-testsuite systemd[1]: Unable to add match type='signal',sender='org.freedesktop.DBus',path='/org/freedesktop/DBus',interface='org.freedesktop.DBus',member='NameOwnerChanged',arg0='org.freedesktop.login1', failing connection: Connection terminated
Nov 21 01:07:27 systemd-testsuite systemd[1]: Unexpected error response from GetNameOwner: Connection terminated
Nov 21 01:07:27 systemd-testsuite systemd[1]: Unable to add match type='signal',sender='org.freedesktop.DBus',path='/org/freedesktop/DBus',interface='org.freedesktop.systemd1.Activator',member='ActivationRequest', failing connection: Connection terminated
Nov 21 01:07:27 systemd-testsuite systemd[1]: Unable to request name, failing connection: Connection terminated

Taken from this journal file, all logs can be found here.

@poettering poettering force-pushed the poettering:homed branch from ad7e3a4 to 3673100 Nov 21, 2019
@mrc0mmand

This comment has been minimized.

Copy link
Member

mrc0mmand commented Nov 21, 2019

Also, another bunch of warnings from llvm/clang:

    archlinux_systemd_ci: ../src/home/homework-directory.c:33:53: error: unused variable 'embedded_json' [-Werror,-Wunused-variable]
    archlinux_systemd_ci:         _cleanup_(json_variant_unrefp) JsonVariant *embedded_json = NULL;
    archlinux_systemd_ci:                                                     ^
    archlinux_systemd_ci: 1 error generated.
    archlinux_systemd_ci: [696/1587] Compiling C object 'systemd-homework@exe/src_home_homework-cifs.c.o'.
    archlinux_systemd_ci: FAILED: systemd-homework@exe/src_home_homework-cifs.c.o 
    ...
    archlinux_systemd_ci: ../src/home/homework-cifs.c:107:30: error: unused variable 'fstype' [-Werror,-Wunused-variable]
    archlinux_systemd_ci:         _cleanup_free_ char *fstype = NULL;
    archlinux_systemd_ci:                              ^
    archlinux_systemd_ci: 1 error generated.
    archlinux_systemd_ci: [697/1587] Compiling C object 'systemd-homework@exe/src_home_homework-fscrypt.c.o'.
    archlinux_systemd_ci: FAILED: systemd-homework@exe/src_home_homework-fscrypt.c.o 
    ...
    archlinux_systemd_ci: ../src/home/homework-fscrypt.c:291:30: error: unused variable 'xattr_buf' [-Werror,-Wunused-variable]
    archlinux_systemd_ci:         _cleanup_free_ char *xattr_buf = NULL;
    archlinux_systemd_ci:                              ^
    archlinux_systemd_ci: ../src/home/homework-fscrypt.c:465:41: error: unused variable 'hex' [-Werror,-Wunused-variable]
    archlinux_systemd_ci:         _cleanup_free_ char *d = NULL, *hex = NULL, *salt_xattr = NULL;
    archlinux_systemd_ci:                                         ^
    archlinux_systemd_ci: ../src/home/homework-fscrypt.c:465:54: error: unused variable 'salt_xattr' [-Werror,-Wunused-variable]
    archlinux_systemd_ci:         _cleanup_free_ char *d = NULL, *hex = NULL, *salt_xattr = NULL;
    archlinux_systemd_ci:                                                      ^
    archlinux_systemd_ci: 3 errors generated.
@poettering poettering force-pushed the poettering:homed branch 3 times, most recently from 825d12c to 98a61a1 Nov 21, 2019
mrc0mmand added a commit to mrc0mmand/systemd-centos-ci that referenced this pull request Nov 21, 2019
This will help with several things, especially:
 - drop the plethora of CentOS 7 vs upstream systemd workarounds, like
   the custom Copr repo with various *mangled* dependencies
 - support systemd-homed (see: systemd/systemd#14096)
 - run more tests which depend on newer kernel's features
@poettering poettering force-pushed the poettering:homed branch from 98a61a1 to acbf4c4 Nov 21, 2019
mrc0mmand added a commit to mrc0mmand/systemd-centos-ci that referenced this pull request Nov 21, 2019
This will help with several things, especially:
 - drop the plethora of CentOS 7 vs upstream systemd workarounds, like
   the custom Copr repo with various *mangled* dependencies
 - support systemd-homed (see: systemd/systemd#14096)
 - run more tests which depend on newer kernel's features
mrc0mmand added a commit to mrc0mmand/systemd-centos-ci that referenced this pull request Nov 21, 2019
This will help with several things, especially:
 - drop the plethora of CentOS 7 vs upstream systemd workarounds, like
   the custom Copr repo with various *mangled* dependencies
 - support systemd-homed (see: systemd/systemd#14096)
 - run more tests which depend on newer kernel's features
@lgtm-com

This comment has been minimized.

Copy link

lgtm-com bot commented Nov 21, 2019

This pull request introduces 7 alerts when merging 42a2e08 into 9389a3c - view on LGTM.com

new alerts:

  • 3 for Comparison result is always the same
  • 2 for FIXME comment
  • 2 for Use of potentially dangerous function
@poettering poettering force-pushed the poettering:homed branch from b7dd871 to eaeb0f9 Nov 21, 2019
@lgtm-com

This comment has been minimized.

Copy link

lgtm-com bot commented Nov 21, 2019

This pull request introduces 3 alerts when merging eaeb0f9 into 9389a3c - view on LGTM.com

new alerts:

  • 2 for Use of potentially dangerous function
  • 1 for FIXME comment
@mrc0mmand

This comment has been minimized.

Copy link
Member

mrc0mmand commented Nov 21, 2019

@evverx as the local fuzzer master, do you have any idea what's going on in the Azure Pipelines? The current issue is that Ubuntu Xenial (16.x) has a pretty ancient libcryptsetup (1.6.6) yet the current requirement has been bumped to 2.0.0 (as older libcryptsetup libs don't have LUKS2 support). Anyway, in Travis CI (Fuzzit stage) and the first half of the Azure Pipeline job HAVE_LIBCRYPTSETUP is set to false (even though libcryptsetup is installed), thus the compilation passes. However, in the second half of the Azure job libcryptsetup is suddenly a required dependency, thus the final error message:

[fuzz-unit-file-build]: meson.build:996:8: ERROR: Invalid version of dependency, need 'libcryptsetup' ['>= 2.0.0'] found '1.6.6'.

I'm not sure what causes that (maybe the clang version, which is 6.0.1 in the first half, yet 10.0.0 in the second one, or it's something completely different).

Also, would it be possible to bump the whole fuzzit-related infrastructure to Ubuntu Bionic (18.x)? From a quick peek at the Azure documentation the vmImage: 'ubuntu-latest' directive should already point to Ubuntu 18.x, but it still uses Xenial repos, so again, I'm quite confused.

@evverx

This comment has been minimized.

Copy link
Member

evverx commented Nov 21, 2019

@mrc0mmand as far as I can remember, on Azure Pipelines in addition to usual local builds the fuzzers are built with fuzzbuzz and infra/helper.py (provided by OSS-Fuzz). Both fuzzbuzz and infra/helper.py pull Xenial images (using docker) to create the build environment so I don't think Ubuntu Bionic running on VMs where Xenial containers are launched would help there. I'll take a closer look later this week.

In the meantime, could you temporarily turn on TEST-*-HOMED under ASan+UBsan on CentOS CI so that the basic stuff could be covered before the PR got merged. Right now ASan is complaining about a memory leak somewhere in homectl:

^[[1m^[[31m==77==ERROR: LeakSanitizer: detected memory leaks^M
^[[1m^[[0m^M
^[[1m^[[34mDirect leak of 240 byte(s) in 1 object(s) allocated from:^M
^[[1m^[[0m    #0 0x7f052f696c58 in __interceptor_malloc (/usr/lib64/libasan.so.5+0x10dc58)^M
    #1 0x7f052e41653f in malloc_multiply ../src/basic/alloc-util.h:96^M
    #2 0x7f052e41c5d7 in json_variant_new_object ../src/shared/json.c:652^M
    #3 0x7f052e43105c in json_parse_internal ../src/shared/json.c:2901^M
    #4 0x7f052e4340dc in json_parse ../src/shared/json.c:3130^M
    #5 0x7f052e504373 in varlink_parse_message ../src/shared/varlink.c:580^M
    #6 0x7f052e507529 in varlink_process ../src/shared/varlink.c:930^M
    #7 0x7f052e5111e0 in defer_callback ../src/shared/varlink.c:1834^M
    #8 0x7f052e893cfd in source_dispatch ../src/libsystemd/sd-event/sd-event.c:2860^M
    #9 0x7f052e899fe2 in sd_event_dispatch ../src/libsystemd/sd-event/sd-event.c:3243^M
    #10 0x7f052e89b05b in sd_event_run ../src/libsystemd/sd-event/sd-event.c:3301^M
    #11 0x7f052e4f441e in userdb_process ../src/shared/userdb.c:555^M
    #12 0x7f052e4f739f in groupdb_by_gid ../src/shared/userdb.c:861^M
    #13 0x7f052e4cfccc in user_record_show ../src/shared/user-record-show.c:144^M
    #14 0x40e21b in dump_home_record ../src/home/homectl.c:489^M
    #15 0x40f438 in inspect_home ../src/home/homectl.c:613^M
    #16 0x7f052e51b406 in dispatch_verb ../src/shared/verbs.c:112^M
    #17 0x431961 in run ../src/home/homectl.c:3604^M
    #18 0x431995 in main ../src/home/homectl.c:3607^M
    #19 0x7f052cbadf42 in __libc_start_main (/usr/lib64/libc.so.6+0x23f42)^M
^M
^[[1m^[[34mIndirect leak of 1008 byte(s) in 5 object(s) allocated from:^M
^[[1m^[[0m    #0 0x7f052f696c58 in __interceptor_malloc (/usr/lib64/libasan.so.5+0x10dc58)^M
    #1 0x7f052e41653f in malloc_multiply ../src/basic/alloc-util.h:96^M
    #2 0x7f052e41c5d7 in json_variant_new_object ../src/shared/json.c:652^M
    #3 0x7f052e43105c in json_parse_internal ../src/shared/json.c:2901^M
    #4 0x7f052e4340dc in json_parse ../src/shared/json.c:3130^M
    #5 0x7f052e504373 in varlink_parse_message ../src/shared/varlink.c:580^M
    #6 0x7f052e507529 in varlink_process ../src/shared/varlink.c:930^M
    #7 0x7f052e5111e0 in defer_callback ../src/shared/varlink.c:1834^M
    #8 0x7f052e893cfd in source_dispatch ../src/libsystemd/sd-event/sd-event.c:2860^M
    #9 0x7f052e899fe2 in sd_event_dispatch ../src/libsystemd/sd-event/sd-event.c:3243^M
    #10 0x7f052e89b05b in sd_event_run ../src/libsystemd/sd-event/sd-event.c:3301^M
    #11 0x7f052e4f441e in userdb_process ../src/shared/userdb.c:555^M
    #12 0x7f052e4f739f in groupdb_by_gid ../src/shared/userdb.c:861^M
    #13 0x7f052e4cfccc in user_record_show ../src/shared/user-record-show.c:144^M
    #14 0x40e21b in dump_home_record ../src/home/homectl.c:489^M
    #15 0x40f438 in inspect_home ../src/home/homectl.c:613^M
    #16 0x7f052e51b406 in dispatch_verb ../src/shared/verbs.c:112^M
    #17 0x431961 in run ../src/home/homectl.c:3604^M
    #18 0x431995 in main ../src/home/homectl.c:3607^M
    #19 0x7f052cbadf42 in __libc_start_main (/usr/lib64/libc.so.6+0x23f42)^M
^M

and systemd-homed is failing under UBSan:

systemd-homed[60]: ../src/home/homed-manager.c:475:30: runtime error: left shift of 8388615 by 8 places cannot be represented in type 'int'
systemd-homed[60]:     #0 0x446149 in search_quota ../src/home/homed-manager.c:475
systemd-homed[60]:     #1 0x44763a in manager_acquire_uid ../src/home/homed-manager.c:582
systemd-homed[60]:     #2 0x4493e3 in manager_augment_record_with_uid ../src/home/homed-manager.c:712
systemd-homed[60]:     #3 0x43c24a in validate_and_allocate_home ../src/home/homed-manager-bus.c:377
systemd-homed[60]:     #4 0x43cb6e in method_create_home ../src/home/homed-manager-bus.c:469
systemd-homed[60]:     #5 0x7fc7b288d0e8 in method_callbacks_run ../src/libsystemd/sd-bus/bus-objects.c:409
systemd-homed[60]:     #6 0x7fc7b2896e0a in object_find_and_run ../src/libsystemd/sd-bus/bus-objects.c:1332
systemd-homed[60]:     #7 0x7fc7b28984b7 in bus_process_object ../src/libsystemd/sd-bus/bus-objects.c:1452
systemd-homed[60]:     #8 0x7fc7b28f5222 in process_message ../src/libsystemd/sd-bus/sd-bus.c:2763
systemd-homed[60]:     #9 0x7fc7b28f57ab in process_running ../src/libsystemd/sd-bus/sd-bus.c:2805
systemd-homed[60]:     #10 0x7fc7b28f860a in bus_process_internal ../src/libsystemd/sd-bus/sd-bus.c:3025
systemd-homed[60]:     #11 0x7fc7b28f87cf in sd_bus_process ../src/libsystemd/sd-bus/sd-bus.c:3052
systemd-homed[60]:     #12 0x7fc7b28fc1ad in io_callback ../src/libsystemd/sd-bus/sd-bus.c:3404
systemd-homed[60]:     #13 0x7fc7b29eb552 in source_dispatch ../src/libsystemd/sd-event/sd-event.c:2830
systemd-homed[60]:     #14 0x7fc7b29f1fe2 in sd_event_dispatch ../src/libsystemd/sd-event/sd-event.c:3243
systemd-homed[60]:     #15 0x7fc7b29f305b in sd_event_run ../src/libsystemd/sd-event/sd-event.c:3301
systemd-homed[60]:     #16 0x7fc7b29f341d in sd_event_loop ../src/libsystemd/sd-event/sd-event.c:3323
systemd-homed[60]:     #17 0x45e533 in run ../src/home/homed.c:39
systemd-homed[60]:     #18 0x45e711 in main ../src/home/homed.c:46
systemd-homed[60]:     #19 0x7fc7b0d05f42 in __libc_start_main (/usr/lib64/libc.so.6+0x23f42)
systemd-homed[60]:     #20 0x4087cd in _start (/usr/lib/systemd/systemd-homed+0x4087cd)
systemd-homed[60]: SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior ../src/home/homed-manager.c:475:30 in
systemd-homed[60]: ../src/home/homed-home.c:2056:30: runtime error: left shift of 8388615 by 8 places cannot be represented in type 'int'
systemd-homed[60]:     #0 0x42eb18 in home_get_disk_status_directory ../src/home/homed-home.c:2056
systemd-homed[60]:     #1 0x42fba9 in home_augment_status ../src/home/homed-home.c:2149
systemd-homed[60]:     #2 0x40be4f in bus_home_get_record_json ../src/home/homed-home-bus.c:104
systemd-homed[60]:     #3 0x43a7a3 in method_get_user_record_by_name ../src/home/homed-manager-bus.c:222
systemd-homed[60]:     #4 0x7fc7b288d0e8 in method_callbacks_run ../src/libsystemd/sd-bus/bus-objects.c:409
systemd-homed[60]:     #5 0x7fc7b2896e0a in object_find_and_run ../src/libsystemd/sd-bus/bus-objects.c:1332
systemd-homed[60]:     #6 0x7fc7b28984b7 in bus_process_object ../src/libsystemd/sd-bus/bus-objects.c:1452
systemd-homed[60]:     #7 0x7fc7b28f5222 in process_message ../src/libsystemd/sd-bus/sd-bus.c:2763
systemd-homed[60]:     #8 0x7fc7b28f57ab in process_running ../src/libsystemd/sd-bus/sd-bus.c:2805
systemd-homed[60]:     #9 0x7fc7b28f860a in bus_process_internal ../src/libsystemd/sd-bus/sd-bus.c:3025
systemd-homed[60]:     #10 0x7fc7b28f87cf in sd_bus_process ../src/libsystemd/sd-bus/sd-bus.c:3052
systemd-homed[60]:     #11 0x7fc7b28fc1ad in io_callback ../src/libsystemd/sd-bus/sd-bus.c:3404
systemd-homed[60]:     #12 0x7fc7b29eb552 in source_dispatch ../src/libsystemd/sd-event/sd-event.c:2830
systemd-homed[60]:     #13 0x7fc7b29f1fe2 in sd_event_dispatch ../src/libsystemd/sd-event/sd-event.c:3243
systemd-homed[60]:     #14 0x7fc7b29f305b in sd_event_run ../src/libsystemd/sd-event/sd-event.c:3301
systemd-homed[60]:     #15 0x7fc7b29f341d in sd_event_loop ../src/libsystemd/sd-event/sd-event.c:3323
systemd-homed[60]:     #16 0x45e533 in run ../src/home/homed.c:39
systemd-homed[60]:     #17 0x45e711 in main ../src/home/homed.c:46
systemd-homed[60]:     #18 0x7fc7b0d05f42 in __libc_start_main (/usr/lib64/libc.so.6+0x23f42)
systemd-homed[60]:     #19 0x4087cd in _start (/usr/lib/systemd/systemd-homed+0x4087cd)
systemd-homed[60]: SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior ../src/home/homed-home.c:2056:30 in
@lgtm-com

This comment has been minimized.

Copy link

lgtm-com bot commented Nov 22, 2019

This pull request introduces 3 alerts when merging 53e474a into bdf2357 - view on LGTM.com

new alerts:

  • 2 for Use of potentially dangerous function
  • 1 for FIXME comment
@poettering poettering force-pushed the poettering:homed branch from 4f782d9 to f07855a Jan 20, 2020
@lgtm-com

This comment has been minimized.

Copy link

lgtm-com bot commented Jan 20, 2020

This pull request introduces 1 alert when merging f07855a into 5608deb - view on LGTM.com

new alerts:

  • 1 for FIXME comment
@poettering poettering added this to the v245 milestone Jan 21, 2020
@poettering poettering force-pushed the poettering:homed branch 2 times, most recently from d0a1997 to 65f8733 Jan 23, 2020
@lgtm-com

This comment has been minimized.

Copy link

lgtm-com bot commented Jan 23, 2020

This pull request introduces 1 alert when merging 65f8733 into e1d32d6 - view on LGTM.com

new alerts:

  • 1 for FIXME comment
@poettering poettering force-pushed the poettering:homed branch from 65f8733 to 6893197 Jan 26, 2020
@lgtm-com

This comment has been minimized.

Copy link

lgtm-com bot commented Jan 26, 2020

This pull request introduces 1 alert when merging 6893197 into 0de6103 - view on LGTM.com

new alerts:

  • 1 for FIXME comment
@poettering poettering force-pushed the poettering:homed branch from 6893197 to bf96976 Jan 28, 2020
@lgtm-com

This comment has been minimized.

Copy link

lgtm-com bot commented Jan 28, 2020

This pull request introduces 1 alert when merging bf96976 into 7d20404 - view on LGTM.com

new alerts:

  • 1 for FIXME comment
@poettering poettering force-pushed the poettering:homed branch from bf96976 to c809ed7 Jan 28, 2020
@lgtm-com

This comment has been minimized.

Copy link

lgtm-com bot commented Jan 28, 2020

This pull request introduces 1 alert when merging c809ed7 into 1ffadea - view on LGTM.com

new alerts:

  • 1 for FIXME comment
Copy link
Member

keszybz left a comment

OK, let's merge. I'm sure that there's still many tweaks to be done, but we can do that more effectively in-tree.

@@ -2034,6 +2062,35 @@ if conf.get('ENABLE_USERDB') == 1
install_dir : rootbindir)
endif

if conf.get('ENABLE_HOMED') == 1
executable('systemd-homework',

This comment has been minimized.

Copy link
@keszybz

keszybz Jan 30, 2020

Member

That's a funny name!

bool suitable_user_name(const char *name) {

/* Checks whether the specified name is suitable for management via homed. Note that our client side
* usually validate susing a simple valid_user_group_name(), while server side we are a bit more

This comment has been minimized.

Copy link
@keszybz

keszybz Jan 30, 2020

Member

Typo: susing.. Gramaer: client-side, server-side, etc.

@@ -1316,6 +1330,19 @@ else
endif
conf.set10('ENABLE_IMPORTD', have)

want_homed = get_option('homed')
if want_homed != 'false'

This comment has been minimized.

Copy link
@keszybz

keszybz Jan 30, 2020

Member

This doesn't work because the option is a boolean. I'll submit a patch for this after merging.

@keszybz keszybz merged commit 4119d1e into systemd:master Jan 30, 2020
14 checks passed
14 checks passed
CentOS CI (Arch in KVM with sanitizers) build passed (ping @mrc0mmand for any questions)
Details
CentOS CI (Arch in KVM) build passed (ping @mrc0mmand for any questions)
Details
CentOS CI (CentOS 7) build passed (ping @mrc0mmand for any questions)
Details
LGTM analysis: C/C++ 1 new alert
Details
LGTM analysis: JavaScript No new or fixed alerts
Details
LGTM analysis: Python No new or fixed alerts
Details
bionic-amd64 autopkgtest finished (success)
Details
bionic-arm64 autopkgtest finished (success)
Details
bionic-i386 autopkgtest finished (success)
Details
bionic-ppc64el autopkgtest finished (success)
Details
bionic-s390x autopkgtest finished (success)
Details
continuous-integration/travis-ci/pr The Travis CI build passed
Details
semaphoreci The build passed on Semaphore.
Details
systemd.systemd Build #20200128.34 succeeded
Details
@yuwata yuwata added the homed label Jan 30, 2020
Yamakuzure added a commit to elogind/elogind that referenced this pull request Feb 1, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.