aboutsummaryrefslogtreecommitdiffstats
path: root/lib/ssh/src/ssh_client_key_api.erl
diff options
context:
space:
mode:
authorHans Nilsson <[email protected]>2016-06-01 11:45:22 +0200
committerHans Nilsson <[email protected]>2016-06-01 11:45:22 +0200
commitb2cefac14a6b26c78f584592801413611ff6f31c (patch)
treead701defc29f4f9010c9cca0b8c51fd308f6a40d /lib/ssh/src/ssh_client_key_api.erl
parent8e3eb916b34faf85b272031930be455163b49abf (diff)
parentf5e152a96c5ad957f3732a3f0cee09034c7c727d (diff)
downloadotp-b2cefac14a6b26c78f584592801413611ff6f31c.tar.gz
otp-b2cefac14a6b26c78f584592801413611ff6f31c.tar.bz2
otp-b2cefac14a6b26c78f584592801413611ff6f31c.zip
Merge branch 'hans/ssh/spec_behaviours/OTP-13749'
Diffstat (limited to 'lib/ssh/src/ssh_client_key_api.erl')
-rw-r--r--lib/ssh/src/ssh_client_key_api.erl24
1 files changed, 18 insertions, 6 deletions
diff --git a/lib/ssh/src/ssh_client_key_api.erl b/lib/ssh/src/ssh_client_key_api.erl
index 039a7dea9b..6e994ff292 100644
--- a/lib/ssh/src/ssh_client_key_api.erl
+++ b/lib/ssh/src/ssh_client_key_api.erl
@@ -23,14 +23,26 @@
-include_lib("public_key/include/public_key.hrl").
-include("ssh.hrl").
--callback is_host_key(PublicKey :: #'RSAPublicKey'{}| {integer(), #'Dss-Parms'{}}| term() , Host :: string(),
- Algorithm :: 'ssh-rsa'| 'ssh-dss'| atom(), ConnectOptions :: proplists:proplist()) ->
+-export_type([algorithm/0]).
+
+-type algorithm() :: 'ssh-rsa'
+ | 'ssh-dss'
+ | 'ecdsa-sha2-nistp256'
+ | 'ecdsa-sha2-nistp384'
+ | 'ecdsa-sha2-nistp521'
+ .
+
+-callback is_host_key(PublicKey :: public_key:public_key(),
+ Host :: string(),
+ Algorithm :: algorithm(),
+ ConnectOptions :: proplists:proplist()) ->
boolean().
--callback user_key(Algorithm :: 'ssh-rsa'| 'ssh-dss'| atom(), ConnectOptions :: proplists:proplist()) ->
- {ok, PrivateKey :: #'RSAPrivateKey'{}| #'DSAPrivateKey'{} | term()} | {error, string()}.
+-callback user_key(Algorithm :: algorithm(),
+ ConnectOptions :: proplists:proplist()) ->
+ {ok, PrivateKey::public_key:private_key()} | {error, term()}.
--callback add_host_key(Host :: string(), PublicKey :: #'RSAPublicKey'{}| {integer(), #'Dss-Parms'{}}| term(),
- Options :: list()) ->
+-callback add_host_key(Host :: string(), PublicKey :: public_key:public_key(),
+ Options :: proplists:proplist()) ->
ok | {error, Error::term()}.