From 144128d317029e6890694cc327aa6416b81ae64b Mon Sep 17 00:00:00 2001 From: Ivan Kruglov Date: Tue, 24 Sep 2024 10:21:46 +0200 Subject: [PATCH] machine: extend io.systemd.Machine.List output with sshPrivateKeyPath field Effectivelly, this is an implementation of GetMachineSSHInfo in dbus. --- src/machine/machined-varlink.c | 3 ++- src/shared/varlink-io.systemd.Machine.c | 4 +++- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/src/machine/machined-varlink.c b/src/machine/machined-varlink.c index 6011780b6ff..61000241741 100644 --- a/src/machine/machined-varlink.c +++ b/src/machine/machined-varlink.c @@ -406,7 +406,8 @@ static int list_machine_one(sd_varlink *link, Machine *m, bool more) { SD_JSON_BUILD_PAIR_CONDITION(pidref_is_set(&m->leader), "leader", SD_JSON_BUILD_UNSIGNED(m->leader.pid)), SD_JSON_BUILD_PAIR_CONDITION(dual_timestamp_is_set(&m->timestamp), "timestamp", JSON_BUILD_DUAL_TIMESTAMP(&m->timestamp)), SD_JSON_BUILD_PAIR_CONDITION(m->vsock_cid != VMADDR_CID_ANY, "vSockCid", SD_JSON_BUILD_UNSIGNED(m->vsock_cid)), - JSON_BUILD_PAIR_STRING_NON_EMPTY("sshAddress", m->ssh_address)); + JSON_BUILD_PAIR_STRING_NON_EMPTY("sshAddress", m->ssh_address), + JSON_BUILD_PAIR_STRING_NON_EMPTY("sshPrivateKeyPath", m->ssh_private_key_path)); if (r < 0) return r; diff --git a/src/shared/varlink-io.systemd.Machine.c b/src/shared/varlink-io.systemd.Machine.c index dfcf210b8a2..7a18f34df16 100644 --- a/src/shared/varlink-io.systemd.Machine.c +++ b/src/shared/varlink-io.systemd.Machine.c @@ -73,7 +73,9 @@ static SD_VARLINK_DEFINE_METHOD_FULL( SD_VARLINK_FIELD_COMMENT("AF_VSOCK CID of the machine if known and applicable"), SD_VARLINK_DEFINE_OUTPUT(vSockCid, SD_VARLINK_INT, SD_VARLINK_NULLABLE), SD_VARLINK_FIELD_COMMENT("SSH address to connect to"), - SD_VARLINK_DEFINE_OUTPUT(sshAddress, SD_VARLINK_STRING, SD_VARLINK_NULLABLE)); + SD_VARLINK_DEFINE_OUTPUT(sshAddress, SD_VARLINK_STRING, SD_VARLINK_NULLABLE), + SD_VARLINK_FIELD_COMMENT("Path to private SSH key"), + SD_VARLINK_DEFINE_OUTPUT(sshPrivateKeyPath, SD_VARLINK_STRING, SD_VARLINK_NULLABLE)); static SD_VARLINK_DEFINE_ERROR(NoSuchMachine); static SD_VARLINK_DEFINE_ERROR(MachineExists); -- 2.47.3