Provided by: erlang-manpages_20.2.2+dfsg-1ubuntu2_all bug

NAME

       ssh_server_key_api -
           -behaviour(ssh_server_key_api).

DESCRIPTION

       Behaviour  describing  the  API  for  public key handling of an SSH server. By implementing the callbacks
       defined in this behavior, the public key handling of an SSH server can be customized. By default the  SSH
       application implements this behavior with help of the standard OpenSSH files, see the  ssh(7) application
       manual.

DATA TYPES

       Type definitions that are used more than once in this module, or abstractions to  indicate  the  intended
       use  of  the data type, or both. For more details on public key data types, refer to Section 2 Public Key
       Records in the  public_key user's guide.

         boolean() =:
           true | false

         string() =:
           [byte()]

         public_key() =:
           #'RSAPublicKey'{} | {integer(),#'Dss-Parms'{}} | {#'ECPoint'{},{namedCurve,Curve::string()}}

         private_key() =:
           #'RSAPrivateKey'{} | #'DSAPrivateKey'{} | #'ECPrivateKey'{}

         public_key_algorithm() =:
           'ssh-rsa' | 'ssh-dss' | 'rsa-sha2-256' | 'rsa-sha2-384' | 'rsa-sha2-512'  |  'ecdsa-sha2-nistp256'  |
           'ecdsa-sha2-nistp384' | 'ecdsa-sha2-nistp521'

EXPORTS

       Module:host_key(Algorithm, DaemonOptions) -> {ok, Key} | {error, Reason}

              Types:

                 Algorithm = public_key_algorithm()
                   Host key algorithm.
                 DaemonOptions = proplists:proplist()
                   Options provided to ssh:daemon/[2,3]. The option list given in the key_cb option is available
                   with the key key_cb_private.
                 Key = private_key() | crypto:engine_key_ref()
                   Private key of the host matching the Algorithm. It may be a reference to  a  'ssh-rsa',  rsa-
                   sha2-* or 'ssh-dss' (NOT ecdsa) key stored in a loaded Engine.
                 Reason = term()

              Fetches the private key of the host.

       Module:is_auth_key(Key, User, DaemonOptions) -> Result

              Types:

                 Key = public_key()
                   Normally an RSA, DSA or ECDSA public key, but handling of other public keys can be added
                 User = string()
                   User owning the public key.
                 DaemonOptions = proplists:proplist()
                   Options provided to ssh:daemon/[2,3]. The option list given in the key_cb option is available
                   with the key key_cb_private.
                 Result = boolean()

              Checks if the user key is authorized.