Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
home:Ledest:erlang:20
erlang
0908-ssh-test-Handle-FIPS-disabled-algorithms-c...
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File 0908-ssh-test-Handle-FIPS-disabled-algorithms-correctly-f.patch of Package erlang
From 64269aa48b9425eb038da3ac3970bd040ed4053f Mon Sep 17 00:00:00 2001 From: Hans Nilsson <hans@erlang.org> Date: Thu, 14 Nov 2019 12:28:38 +0100 Subject: [PATCH 6/6] ssh/test: Handle FIPS disabled algorithms correctly for pass phrases --- lib/ssh/test/ssh_basic_SUITE.erl | 20 ++++++++++-------- lib/ssh/test/ssh_test_lib.erl | 44 +++++++++++++++++++++++++--------------- 2 files changed, 40 insertions(+), 24 deletions(-) diff --git a/lib/ssh/test/ssh_basic_SUITE.erl b/lib/ssh/test/ssh_basic_SUITE.erl index b165911db6..30d03f842f 100644 --- a/lib/ssh/test/ssh_basic_SUITE.erl +++ b/lib/ssh/test/ssh_basic_SUITE.erl @@ -255,23 +255,27 @@ init_per_group(ed448_key, Config) -> {skip, unsupported_pub_key} end; init_per_group(rsa_pass_key, Config) -> + DataDir = proplists:get_value(data_dir, Config), + PrivDir = proplists:get_value(priv_dir, Config), case lists:member('ssh-rsa', - ssh_transport:default_algorithms(public_key)) of + ssh_transport:default_algorithms(public_key)) + andalso + ssh_test_lib:setup_rsa_pass_phrase(DataDir, PrivDir, "Password") + of true -> - DataDir = proplists:get_value(data_dir, Config), - PrivDir = proplists:get_value(priv_dir, Config), - ssh_test_lib:setup_rsa_pass_phrase(DataDir, PrivDir, "Password"), [{pass_phrase, {rsa_pass_phrase, "Password"}}| Config]; false -> {skip, unsupported_pub_key} end; init_per_group(dsa_pass_key, Config) -> + DataDir = proplists:get_value(data_dir, Config), + PrivDir = proplists:get_value(priv_dir, Config), case lists:member('ssh-dss', - ssh_transport:default_algorithms(public_key)) of + ssh_transport:default_algorithms(public_key)) + andalso + ssh_test_lib:setup_dsa_pass_phrase(DataDir, PrivDir, "Password") + of true -> - DataDir = proplists:get_value(data_dir, Config), - PrivDir = proplists:get_value(priv_dir, Config), - ssh_test_lib:setup_dsa_pass_phrase(DataDir, PrivDir, "Password"), [{pass_phrase, {dsa_pass_phrase, "Password"}}| Config]; false -> {skip, unsupported_pub_key} diff --git a/lib/ssh/test/ssh_test_lib.erl b/lib/ssh/test/ssh_test_lib.erl index 47dad5b5d7..036820fa8d 100644 --- a/lib/ssh/test/ssh_test_lib.erl +++ b/lib/ssh/test/ssh_test_lib.erl @@ -452,24 +452,36 @@ clean_rsa(UserDir) -> file:delete(filename:join(UserDir,"authorized_keys")). setup_dsa_pass_phrase(DataDir, UserDir, Phrase) -> - {ok, KeyBin} = file:read_file(filename:join(DataDir, "id_dsa")), - setup_pass_phrase(KeyBin, filename:join(UserDir, "id_dsa"), Phrase), - System = filename:join(UserDir, "system"), - file:make_dir(System), - file:copy(filename:join(DataDir, "ssh_host_dsa_key"), filename:join(System, "ssh_host_dsa_key")), - file:copy(filename:join(DataDir, "ssh_host_dsa_key.pub"), filename:join(System, "ssh_host_dsa_key.pub")), - setup_dsa_known_host(DataDir, UserDir), - setup_dsa_auth_keys(DataDir, UserDir). + try + {ok, KeyBin} = file:read_file(filename:join(DataDir, "id_dsa")), + setup_pass_phrase(KeyBin, filename:join(UserDir, "id_dsa"), Phrase), + System = filename:join(UserDir, "system"), + file:make_dir(System), + file:copy(filename:join(DataDir, "ssh_host_dsa_key"), filename:join(System, "ssh_host_dsa_key")), + file:copy(filename:join(DataDir, "ssh_host_dsa_key.pub"), filename:join(System, "ssh_host_dsa_key.pub")), + setup_dsa_known_host(DataDir, UserDir), + setup_dsa_auth_keys(DataDir, UserDir) + of + _ -> true + catch + _:_ -> false + end. setup_rsa_pass_phrase(DataDir, UserDir, Phrase) -> - {ok, KeyBin} = file:read_file(filename:join(DataDir, "id_rsa")), - setup_pass_phrase(KeyBin, filename:join(UserDir, "id_rsa"), Phrase), - System = filename:join(UserDir, "system"), - file:make_dir(System), - file:copy(filename:join(DataDir, "ssh_host_rsa_key"), filename:join(System, "ssh_host_rsa_key")), - file:copy(filename:join(DataDir, "ssh_host_rsa_key.pub"), filename:join(System, "ssh_host_rsa_key.pub")), - setup_rsa_known_host(DataDir, UserDir), - setup_rsa_auth_keys(DataDir, UserDir). + try + {ok, KeyBin} = file:read_file(filename:join(DataDir, "id_rsa")), + setup_pass_phrase(KeyBin, filename:join(UserDir, "id_rsa"), Phrase), + System = filename:join(UserDir, "system"), + file:make_dir(System), + file:copy(filename:join(DataDir, "ssh_host_rsa_key"), filename:join(System, "ssh_host_rsa_key")), + file:copy(filename:join(DataDir, "ssh_host_rsa_key.pub"), filename:join(System, "ssh_host_rsa_key.pub")), + setup_rsa_known_host(DataDir, UserDir), + setup_rsa_auth_keys(DataDir, UserDir) + of + _ -> true + catch + _:_ -> false + end. setup_ecdsa_pass_phrase(Size, DataDir, UserDir, Phrase) -> try -- 2.16.4
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor