From cb869969d1169effdef5ca2438fb3ea0fc5e0666 Mon Sep 17 00:00:00 2001 From: Lennart Poettering Date: Thu, 23 May 2024 23:34:39 +0200 Subject: [PATCH] machined: initialize CID of '.host' pseudo-machine to 1 (i.e. the loopback vsock address) --- src/machine/machined.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/machine/machined.c b/src/machine/machined.c index 398375bc5e2..60badbf5d07 100644 --- a/src/machine/machined.c +++ b/src/machine/machined.c @@ -26,6 +26,7 @@ #include "process-util.h" #include "service-util.h" #include "signal-util.h" +#include "socket-util.h" #include "special.h" static Manager* manager_unref(Manager *m); @@ -143,6 +144,11 @@ static int manager_add_host_machine(Manager *m) { t->leader = TAKE_PIDREF(pidref); t->id = mid; + /* If vsock is available, let's expose the loopback CID for the local host (and not the actual local + * CID, in order to return a ideally constant record for the host) */ + if (vsock_get_local_cid(/* ret= */ NULL) >= 0) + t->vsock_cid = VMADDR_CID_LOCAL; + t->root_directory = TAKE_PTR(rd); t->unit = TAKE_PTR(unit); -- 2.47.3