diff options
author | Hans Nilsson <[email protected]> | 2017-05-10 15:27:30 +0200 |
---|---|---|
committer | Hans Nilsson <[email protected]> | 2017-05-17 15:18:46 +0200 |
commit | 0df70c244df12c0a0678b04401e891e4683d7f69 (patch) | |
tree | b43a007cf35b36252c8a797b221047bcf66d7802 /lib | |
parent | 48a3dc284f0f214ffda9e32a9ef2282cace0e80b (diff) | |
download | otp-0df70c244df12c0a0678b04401e891e4683d7f69.tar.gz otp-0df70c244df12c0a0678b04401e891e4683d7f69.tar.bz2 otp-0df70c244df12c0a0678b04401e891e4683d7f69.zip |
ssh: update property test for sign-algorithm
Diffstat (limited to 'lib')
-rw-r--r-- | lib/ssh/test/property_test/ssh_eqc_encode_decode.erl | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/lib/ssh/test/property_test/ssh_eqc_encode_decode.erl b/lib/ssh/test/property_test/ssh_eqc_encode_decode.erl index 410a9ea983..0995182623 100644 --- a/lib/ssh/test/property_test/ssh_eqc_encode_decode.erl +++ b/lib/ssh/test/property_test/ssh_eqc_encode_decode.erl @@ -284,8 +284,18 @@ fix_asym(#ssh_msg_global_request{name=N} = M) -> M#ssh_msg_global_request{name = fix_asym(#ssh_msg_debug{message=D,language=L} = M) -> M#ssh_msg_debug{message = binary_to_list(D), language = binary_to_list(L)}; fix_asym(#ssh_msg_kexinit{cookie=C} = M) -> M#ssh_msg_kexinit{cookie = <<C:128>>}; + +fix_asym(#ssh_msg_kexdh_reply{public_host_key = Key} = M) -> M#ssh_msg_kexdh_reply{public_host_key = key_sigalg(Key)}; +fix_asym(#ssh_msg_kex_dh_gex_reply{public_host_key = Key} = M) -> M#ssh_msg_kex_dh_gex_reply{public_host_key = key_sigalg(Key)}; +fix_asym(#ssh_msg_kex_ecdh_reply{public_host_key = Key} = M) -> M#ssh_msg_kex_ecdh_reply{public_host_key = key_sigalg(Key)}; + fix_asym(M) -> M. +%%% Keys now contains an sig-algorithm name +key_sigalg(#'RSAPublicKey'{} = Key) -> {Key,'ssh-rsa'}; +key_sigalg({_, #'Dss-Parms'{}} = Key) -> {Key,'ssh-dss'}; +key_sigalg({#'ECPoint'{}, {namedCurve,OID}} = Key) -> {Key,"ecdsa-sha2-256"}. + %%% Message codes 30 and 31 are overloaded depending on kex family so arrange the decoder %%% input as the test object does decode_state(<<30,_/binary>>=Msg, KexFam) -> <<KexFam/binary, Msg/binary>>; |