qga/commands-common-ssh.c | 50 +++ qga/commands-common-ssh.h | 10 + qga/commands-posix-ssh.c | 47 +-- qga/commands-windows-ssh.c | 789 +++++++++++++++++++++++++++++++++++++ qga/commands-windows-ssh.h | 26 ++ qga/meson.build | 12 +- qga/qapi-schema.json | 17 +- 7 files changed, 893 insertions(+), 58 deletions(-) create mode 100644 qga/commands-common-ssh.c create mode 100644 qga/commands-common-ssh.h create mode 100644 qga/commands-windows-ssh.c create mode 100644 qga/commands-windows-ssh.h
Hello Konstantin, Is there anything you would like to see addresses in this patch before it merges? This patch has been up for a bit and there hasn't been any activity in a while. Our team is motivated to get this merged, so let me know if there is anything I can do on my end to make the review easier for you. I understand as a maintainer your position is voluntary and unpaid so if you just haven't had time to look it over and validate it, I completely understand. Thank you, Aidan Leuck -----Original Message----- From: aidan_leuck@selinc.com <aidan_leuck@selinc.com> Sent: Friday, March 29, 2024 9:32 AM To: qemu-devel@nongnu.org Cc: kkostiuk@redhat.com; philmd@linaro.org; Aidan Leuck <aidan_leuck@selinc.com> Subject: [PATCH v6 0/2] Implement SSH commands in QEMU GA for Windows From: aidaleuc <aidan_leuck@selinc.com> This patch aims to implement guest-ssh-add-authorized-keys, guest-ssh-remove-authorized-keys, and guest-ssh-get-authorized-keys for Windows. This PR is based on Microsoft's OpenSSH implementation https://github.com/PowerShell/Win32-OpenSSH. The guest agents will support Kubevirt and allow guest agent propagation to be used to dynamically inject SSH keys. https://kubevirt.io/user-guide/virtual_machines/accessing_virtual_machines/#dynamic-ssh-public-key-injection-via-qemu-guest-agent Changes since v5 * Fixed spurious formatting Changes since v4 * Moved qapi/error.h to commands-common-ssh.c * Changed <qga-qapi-types.h> to "qapi/qapi-builtin-types.h" * Removed stbool.h from commands-common-ssh.h Changes since v3 * Renamed commands-ssh-core.c/h to commands-common-ssh.c/h * Fixed styling errors discovered by checkpatch.pl * Moved some header includes to the commands-common-ssh.h Changes since v2 * Set indent to 4 spaces * Moved all comments to C style comments * Fixed a segfault bug in get_user_info function related to non zeroed memory when a user did not exist. * Used g_new0 instead of g_malloc where applicable * Modified newlines in qapi-schema.json * Added newlines at the end of all files * GError functions now use g_autoptr instead of being freed manually. * Refactored get_ssh_folder to remove goto error statement * Fixed uninitialized variable pgDataW * Modified patch order so that the generalization patch is the first patch * Removed unnecssary ZeroMemory calls Changes since v1 * Fixed styling errors * Moved from wcstombs to g_utf functions * Removed unnecessary if checks on calls to free * Fixed copyright headers * Refactored create_acl functions into base function, admin function and user function * Removed unused user count function * Split up refactor of existing code into a separate patch aidaleuc (2): Refactor common functions between POSIX and Windows implementation Implement SSH commands in QEMU GA for Windows qga/commands-common-ssh.c | 50 +++ qga/commands-common-ssh.h | 10 + qga/commands-posix-ssh.c | 47 +-- qga/commands-windows-ssh.c | 789 +++++++++++++++++++++++++++++++++++++ qga/commands-windows-ssh.h | 26 ++ qga/meson.build | 12 +- qga/qapi-schema.json | 17 +- 7 files changed, 893 insertions(+), 58 deletions(-) create mode 100644 qga/commands-common-ssh.c create mode 100644 qga/commands-common-ssh.h create mode 100644 qga/commands-windows-ssh.c create mode 100644 qga/commands-windows-ssh.h -- 2.34.1
Hi Aidan, Thank you for these patches. Currently, I don't have any comments. I asked QE from my team to test this patch and wait for feedback. Also, QEMU is in the code freeze stage now, so I plan to merge all QGA patches after release. Best Regards, Konstantin Kostiuk. On Tue, Apr 16, 2024 at 5:46 PM Aidan Leuck <aidan_leuck@selinc.com> wrote: > Hello Konstantin, > > Is there anything you would like to see addresses in this patch before it > merges? This patch has been up for a bit and there hasn't been any activity > in a while. Our team is motivated to get this merged, so let me know if > there is anything I can do on my end to make the review easier for you. I > understand as a maintainer your position is voluntary and unpaid so if you > just haven't had time to look it over and validate it, I completely > understand. > > Thank you, > Aidan Leuck > > -----Original Message----- > From: aidan_leuck@selinc.com <aidan_leuck@selinc.com> > Sent: Friday, March 29, 2024 9:32 AM > To: qemu-devel@nongnu.org > Cc: kkostiuk@redhat.com; philmd@linaro.org; Aidan Leuck < > aidan_leuck@selinc.com> > Subject: [PATCH v6 0/2] Implement SSH commands in QEMU GA for Windows > > From: aidaleuc <aidan_leuck@selinc.com> > > This patch aims to implement guest-ssh-add-authorized-keys, > guest-ssh-remove-authorized-keys, and guest-ssh-get-authorized-keys for > Windows. This PR is based on Microsoft's OpenSSH implementation > https://github.com/PowerShell/Win32-OpenSSH. The guest agents will > support Kubevirt and allow guest agent propagation to be used to > dynamically inject SSH keys. > > https://kubevirt.io/user-guide/virtual_machines/accessing_virtual_machines/#dynamic-ssh-public-key-injection-via-qemu-guest-agent > > Changes since v5 > * Fixed spurious formatting > > Changes since v4 > * Moved qapi/error.h to commands-common-ssh.c > * Changed <qga-qapi-types.h> to "qapi/qapi-builtin-types.h" > * Removed stbool.h from commands-common-ssh.h > > Changes since v3 > * Renamed commands-ssh-core.c/h to commands-common-ssh.c/h > * Fixed styling errors discovered by checkpatch.pl > * Moved some header includes to the commands-common-ssh.h > > Changes since v2 > * Set indent to 4 spaces > * Moved all comments to C style comments > * Fixed a segfault bug in get_user_info function related to non zeroed > memory when a user did not exist. > * Used g_new0 instead of g_malloc where applicable > * Modified newlines in qapi-schema.json > * Added newlines at the end of all files > * GError functions now use g_autoptr instead of being freed manually. > * Refactored get_ssh_folder to remove goto error statement > * Fixed uninitialized variable pgDataW > * Modified patch order so that the generalization patch is the first patch > * Removed unnecssary ZeroMemory calls > > Changes since v1 > * Fixed styling errors > * Moved from wcstombs to g_utf functions > * Removed unnecessary if checks on calls to free > * Fixed copyright headers > * Refactored create_acl functions into base function, admin function and > user function > * Removed unused user count function > * Split up refactor of existing code into a separate patch > > aidaleuc (2): > Refactor common functions between POSIX and Windows implementation > Implement SSH commands in QEMU GA for Windows > > qga/commands-common-ssh.c | 50 +++ > qga/commands-common-ssh.h | 10 + > qga/commands-posix-ssh.c | 47 +-- > qga/commands-windows-ssh.c | 789 +++++++++++++++++++++++++++++++++++++ > qga/commands-windows-ssh.h | 26 ++ > qga/meson.build | 12 +- > qga/qapi-schema.json | 17 +- > 7 files changed, 893 insertions(+), 58 deletions(-) create mode 100644 > qga/commands-common-ssh.c create mode 100644 qga/commands-common-ssh.h > create mode 100644 qga/commands-windows-ssh.c create mode 100644 > qga/commands-windows-ssh.h > > -- > 2.34.1 > >
Hi Konstantin, Thank you for the quick response. I didn’t realize the QEMU was in a code freeze, thank you for letting me know. Let me know if you find any defects in the patch and I will fix them promptly. Aidan Leuck From: Konstantin Kostiuk <kkostiuk@redhat.com> Sent: Wednesday, April 17, 2024 10:33 AM To: Aidan Leuck <aidan_leuck@selinc.com> Cc: qemu-devel@nongnu.org; philmd@linaro.org Subject: Re: [PATCH v6 0/2] Implement SSH commands in QEMU GA for Windows [Caution - External] Hi Aidan, Thank you for these patches. Currently, I don't have any comments. I asked QE from my team to test this patch and wait for feedback. Also, QEMU is in the code freeze stage now, so I plan to merge all QGA patches after release. Best Regards, Konstantin Kostiuk. On Tue, Apr 16, 2024 at 5:46 PM Aidan Leuck <aidan_leuck@selinc.com<mailto:aidan_leuck@selinc.com>> wrote: Hello Konstantin, Is there anything you would like to see addresses in this patch before it merges? This patch has been up for a bit and there hasn't been any activity in a while. Our team is motivated to get this merged, so let me know if there is anything I can do on my end to make the review easier for you. I understand as a maintainer your position is voluntary and unpaid so if you just haven't had time to look it over and validate it, I completely understand. Thank you, Aidan Leuck -----Original Message----- From: aidan_leuck@selinc.com<mailto:aidan_leuck@selinc.com> <aidan_leuck@selinc.com<mailto:aidan_leuck@selinc.com>> Sent: Friday, March 29, 2024 9:32 AM To: qemu-devel@nongnu.org<mailto:qemu-devel@nongnu.org> Cc: kkostiuk@redhat.com<mailto:kkostiuk@redhat.com>; philmd@linaro.org<mailto:philmd@linaro.org>; Aidan Leuck <aidan_leuck@selinc.com<mailto:aidan_leuck@selinc.com>> Subject: [PATCH v6 0/2] Implement SSH commands in QEMU GA for Windows From: aidaleuc <aidan_leuck@selinc.com<mailto:aidan_leuck@selinc.com>> This patch aims to implement guest-ssh-add-authorized-keys, guest-ssh-remove-authorized-keys, and guest-ssh-get-authorized-keys for Windows. This PR is based on Microsoft's OpenSSH implementation https://github.com/PowerShell/Win32-OpenSSH [github.com]<https://urldefense.com/v3/__https:/github.com/PowerShell/Win32-OpenSSH__;!!O7uE89YCNVw!OtAz8IOcaKX6FC4kqD0qGgiKokfHlyEGjGWl5enCkQcfU4aDtP4YC4sFPy3W0hTOvg1t7eOVMcJtx7GLhZk$>. The guest agents will support Kubevirt and allow guest agent propagation to be used to dynamically inject SSH keys. https://kubevirt.io/user-guide/virtual_machines/accessing_virtual_machines/#dynamic-ssh-public-key-injection-via-qemu-guest-agent [kubevirt.io]<https://urldefense.com/v3/__https:/kubevirt.io/user-guide/virtual_machines/accessing_virtual_machines/*dynamic-ssh-public-key-injection-via-qemu-guest-agent__;Iw!!O7uE89YCNVw!OtAz8IOcaKX6FC4kqD0qGgiKokfHlyEGjGWl5enCkQcfU4aDtP4YC4sFPy3W0hTOvg1t7eOVMcJtGQmdmLI$> Changes since v5 * Fixed spurious formatting Changes since v4 * Moved qapi/error.h to commands-common-ssh.c * Changed <qga-qapi-types.h> to "qapi/qapi-builtin-types.h" * Removed stbool.h from commands-common-ssh.h Changes since v3 * Renamed commands-ssh-core.c/h to commands-common-ssh.c/h * Fixed styling errors discovered by checkpatch.pl [checkpatch.pl]<https://urldefense.com/v3/__http:/checkpatch.pl__;!!O7uE89YCNVw!OtAz8IOcaKX6FC4kqD0qGgiKokfHlyEGjGWl5enCkQcfU4aDtP4YC4sFPy3W0hTOvg1t7eOVMcJtHKff5AQ$> * Moved some header includes to the commands-common-ssh.h Changes since v2 * Set indent to 4 spaces * Moved all comments to C style comments * Fixed a segfault bug in get_user_info function related to non zeroed memory when a user did not exist. * Used g_new0 instead of g_malloc where applicable * Modified newlines in qapi-schema.json * Added newlines at the end of all files * GError functions now use g_autoptr instead of being freed manually. * Refactored get_ssh_folder to remove goto error statement * Fixed uninitialized variable pgDataW * Modified patch order so that the generalization patch is the first patch * Removed unnecssary ZeroMemory calls Changes since v1 * Fixed styling errors * Moved from wcstombs to g_utf functions * Removed unnecessary if checks on calls to free * Fixed copyright headers * Refactored create_acl functions into base function, admin function and user function * Removed unused user count function * Split up refactor of existing code into a separate patch aidaleuc (2): Refactor common functions between POSIX and Windows implementation Implement SSH commands in QEMU GA for Windows qga/commands-common-ssh.c | 50 +++ qga/commands-common-ssh.h | 10 + qga/commands-posix-ssh.c | 47 +-- qga/commands-windows-ssh.c | 789 +++++++++++++++++++++++++++++++++++++ qga/commands-windows-ssh.h | 26 ++ qga/meson.build | 12 +- qga/qapi-schema.json | 17 +- 7 files changed, 893 insertions(+), 58 deletions(-) create mode 100644 qga/commands-common-ssh.c create mode 100644 qga/commands-common-ssh.h create mode 100644 qga/commands-windows-ssh.c create mode 100644 qga/commands-windows-ssh.h -- 2.34.1
© 2016 - 2024 Red Hat, Inc.