Hi all,

I am trying to port https://git.sr.ht/~runxiyu/forge from Go to C
because of garbage collection issues and other reasons. I'm considering
using libssh for the SSH server, but I'm not sure if it'll work for my
use-case.

I currently use gliderlabs's SSH server in Go like this

        PublicKeyHandler:           func(ctx glider_ssh.Context, key 
glider_ssh.PublicKey) bool { return true },
        KeyboardInteractiveHandler: func(ctx glider_ssh.Context, challenge 
go_ssh.KeyboardInteractiveChallenge) bool { return true },

Essentially, I want to accept all connections; but by setting up both a
public key handler and a keyboard interactive handler, effectively I can
let all users log in without any auth, and get their public key if they
have one, and let them in anonymously if they don't.

Is this possible with libssh? I think it's possible with
ssh_message_auth_publickey_state, but that seems to be deprecated in
favor of the callback-based API, which doesn't seem to support
keyboard-interactive.

--
Thanks,

Runxi Yu (they/them)
Y11 Student
E306, E House
Songjiang Campus
YK Pao School


Reply via email to