From 26e3b024571952284e026a4f8d3ef55777dc4386 Mon Sep 17 00:00:00 2001 From: Niclas Eklund Date: Mon, 16 May 2011 15:25:03 +0200 Subject: Generic key management for test suites. --- lib/ssh/test/Makefile | 10 ---- lib/ssh/test/ssh_basic_SUITE.erl | 4 +- lib/ssh/test/ssh_basic_SUITE_data/ssh_host_dsa_key | 12 ---- .../test/ssh_basic_SUITE_data/ssh_host_dsa_key.pub | 1 - lib/ssh/test/ssh_host_dsa_key | 12 ---- lib/ssh/test/ssh_host_dsa_key.pub | 1 - lib/ssh/test/ssh_sftp_SUITE.erl | 5 +- lib/ssh/test/ssh_sftp_SUITE_data/ssh_host_dsa_key | 12 ---- .../test/ssh_sftp_SUITE_data/ssh_host_dsa_key.pub | 1 - lib/ssh/test/ssh_sftpd_SUITE.erl | 13 ++-- lib/ssh/test/ssh_sftpd_SUITE_data/ssh_host_dsa_key | 12 ---- .../test/ssh_sftpd_SUITE_data/ssh_host_dsa_key.pub | 1 - lib/ssh/test/ssh_sftpd_erlclient_SUITE.erl | 2 +- .../ssh_host_dsa_key | 12 ---- .../ssh_host_dsa_key.pub | 1 - lib/ssh/test/ssh_test_lib.erl | 69 +++++++++++++--------- lib/ssh/test/ssh_to_openssh_SUITE.erl | 2 +- .../ssh_to_openssh_SUITE_data/ssh_host_dsa_key | 12 ---- .../ssh_to_openssh_SUITE_data/ssh_host_dsa_key.pub | 1 - 19 files changed, 55 insertions(+), 128 deletions(-) delete mode 100644 lib/ssh/test/ssh_basic_SUITE_data/ssh_host_dsa_key delete mode 100644 lib/ssh/test/ssh_basic_SUITE_data/ssh_host_dsa_key.pub delete mode 100644 lib/ssh/test/ssh_host_dsa_key delete mode 100644 lib/ssh/test/ssh_host_dsa_key.pub delete mode 100644 lib/ssh/test/ssh_sftp_SUITE_data/ssh_host_dsa_key delete mode 100644 lib/ssh/test/ssh_sftp_SUITE_data/ssh_host_dsa_key.pub delete mode 100644 lib/ssh/test/ssh_sftpd_SUITE_data/ssh_host_dsa_key delete mode 100644 lib/ssh/test/ssh_sftpd_SUITE_data/ssh_host_dsa_key.pub delete mode 100644 lib/ssh/test/ssh_sftpd_erlclient_SUITE_data/ssh_host_dsa_key delete mode 100644 lib/ssh/test/ssh_sftpd_erlclient_SUITE_data/ssh_host_dsa_key.pub delete mode 100644 lib/ssh/test/ssh_to_openssh_SUITE_data/ssh_host_dsa_key delete mode 100644 lib/ssh/test/ssh_to_openssh_SUITE_data/ssh_host_dsa_key.pub (limited to 'lib/ssh/test') diff --git a/lib/ssh/test/Makefile b/lib/ssh/test/Makefile index a3518aef52..5a2a6de24a 100644 --- a/lib/ssh/test/Makefile +++ b/lib/ssh/test/Makefile @@ -45,8 +45,6 @@ HRL_FILES_NEEDED_IN_TEST= \ ERL_FILES= $(MODULES:%=%.erl) -KEY_FILES= ssh_host_dsa_key #ssh_host_dsa_key.pub - TARGET_FILES= $(MODULES:%=$(EBIN)/%.$(EMULATOR)) DATA_DIRS = $(MODULES:%=%_data) @@ -117,14 +115,6 @@ release_tests_spec: opt $(INSTALL_DATA) $(ERL_FILES) $(RELSYSDIR) $(INSTALL_DATA) ssh.spec ssh.cover $(RELSYSDIR) $(INSTALL_DATA) $(HRL_FILES_NEEDED_IN_TEST) $(RELSYSDIR) - @for dir in $(DATA_DIRS); do \ - if test ! -d $$dir ; then \ - echo "=== Skipping datadir $$dir" ; \ - else \ - echo "Installling $(KEY_FILES) in $$dir"; \ - $(INSTALL_DATA) $(KEY_FILES) $$dir; \ - fi ; \ - done chmod -f -R u+w $(RELSYSDIR) @tar cf - *_SUITE_data | (cd $(RELSYSDIR); tar xf -) diff --git a/lib/ssh/test/ssh_basic_SUITE.erl b/lib/ssh/test/ssh_basic_SUITE.erl index c2d10b8266..5ea0d98980 100644 --- a/lib/ssh/test/ssh_basic_SUITE.erl +++ b/lib/ssh/test/ssh_basic_SUITE.erl @@ -42,9 +42,8 @@ init_per_suite(Config) -> case catch crypto:start() of ok -> Dir = ?config(priv_dir, Config), - ssh_test_lib:save_known_hosts(Dir), {ok, _} = ssh_test_lib:get_id_keys(Dir), - ssh_test_lib:make_dsa_public_key_file(42, 43, 44, 45, Config), + ssh_test_lib:make_dsa_files(Config), Config; _Else -> {skip, "Crypto could not be started!"} @@ -60,7 +59,6 @@ end_per_suite(Config) -> Dir = ?config(priv_dir, Config), crypto:stop(), ssh_test_lib:remove_id_keys(Dir), - ssh_test_lib:restore_known_hosts(Dir), ok. %%-------------------------------------------------------------------- diff --git a/lib/ssh/test/ssh_basic_SUITE_data/ssh_host_dsa_key b/lib/ssh/test/ssh_basic_SUITE_data/ssh_host_dsa_key deleted file mode 100644 index 58f0a65cba..0000000000 --- a/lib/ssh/test/ssh_basic_SUITE_data/ssh_host_dsa_key +++ /dev/null @@ -1,12 +0,0 @@ ------BEGIN DSA PRIVATE KEY----- -MIIBuwIBAAKBgQC3s+bZJWOQnRXkzKLPPfaQOouLuLgrbM4Ac63QZOnJeRVas3c1 -jBk0Isp506RrKzhEop8z9OiKfqRteVntjjkcILwsQ/1veWgojdP/jHYl6pbJm6AQ -ETM7GvkpgRDTd4Bf/rbrhABczl1NatnJhMsES8n2zNiiAVRP0woVmMNnkQIVANUe -uFb3EPdFwPEjilQ5jANHQc7pAoGBAJSzGD9KW4AZYB0FTt/2rwB5VjayKudi8ZO0 -nTyVoDLz40yvWerL/PJMbAnMnbY7zuN/Y9cqnMJOdBkHPvOpLQVls/d/x5CHZxcq -mn3n+Jplr5tlKugpUCkvgNALH2o/DMrPh1DIiPqrH3Y0W8iKcG+zF9Z7FXbCswC5 -2TTFtuwNAoGAfEIAb3mLjtFfiF/tsZb4/DGHdWSb6Ir0hFkoBUZ9ymBO70wlfZVS -QGs240kZtOMpAOpJL1Dy8oH6PUQ+JyacwZIo8fdq19/Kwm6CPrpaEhzErmMvwT2C -ZJYZ+HOk55ljLkVCiyG7MzEj2+odLKym9yoQsbsJolHzIRpkLk45y4cCFFmAnw67 -+basD1iibtNHs9Edfdkm ------END DSA PRIVATE KEY----- diff --git a/lib/ssh/test/ssh_basic_SUITE_data/ssh_host_dsa_key.pub b/lib/ssh/test/ssh_basic_SUITE_data/ssh_host_dsa_key.pub deleted file mode 100644 index d83487fc50..0000000000 --- a/lib/ssh/test/ssh_basic_SUITE_data/ssh_host_dsa_key.pub +++ /dev/null @@ -1 +0,0 @@ -ssh-dss AAAAB3NzaC1kc3MAAACBALez5tklY5CdFeTMos899pA6i4u4uCtszgBzrdBk6cl5FVqzdzWMGTQiynnTpGsrOESinzP06Ip+pG15We2OORwgvCxD/W95aCiN0/+MdiXqlsmboBARMzsa+SmBENN3gF/+tuuEAFzOXU1q2cmEywRLyfbM2KIBVE/TChWYw2eRAAAAFQDVHrhW9xD3RcDxI4pUOYwDR0HO6QAAAIEAlLMYP0pbgBlgHQVO3/avAHlWNrIq52Lxk7SdPJWgMvPjTK9Z6sv88kxsCcydtjvO439j1yqcwk50GQc+86ktBWWz93/HkIdnFyqafef4mmWvm2Uq6ClQKS+A0Asfaj8Mys+HUMiI+qsfdjRbyIpwb7MX1nsVdsKzALnZNMW27A0AAACAfEIAb3mLjtFfiF/tsZb4/DGHdWSb6Ir0hFkoBUZ9ymBO70wlfZVSQGs240kZtOMpAOpJL1Dy8oH6PUQ+JyacwZIo8fdq19/Kwm6CPrpaEhzErmMvwT2CZJYZ+HOk55ljLkVCiyG7MzEj2+odLKym9yoQsbsJolHzIRpkLk45y4c= jakob@balin diff --git a/lib/ssh/test/ssh_host_dsa_key b/lib/ssh/test/ssh_host_dsa_key deleted file mode 100644 index 58f0a65cba..0000000000 --- a/lib/ssh/test/ssh_host_dsa_key +++ /dev/null @@ -1,12 +0,0 @@ ------BEGIN DSA PRIVATE KEY----- -MIIBuwIBAAKBgQC3s+bZJWOQnRXkzKLPPfaQOouLuLgrbM4Ac63QZOnJeRVas3c1 -jBk0Isp506RrKzhEop8z9OiKfqRteVntjjkcILwsQ/1veWgojdP/jHYl6pbJm6AQ -ETM7GvkpgRDTd4Bf/rbrhABczl1NatnJhMsES8n2zNiiAVRP0woVmMNnkQIVANUe -uFb3EPdFwPEjilQ5jANHQc7pAoGBAJSzGD9KW4AZYB0FTt/2rwB5VjayKudi8ZO0 -nTyVoDLz40yvWerL/PJMbAnMnbY7zuN/Y9cqnMJOdBkHPvOpLQVls/d/x5CHZxcq -mn3n+Jplr5tlKugpUCkvgNALH2o/DMrPh1DIiPqrH3Y0W8iKcG+zF9Z7FXbCswC5 -2TTFtuwNAoGAfEIAb3mLjtFfiF/tsZb4/DGHdWSb6Ir0hFkoBUZ9ymBO70wlfZVS -QGs240kZtOMpAOpJL1Dy8oH6PUQ+JyacwZIo8fdq19/Kwm6CPrpaEhzErmMvwT2C -ZJYZ+HOk55ljLkVCiyG7MzEj2+odLKym9yoQsbsJolHzIRpkLk45y4cCFFmAnw67 -+basD1iibtNHs9Edfdkm ------END DSA PRIVATE KEY----- diff --git a/lib/ssh/test/ssh_host_dsa_key.pub b/lib/ssh/test/ssh_host_dsa_key.pub deleted file mode 100644 index d83487fc50..0000000000 --- a/lib/ssh/test/ssh_host_dsa_key.pub +++ /dev/null @@ -1 +0,0 @@ -ssh-dss AAAAB3NzaC1kc3MAAACBALez5tklY5CdFeTMos899pA6i4u4uCtszgBzrdBk6cl5FVqzdzWMGTQiynnTpGsrOESinzP06Ip+pG15We2OORwgvCxD/W95aCiN0/+MdiXqlsmboBARMzsa+SmBENN3gF/+tuuEAFzOXU1q2cmEywRLyfbM2KIBVE/TChWYw2eRAAAAFQDVHrhW9xD3RcDxI4pUOYwDR0HO6QAAAIEAlLMYP0pbgBlgHQVO3/avAHlWNrIq52Lxk7SdPJWgMvPjTK9Z6sv88kxsCcydtjvO439j1yqcwk50GQc+86ktBWWz93/HkIdnFyqafef4mmWvm2Uq6ClQKS+A0Asfaj8Mys+HUMiI+qsfdjRbyIpwb7MX1nsVdsKzALnZNMW27A0AAACAfEIAb3mLjtFfiF/tsZb4/DGHdWSb6Ir0hFkoBUZ9ymBO70wlfZVSQGs240kZtOMpAOpJL1Dy8oH6PUQ+JyacwZIo8fdq19/Kwm6CPrpaEhzErmMvwT2CZJYZ+HOk55ljLkVCiyG7MzEj2+odLKym9yoQsbsJolHzIRpkLk45y4c= jakob@balin diff --git a/lib/ssh/test/ssh_sftp_SUITE.erl b/lib/ssh/test/ssh_sftp_SUITE.erl index caaf4e6243..c96b6de3ea 100644 --- a/lib/ssh/test/ssh_sftp_SUITE.erl +++ b/lib/ssh/test/ssh_sftp_SUITE.erl @@ -49,10 +49,8 @@ init_per_suite(Config) -> case {catch crypto:start(),catch ssh:start()} of {ok,ok} -> Dir = ?config(priv_dir, Config), - ssh_test_lib:save_known_hosts(Dir), - %% More like copy_id_keys!!! {ok, _} = ssh_test_lib:get_id_keys(Dir), - ssh_test_lib:make_dsa_public_key_file(42, 43, 44, 45, Config), + ssh_test_lib:make_dsa_files(Config), Config; {ok,_} -> {skip,"Could not start ssh!"}; @@ -72,7 +70,6 @@ end_per_suite(Config) -> crypto:stop(), Dir = ?config(priv_dir, Config), ssh_test_lib:remove_id_keys(Dir), - ssh_test_lib:restore_known_hosts(Dir), Config. %%-------------------------------------------------------------------- diff --git a/lib/ssh/test/ssh_sftp_SUITE_data/ssh_host_dsa_key b/lib/ssh/test/ssh_sftp_SUITE_data/ssh_host_dsa_key deleted file mode 100644 index 58f0a65cba..0000000000 --- a/lib/ssh/test/ssh_sftp_SUITE_data/ssh_host_dsa_key +++ /dev/null @@ -1,12 +0,0 @@ ------BEGIN DSA PRIVATE KEY----- -MIIBuwIBAAKBgQC3s+bZJWOQnRXkzKLPPfaQOouLuLgrbM4Ac63QZOnJeRVas3c1 -jBk0Isp506RrKzhEop8z9OiKfqRteVntjjkcILwsQ/1veWgojdP/jHYl6pbJm6AQ -ETM7GvkpgRDTd4Bf/rbrhABczl1NatnJhMsES8n2zNiiAVRP0woVmMNnkQIVANUe -uFb3EPdFwPEjilQ5jANHQc7pAoGBAJSzGD9KW4AZYB0FTt/2rwB5VjayKudi8ZO0 -nTyVoDLz40yvWerL/PJMbAnMnbY7zuN/Y9cqnMJOdBkHPvOpLQVls/d/x5CHZxcq -mn3n+Jplr5tlKugpUCkvgNALH2o/DMrPh1DIiPqrH3Y0W8iKcG+zF9Z7FXbCswC5 -2TTFtuwNAoGAfEIAb3mLjtFfiF/tsZb4/DGHdWSb6Ir0hFkoBUZ9ymBO70wlfZVS -QGs240kZtOMpAOpJL1Dy8oH6PUQ+JyacwZIo8fdq19/Kwm6CPrpaEhzErmMvwT2C -ZJYZ+HOk55ljLkVCiyG7MzEj2+odLKym9yoQsbsJolHzIRpkLk45y4cCFFmAnw67 -+basD1iibtNHs9Edfdkm ------END DSA PRIVATE KEY----- diff --git a/lib/ssh/test/ssh_sftp_SUITE_data/ssh_host_dsa_key.pub b/lib/ssh/test/ssh_sftp_SUITE_data/ssh_host_dsa_key.pub deleted file mode 100644 index d83487fc50..0000000000 --- a/lib/ssh/test/ssh_sftp_SUITE_data/ssh_host_dsa_key.pub +++ /dev/null @@ -1 +0,0 @@ -ssh-dss AAAAB3NzaC1kc3MAAACBALez5tklY5CdFeTMos899pA6i4u4uCtszgBzrdBk6cl5FVqzdzWMGTQiynnTpGsrOESinzP06Ip+pG15We2OORwgvCxD/W95aCiN0/+MdiXqlsmboBARMzsa+SmBENN3gF/+tuuEAFzOXU1q2cmEywRLyfbM2KIBVE/TChWYw2eRAAAAFQDVHrhW9xD3RcDxI4pUOYwDR0HO6QAAAIEAlLMYP0pbgBlgHQVO3/avAHlWNrIq52Lxk7SdPJWgMvPjTK9Z6sv88kxsCcydtjvO439j1yqcwk50GQc+86ktBWWz93/HkIdnFyqafef4mmWvm2Uq6ClQKS+A0Asfaj8Mys+HUMiI+qsfdjRbyIpwb7MX1nsVdsKzALnZNMW27A0AAACAfEIAb3mLjtFfiF/tsZb4/DGHdWSb6Ir0hFkoBUZ9ymBO70wlfZVSQGs240kZtOMpAOpJL1Dy8oH6PUQ+JyacwZIo8fdq19/Kwm6CPrpaEhzErmMvwT2CZJYZ+HOk55ljLkVCiyG7MzEj2+odLKym9yoQsbsJolHzIRpkLk45y4c= jakob@balin diff --git a/lib/ssh/test/ssh_sftpd_SUITE.erl b/lib/ssh/test/ssh_sftpd_SUITE.erl index 97857c98d9..bfe54a3e75 100644 --- a/lib/ssh/test/ssh_sftpd_SUITE.erl +++ b/lib/ssh/test/ssh_sftpd_SUITE.erl @@ -55,7 +55,7 @@ init_per_suite(Config) -> case {catch ssh:stop(),catch crypto:start()} of {ok,ok} -> - ssh_test_lib:make_dsa_public_key_file(42, 43, 44, 45, Config), + ssh_test_lib:make_dsa_files(Config), Config; {ok,_} -> {skip,"Could not start ssh!"}; @@ -94,11 +94,16 @@ init_per_testcase(TestCase, Config) -> SysDir = ?config(data_dir, Config), {ok, Sftpd} = ssh_sftpd:listen(?SFPD_PORT, [{system_dir, SysDir}, - {user_passwords,[{?USER, ?PASSWD}]}]), + {user_passwords,[{?USER, ?PASSWD}]}, + {pwdfun, fun(_,_) -> true end}]), Cm = ssh_test_lib:connect(?SFPD_PORT, - [{silently_accept_hosts, true}, - {user, ?USER}, {password, ?PASSWD}]), + [{system_dir, SysDir}, + {user_dir, SysDir}, + {user, ?USER}, {password, ?PASSWD}, + {user_interaction, false}, + {silently_accept_hosts, true}, + {pwdfun, fun(_,_) -> true end}]), {ok, Channel} = ssh_connection:session_channel(Cm, ?XFER_WINDOW_SIZE, ?XFER_PACKET_SIZE, ?TIMEOUT), diff --git a/lib/ssh/test/ssh_sftpd_SUITE_data/ssh_host_dsa_key b/lib/ssh/test/ssh_sftpd_SUITE_data/ssh_host_dsa_key deleted file mode 100644 index 58f0a65cba..0000000000 --- a/lib/ssh/test/ssh_sftpd_SUITE_data/ssh_host_dsa_key +++ /dev/null @@ -1,12 +0,0 @@ ------BEGIN DSA PRIVATE KEY----- -MIIBuwIBAAKBgQC3s+bZJWOQnRXkzKLPPfaQOouLuLgrbM4Ac63QZOnJeRVas3c1 -jBk0Isp506RrKzhEop8z9OiKfqRteVntjjkcILwsQ/1veWgojdP/jHYl6pbJm6AQ -ETM7GvkpgRDTd4Bf/rbrhABczl1NatnJhMsES8n2zNiiAVRP0woVmMNnkQIVANUe -uFb3EPdFwPEjilQ5jANHQc7pAoGBAJSzGD9KW4AZYB0FTt/2rwB5VjayKudi8ZO0 -nTyVoDLz40yvWerL/PJMbAnMnbY7zuN/Y9cqnMJOdBkHPvOpLQVls/d/x5CHZxcq -mn3n+Jplr5tlKugpUCkvgNALH2o/DMrPh1DIiPqrH3Y0W8iKcG+zF9Z7FXbCswC5 -2TTFtuwNAoGAfEIAb3mLjtFfiF/tsZb4/DGHdWSb6Ir0hFkoBUZ9ymBO70wlfZVS -QGs240kZtOMpAOpJL1Dy8oH6PUQ+JyacwZIo8fdq19/Kwm6CPrpaEhzErmMvwT2C -ZJYZ+HOk55ljLkVCiyG7MzEj2+odLKym9yoQsbsJolHzIRpkLk45y4cCFFmAnw67 -+basD1iibtNHs9Edfdkm ------END DSA PRIVATE KEY----- diff --git a/lib/ssh/test/ssh_sftpd_SUITE_data/ssh_host_dsa_key.pub b/lib/ssh/test/ssh_sftpd_SUITE_data/ssh_host_dsa_key.pub deleted file mode 100644 index d83487fc50..0000000000 --- a/lib/ssh/test/ssh_sftpd_SUITE_data/ssh_host_dsa_key.pub +++ /dev/null @@ -1 +0,0 @@ -ssh-dss AAAAB3NzaC1kc3MAAACBALez5tklY5CdFeTMos899pA6i4u4uCtszgBzrdBk6cl5FVqzdzWMGTQiynnTpGsrOESinzP06Ip+pG15We2OORwgvCxD/W95aCiN0/+MdiXqlsmboBARMzsa+SmBENN3gF/+tuuEAFzOXU1q2cmEywRLyfbM2KIBVE/TChWYw2eRAAAAFQDVHrhW9xD3RcDxI4pUOYwDR0HO6QAAAIEAlLMYP0pbgBlgHQVO3/avAHlWNrIq52Lxk7SdPJWgMvPjTK9Z6sv88kxsCcydtjvO439j1yqcwk50GQc+86ktBWWz93/HkIdnFyqafef4mmWvm2Uq6ClQKS+A0Asfaj8Mys+HUMiI+qsfdjRbyIpwb7MX1nsVdsKzALnZNMW27A0AAACAfEIAb3mLjtFfiF/tsZb4/DGHdWSb6Ir0hFkoBUZ9ymBO70wlfZVSQGs240kZtOMpAOpJL1Dy8oH6PUQ+JyacwZIo8fdq19/Kwm6CPrpaEhzErmMvwT2CZJYZ+HOk55ljLkVCiyG7MzEj2+odLKym9yoQsbsJolHzIRpkLk45y4c= jakob@balin diff --git a/lib/ssh/test/ssh_sftpd_erlclient_SUITE.erl b/lib/ssh/test/ssh_sftpd_erlclient_SUITE.erl index c571ac45f7..ebed8c0b54 100644 --- a/lib/ssh/test/ssh_sftpd_erlclient_SUITE.erl +++ b/lib/ssh/test/ssh_sftpd_erlclient_SUITE.erl @@ -54,7 +54,7 @@ init_per_suite(Config) -> {ok, FileInfo} = file:read_file_info(FileName), ok = file:write_file_info(FileName, FileInfo#file_info{mode = 8#400}), - ssh_test_lib:make_dsa_public_key_file(42, 43, 44, 45, Config), + ssh_test_lib:make_dsa_files(Config), Config; _Else -> {skip,"Could not start ssh!"} diff --git a/lib/ssh/test/ssh_sftpd_erlclient_SUITE_data/ssh_host_dsa_key b/lib/ssh/test/ssh_sftpd_erlclient_SUITE_data/ssh_host_dsa_key deleted file mode 100644 index 58f0a65cba..0000000000 --- a/lib/ssh/test/ssh_sftpd_erlclient_SUITE_data/ssh_host_dsa_key +++ /dev/null @@ -1,12 +0,0 @@ ------BEGIN DSA PRIVATE KEY----- -MIIBuwIBAAKBgQC3s+bZJWOQnRXkzKLPPfaQOouLuLgrbM4Ac63QZOnJeRVas3c1 -jBk0Isp506RrKzhEop8z9OiKfqRteVntjjkcILwsQ/1veWgojdP/jHYl6pbJm6AQ -ETM7GvkpgRDTd4Bf/rbrhABczl1NatnJhMsES8n2zNiiAVRP0woVmMNnkQIVANUe -uFb3EPdFwPEjilQ5jANHQc7pAoGBAJSzGD9KW4AZYB0FTt/2rwB5VjayKudi8ZO0 -nTyVoDLz40yvWerL/PJMbAnMnbY7zuN/Y9cqnMJOdBkHPvOpLQVls/d/x5CHZxcq -mn3n+Jplr5tlKugpUCkvgNALH2o/DMrPh1DIiPqrH3Y0W8iKcG+zF9Z7FXbCswC5 -2TTFtuwNAoGAfEIAb3mLjtFfiF/tsZb4/DGHdWSb6Ir0hFkoBUZ9ymBO70wlfZVS -QGs240kZtOMpAOpJL1Dy8oH6PUQ+JyacwZIo8fdq19/Kwm6CPrpaEhzErmMvwT2C -ZJYZ+HOk55ljLkVCiyG7MzEj2+odLKym9yoQsbsJolHzIRpkLk45y4cCFFmAnw67 -+basD1iibtNHs9Edfdkm ------END DSA PRIVATE KEY----- diff --git a/lib/ssh/test/ssh_sftpd_erlclient_SUITE_data/ssh_host_dsa_key.pub b/lib/ssh/test/ssh_sftpd_erlclient_SUITE_data/ssh_host_dsa_key.pub deleted file mode 100644 index d83487fc50..0000000000 --- a/lib/ssh/test/ssh_sftpd_erlclient_SUITE_data/ssh_host_dsa_key.pub +++ /dev/null @@ -1 +0,0 @@ -ssh-dss AAAAB3NzaC1kc3MAAACBALez5tklY5CdFeTMos899pA6i4u4uCtszgBzrdBk6cl5FVqzdzWMGTQiynnTpGsrOESinzP06Ip+pG15We2OORwgvCxD/W95aCiN0/+MdiXqlsmboBARMzsa+SmBENN3gF/+tuuEAFzOXU1q2cmEywRLyfbM2KIBVE/TChWYw2eRAAAAFQDVHrhW9xD3RcDxI4pUOYwDR0HO6QAAAIEAlLMYP0pbgBlgHQVO3/avAHlWNrIq52Lxk7SdPJWgMvPjTK9Z6sv88kxsCcydtjvO439j1yqcwk50GQc+86ktBWWz93/HkIdnFyqafef4mmWvm2Uq6ClQKS+A0Asfaj8Mys+HUMiI+qsfdjRbyIpwb7MX1nsVdsKzALnZNMW27A0AAACAfEIAb3mLjtFfiF/tsZb4/DGHdWSb6Ir0hFkoBUZ9ymBO70wlfZVSQGs240kZtOMpAOpJL1Dy8oH6PUQ+JyacwZIo8fdq19/Kwm6CPrpaEhzErmMvwT2CZJYZ+HOk55ljLkVCiyG7MzEj2+odLKym9yoQsbsJolHzIRpkLk45y4c= jakob@balin diff --git a/lib/ssh/test/ssh_test_lib.erl b/lib/ssh/test/ssh_test_lib.erl index f2a6351f96..b11ebc1652 100644 --- a/lib/ssh/test/ssh_test_lib.erl +++ b/lib/ssh/test/ssh_test_lib.erl @@ -232,22 +232,6 @@ known_hosts(BR) -> end. -save_known_hosts(PrivDir) -> - Src = ssh_file:file_name(user, "known_hosts", []), - Dst = filename:join(PrivDir, "kh_save"), - Ok = file:copy(Src, Dst), - io:format("save ~p -> ~p : ~p", [Src, Dst, Ok]). - -restore_known_hosts(_PrivDir) -> - %% Race condition. - ok. -%% Src = filename:join(PrivDir, "kh_save"), -%% Dst = ssh_file:file_name(user, "known_hosts", []), -%% D1 = file:delete(Dst), -%% C = file:copy(Src, Dst), -%% D2 = file:delete(Src), -%% io:format("restore ~p -> ~p : ~p ~p ~p\n", [Src, Dst, D1, C, D2]). - get_user_dir() -> case os:type() of {win32, _} -> @@ -276,17 +260,48 @@ make_dsa_cert_files(RoleStr, Config) -> der_to_pem(KeyFile, [CertKey]), {CaCertFile, CertFile, KeyFile}. -make_dsa_public_key_file(P, Q, G, Y, Config) -> - PK = #ssh_key{type = dsa, public = {P,Q,G,Y}}, - Enc = ssh_file:encode_public_key(PK), - B64 = ssh_bits:b64_encode(Enc), - FileName = filename:join([?config(data_dir, Config), "ssh_host_dsa_key.pub"]), - file:write_file(FileName, <<"ssh-dss ", B64/binary>>). - -make_dsa_private_key_file(LSize, NSize, Config) -> - {Key, EncodedKey} = gen_dsa(LSize, NSize), - FileName = filename:join([?config(data_dir, Config), "ssh_host_dsa_key"]), - file:write_file(FileName, EncodedKey). +make_dsa_files(Config) -> + make_dsa_files(Config, rfc4716_public_key). +make_dsa_files(Config, Type) -> + {DSA, EncodedKey} = ssh_test_lib:gen_dsa(128, 20), + PKey = DSA#'DSAPrivateKey'.y, + P = DSA#'DSAPrivateKey'.p, + Q = DSA#'DSAPrivateKey'.q, + G = DSA#'DSAPrivateKey'.g, + Dss = #'Dss-Parms'{p=P, q=Q, g=G}, + {ok, Hostname} = inet:gethostname(), + {ok, {A, B, C, D}} = inet:getaddr(Hostname, inet), + IP = lists:concat([A, ".", B, ".", C, ".", D]), + Attributes = [], % Could be [{comment,"user@" ++ Hostname}], + HostNames = [{hostnames,[IP, IP]}], + PublicKey = [{{PKey, Dss}, Attributes}], + KnownHosts = [{{PKey, Dss}, HostNames}], + + KnownHostsEnc = public_key:ssh_encode(KnownHosts, known_hosts), + KnownHosts = public_key:ssh_decode(KnownHostsEnc, known_hosts), + + PublicKeyEnc = public_key:ssh_encode(PublicKey, Type), +% PublicKey = public_key:ssh_decode(PublicKeyEnc, Type), + + SystemTmpDir = ?config(data_dir, Config), + filelib:ensure_dir(SystemTmpDir), + file:make_dir(SystemTmpDir), + + DSAFile = filename:join(SystemTmpDir, "ssh_host_dsa_key.pub"), + file:delete(DSAFile), + + DSAPrivateFile = filename:join(SystemTmpDir, "ssh_host_dsa_key"), + file:delete(DSAPrivateFile), + + KHFile = filename:join(SystemTmpDir, "known_hosts"), + file:delete(KHFile), + + PemBin = public_key:pem_encode([EncodedKey]), + + file:write_file(DSAFile, PublicKeyEnc), + file:write_file(KHFile, KnownHostsEnc), + file:write_file(DSAPrivateFile, PemBin), + ok. %%-------------------------------------------------------------------- %% Create and return a der encoded certificate diff --git a/lib/ssh/test/ssh_to_openssh_SUITE.erl b/lib/ssh/test/ssh_to_openssh_SUITE.erl index c927dead04..f959d50484 100644 --- a/lib/ssh/test/ssh_to_openssh_SUITE.erl +++ b/lib/ssh/test/ssh_to_openssh_SUITE.erl @@ -42,7 +42,7 @@ init_per_suite(Config) -> case catch crypto:start() of ok -> - ssh_test_lib:make_dsa_public_key_file(42, 43, 44, 45, Config), + ssh_test_lib:make_dsa_files(Config), Config; _Else -> {skip,"Could not start crypto!"} diff --git a/lib/ssh/test/ssh_to_openssh_SUITE_data/ssh_host_dsa_key b/lib/ssh/test/ssh_to_openssh_SUITE_data/ssh_host_dsa_key deleted file mode 100644 index 58f0a65cba..0000000000 --- a/lib/ssh/test/ssh_to_openssh_SUITE_data/ssh_host_dsa_key +++ /dev/null @@ -1,12 +0,0 @@ ------BEGIN DSA PRIVATE KEY----- -MIIBuwIBAAKBgQC3s+bZJWOQnRXkzKLPPfaQOouLuLgrbM4Ac63QZOnJeRVas3c1 -jBk0Isp506RrKzhEop8z9OiKfqRteVntjjkcILwsQ/1veWgojdP/jHYl6pbJm6AQ -ETM7GvkpgRDTd4Bf/rbrhABczl1NatnJhMsES8n2zNiiAVRP0woVmMNnkQIVANUe -uFb3EPdFwPEjilQ5jANHQc7pAoGBAJSzGD9KW4AZYB0FTt/2rwB5VjayKudi8ZO0 -nTyVoDLz40yvWerL/PJMbAnMnbY7zuN/Y9cqnMJOdBkHPvOpLQVls/d/x5CHZxcq -mn3n+Jplr5tlKugpUCkvgNALH2o/DMrPh1DIiPqrH3Y0W8iKcG+zF9Z7FXbCswC5 -2TTFtuwNAoGAfEIAb3mLjtFfiF/tsZb4/DGHdWSb6Ir0hFkoBUZ9ymBO70wlfZVS -QGs240kZtOMpAOpJL1Dy8oH6PUQ+JyacwZIo8fdq19/Kwm6CPrpaEhzErmMvwT2C -ZJYZ+HOk55ljLkVCiyG7MzEj2+odLKym9yoQsbsJolHzIRpkLk45y4cCFFmAnw67 -+basD1iibtNHs9Edfdkm ------END DSA PRIVATE KEY----- diff --git a/lib/ssh/test/ssh_to_openssh_SUITE_data/ssh_host_dsa_key.pub b/lib/ssh/test/ssh_to_openssh_SUITE_data/ssh_host_dsa_key.pub deleted file mode 100644 index d83487fc50..0000000000 --- a/lib/ssh/test/ssh_to_openssh_SUITE_data/ssh_host_dsa_key.pub +++ /dev/null @@ -1 +0,0 @@ -ssh-dss AAAAB3NzaC1kc3MAAACBALez5tklY5CdFeTMos899pA6i4u4uCtszgBzrdBk6cl5FVqzdzWMGTQiynnTpGsrOESinzP06Ip+pG15We2OORwgvCxD/W95aCiN0/+MdiXqlsmboBARMzsa+SmBENN3gF/+tuuEAFzOXU1q2cmEywRLyfbM2KIBVE/TChWYw2eRAAAAFQDVHrhW9xD3RcDxI4pUOYwDR0HO6QAAAIEAlLMYP0pbgBlgHQVO3/avAHlWNrIq52Lxk7SdPJWgMvPjTK9Z6sv88kxsCcydtjvO439j1yqcwk50GQc+86ktBWWz93/HkIdnFyqafef4mmWvm2Uq6ClQKS+A0Asfaj8Mys+HUMiI+qsfdjRbyIpwb7MX1nsVdsKzALnZNMW27A0AAACAfEIAb3mLjtFfiF/tsZb4/DGHdWSb6Ir0hFkoBUZ9ymBO70wlfZVSQGs240kZtOMpAOpJL1Dy8oH6PUQ+JyacwZIo8fdq19/Kwm6CPrpaEhzErmMvwT2CZJYZ+HOk55ljLkVCiyG7MzEj2+odLKym9yoQsbsJolHzIRpkLk45y4c= jakob@balin -- cgit v1.2.3