Adding New Authentication Methods
This sections covers advanced implementation of keyboard-interactive.
Please note that SSH Communications Security does not provide technical support
on how to implement your own keyboard-interactive submethod. Also, consider
carefully the security implications when implementing a submethod of your own.
New submethods are added to the submethods array in
apps/ssh/auths-kbd-int-submethods.c. You need to
create an initialization and uninitialization function for the
submethod. The initialization function will create a method
context for the submethod, and start the authentication, using
the specified conversation function.
You need to define three functions: init,
free and a callback for the conversation
function.
Please see auths-kbd-int-submethods.c for an example
of using a 'password' submethod. This submethod is implemented
in auths-kbd-int-passwd.[ch].
Please follow the style of those files when creating new
submethods. Complete documentation for the API is located in
apps/ssh/auths-kbd-int-submethods.h.