Hello libssh developers, My name is Adithya Pawar, and I am interested in participating in Google Summer of Code 2026 with libssh.
I have already started contributing to libssh and submitted a merge request related to the SSH agent work: - Implement standalone ssh_agent_session API (issue #347) Through this work, I explored the current limitation where SSH agent interaction is only available internally via ssh_userauth_agent(), and I understand the motivation for exposing a public API to make agent functionality usable beyond authentication. I am particularly interested in the project “Design and implement API to communicate with SSH-Agent,” as it directly aligns with my current contributions. >From my understanding, the key goals of this project include: - Designing a clean and extensible API for agent interaction - Supporting operations such as listing, adding, and removing keys - Returning opaque ssh_key structures that delegate operations to the agent - Enabling use cases like signing data (e.g., sshsig) and server-side usage - Maintaining backward compatibility with existing authentication mechanisms In my current MR, I attempted to: - Decouple agent handling from ssh_session - Introduce a standalone ssh_agent_session abstraction - Implement basic communication with the agent over UNIX domain sockets - Provide APIs for identity management (list/add/remove) I would really appreciate feedback on: - Whether my current design direction aligns with the expected architecture for this project - Improvements needed in API design and abstraction - Additional features or use cases that should be considered early - How I can evolve this work into a strong GSoC proposal I am also going through the SSH agent protocol draft (IETF SSH Agent Protocol Draft) to better understand protocol-level details and ensure correctness. I will continue improving my current merge request based on review feedback and would be happy to take on additional related issues. Looking forward to your guidance. Best regards, Adithya Pawar
