]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
login: add missing NoSessionPIDFD error to io.systemd.Login IDL 40857/head
authornoxiouz <atiurin@proton.me>
Mon, 2 Mar 2026 10:04:48 +0000 (10:04 +0000)
committernoxiouz <atiurin@proton.me>
Mon, 2 Mar 2026 10:08:57 +0000 (10:08 +0000)
The error is emitted by vl_method_create_session() when the session leader
process does not have a pidfd available, but was never declared in the IDL.

Fixes: 3180c4d46151673a9c985e60f205d4c76a81573f
src/shared/varlink-io.systemd.Login.c

index cf09d18286679684720c16c9e45edfdaffe30f4c..9a07155ef20cab0fbcd04b79ced13af54fe760fc 100644 (file)
@@ -94,6 +94,7 @@ static SD_VARLINK_DEFINE_ERROR(AlreadySessionMember);
 static SD_VARLINK_DEFINE_ERROR(VirtualTerminalAlreadyTaken);
 static SD_VARLINK_DEFINE_ERROR(TooManySessions);
 static SD_VARLINK_DEFINE_ERROR(UnitAllocationFailed);
+static SD_VARLINK_DEFINE_ERROR(NoSessionPIDFD);
 
 SD_VARLINK_DEFINE_INTERFACE(
                 io_systemd_Login,
@@ -120,4 +121,6 @@ SD_VARLINK_DEFINE_INTERFACE(
                 SD_VARLINK_SYMBOL_COMMENT("Maximum number of sessions reached"),
                 &vl_error_TooManySessions,
                 SD_VARLINK_SYMBOL_COMMENT("Failed to allocate a unit for the session"),
-                &vl_error_UnitAllocationFailed);
+                &vl_error_UnitAllocationFailed,
+                SD_VARLINK_SYMBOL_COMMENT("The session leader process does not have a pidfd"),
+                &vl_error_NoSessionPIDFD);