cedric pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=5b274257822c706608eb8d8a325b71e5727e4e94

commit 5b274257822c706608eb8d8a325b71e5727e4e94
Author: Srivardhan Hebbar <sri.heb...@samsung.com>
Date:   Fri Mar 6 15:55:58 2015 +0100

    ecore_con: add test cases related to SSL.
    
    Summary:
    Add test cases related to SSL. Now it is not crashing and all test cases 
passes.
    
    Signed-off-by: Srivardhan Hebbar <sri.heb...@samsung.com>
    
    Reviewers: cedric
    
    Subscribers: cedric
    
    Differential Revision: https://phab.enlightenment.org/D2095
    
    Signed-off-by: Cedric BAIL <ced...@osg.samsung.com>
---
 src/tests/ecore/ecore_test_ecore_con.c | 114 ++++++++++++++++++++++++++++++---
 src/tests/ecore/server.key             |  15 +++++
 src/tests/ecore/server.pem             |  14 ++++
 3 files changed, 134 insertions(+), 9 deletions(-)

diff --git a/src/tests/ecore/ecore_test_ecore_con.c 
b/src/tests/ecore/ecore_test_ecore_con.c
index e29139d..70b9162 100644
--- a/src/tests/ecore/ecore_test_ecore_con.c
+++ b/src/tests/ecore/ecore_test_ecore_con.c
@@ -176,9 +176,9 @@ _dns_err(void *data, int type EINA_UNUSED, void *ev 
EINA_UNUSED)
    return ECORE_CALLBACK_RENEW;
 }
 
-void _ecore_con_server_client_tests(Ecore_Con_Type compl_type, const char 
*name)
+void _ecore_con_server_client_tests(Ecore_Con_Type compl_type, const char 
*name, Eina_Bool is_ssl)
 {
-   Ecore_Con_Server *server = NULL;
+   Ecore_Con_Server *server;
    Ecore_Con_Server *client;
    Ecore_Con_Client *cl;
    const Eina_List *clients, *l;
@@ -220,6 +220,12 @@ void _ecore_con_server_client_tests(Ecore_Con_Type 
compl_type, const char *name)
        server_data);
    fail_if (server == NULL);
 
+   if (is_ssl)
+     {
+        fail_unless(ecore_con_ssl_server_cert_add(server, 
TESTS_SRC_DIR"/server.pem"));
+        fail_unless(ecore_con_ssl_server_privkey_add(server, 
TESTS_SRC_DIR"/server.key"));
+     }
+
    del_ret = ecore_con_server_data_get(server);
    fail_if (del_ret != server_data);
 
@@ -241,6 +247,12 @@ void _ecore_con_server_client_tests(Ecore_Con_Type 
compl_type, const char *name)
        client_data);
    fail_if (client == NULL);
 
+   if (is_ssl)
+     {
+        fail_unless(ecore_con_ssl_server_cafile_add(server, 
TESTS_SRC_DIR"/server.pem"));
+        ecore_con_ssl_server_verify(server);
+     }
+
    ecore_main_loop_begin();
 
    clients = ecore_con_server_clients_get(server);
@@ -285,31 +297,103 @@ void _ecore_con_server_client_tests(Ecore_Con_Type 
compl_type, const char *name)
 
 START_TEST(ecore_test_ecore_con_local_user)
 {
-   _ecore_con_server_client_tests(ECORE_CON_LOCAL_USER, "test_sock");
+   _ecore_con_server_client_tests(ECORE_CON_LOCAL_USER, "test_sock", 
EINA_FALSE);
 }
 END_TEST
 
 START_TEST(ecore_test_ecore_con_local_system)
 {
-   _ecore_con_server_client_tests(ECORE_CON_LOCAL_SYSTEM, "test_sock");
+   _ecore_con_server_client_tests(ECORE_CON_LOCAL_SYSTEM, "test_sock", 
EINA_FALSE);
 }
 END_TEST
 
 START_TEST(ecore_test_ecore_con_local_abstract)
 {
-   _ecore_con_server_client_tests(ECORE_CON_LOCAL_ABSTRACT, "test_sock");
+   _ecore_con_server_client_tests(ECORE_CON_LOCAL_ABSTRACT, "test_sock", 
EINA_FALSE);
 }
 END_TEST
 
 START_TEST(ecore_test_ecore_con_remote_tcp)
 {
-   _ecore_con_server_client_tests(ECORE_CON_REMOTE_TCP, "127.0.0.1");
+   _ecore_con_server_client_tests(ECORE_CON_REMOTE_TCP, "127.0.0.1", 
EINA_FALSE);
 }
 END_TEST
 
 START_TEST(ecore_test_ecore_con_remote_nodelay)
 {
-   _ecore_con_server_client_tests(ECORE_CON_REMOTE_NODELAY, "127.0.0.1");
+   _ecore_con_server_client_tests(ECORE_CON_REMOTE_NODELAY, "127.0.0.1", 
EINA_FALSE);
+}
+END_TEST
+
+START_TEST(ecore_test_ecore_con_remote_tcp_ssl3)
+{
+   _ecore_con_server_client_tests(ECORE_CON_REMOTE_TCP | ECORE_CON_USE_SSL3, 
"127.0.0.1", EINA_TRUE);
+}
+END_TEST
+
+START_TEST(ecore_test_ecore_con_remote_tcp_ssl3_load_cert)
+{
+   _ecore_con_server_client_tests(ECORE_CON_REMOTE_TCP | ECORE_CON_USE_SSL3 | 
ECORE_CON_LOAD_CERT, "127.0.0.1", EINA_TRUE);
+}
+END_TEST
+
+START_TEST(ecore_test_ecore_con_remote_tcp_tls)
+{
+   _ecore_con_server_client_tests(ECORE_CON_REMOTE_TCP | ECORE_CON_USE_TLS, 
"127.0.0.1", EINA_TRUE);
+}
+END_TEST
+
+START_TEST(ecore_test_ecore_con_remote_tcp_tls_load_cert)
+{
+   _ecore_con_server_client_tests(ECORE_CON_REMOTE_TCP | ECORE_CON_USE_TLS | 
ECORE_CON_LOAD_CERT, "127.0.0.1", EINA_TRUE);
+}
+END_TEST
+
+START_TEST(ecore_test_ecore_con_remote_tcp_mixed)
+{
+   _ecore_con_server_client_tests(ECORE_CON_REMOTE_TCP | ECORE_CON_USE_MIXED, 
"127.0.0.1", EINA_TRUE);
+}
+END_TEST
+
+START_TEST(ecore_test_ecore_con_remote_tcp_mixed_load_cert)
+{
+   _ecore_con_server_client_tests(ECORE_CON_REMOTE_TCP | ECORE_CON_USE_MIXED | 
ECORE_CON_LOAD_CERT, "127.0.0.1", EINA_TRUE);
+}
+END_TEST
+
+START_TEST(ecore_test_ecore_con_remote_nodelay_ssl3)
+{
+   _ecore_con_server_client_tests(ECORE_CON_REMOTE_NODELAY | 
ECORE_CON_USE_SSL3, "127.0.0.1", EINA_TRUE);
+}
+END_TEST
+
+START_TEST(ecore_test_ecore_con_remote_nodelay_ssl3_load_cert)
+{
+   _ecore_con_server_client_tests(ECORE_CON_REMOTE_NODELAY | 
ECORE_CON_USE_SSL3 | ECORE_CON_LOAD_CERT, "127.0.0.1", EINA_TRUE);
+}
+END_TEST
+
+START_TEST(ecore_test_ecore_con_remote_nodelay_tls)
+{
+   _ecore_con_server_client_tests(ECORE_CON_REMOTE_NODELAY | 
ECORE_CON_USE_TLS, "127.0.0.1", EINA_TRUE);
+}
+END_TEST
+
+START_TEST(ecore_test_ecore_con_remote_nodelay_tls_load_cert)
+{
+   _ecore_con_server_client_tests(ECORE_CON_REMOTE_NODELAY | ECORE_CON_USE_TLS 
| ECORE_CON_LOAD_CERT, "127.0.0.1", EINA_TRUE);
+}
+END_TEST
+
+START_TEST(ecore_test_ecore_con_remote_nodelay_mixed)
+{
+   _ecore_con_server_client_tests(ECORE_CON_REMOTE_NODELAY | 
ECORE_CON_USE_MIXED, "127.0.0.1", EINA_TRUE);
+}
+END_TEST
+
+START_TEST(ecore_test_ecore_con_remote_nodelay_mixed_load_cert)
+{
+   _ecore_con_server_client_tests(ECORE_CON_REMOTE_NODELAY | 
ECORE_CON_USE_MIXED | ECORE_CON_LOAD_CERT, "127.0.0.1", EINA_TRUE);
 }
 END_TEST
 
@@ -380,8 +464,20 @@ void ecore_test_ecore_con(TCase *tc)
    tcase_add_test(tc, ecore_test_ecore_con_local_user);
    tcase_add_test(tc, ecore_test_ecore_con_local_system);
    tcase_add_test(tc, ecore_test_ecore_con_local_abstract);
-   tcase_add_test(tc,ecore_test_ecore_con_remote_tcp);
-   tcase_add_test(tc,ecore_test_ecore_con_remote_nodelay);
+   tcase_add_test(tc, ecore_test_ecore_con_remote_tcp);
+   tcase_add_test(tc, ecore_test_ecore_con_remote_tcp_ssl3);
+   tcase_add_test(tc, ecore_test_ecore_con_remote_tcp_ssl3_load_cert);
+   tcase_add_test(tc, ecore_test_ecore_con_remote_tcp_tls);
+   tcase_add_test(tc, ecore_test_ecore_con_remote_tcp_tls_load_cert);
+   tcase_add_test(tc, ecore_test_ecore_con_remote_tcp_mixed);
+   tcase_add_test(tc, ecore_test_ecore_con_remote_tcp_mixed_load_cert);
+   tcase_add_test(tc, ecore_test_ecore_con_remote_nodelay);
+   tcase_add_test(tc, ecore_test_ecore_con_remote_nodelay_ssl3);
+   tcase_add_test(tc, ecore_test_ecore_con_remote_nodelay_ssl3_load_cert);
+   tcase_add_test(tc, ecore_test_ecore_con_remote_nodelay_tls);
+   tcase_add_test(tc, ecore_test_ecore_con_remote_nodelay_tls_load_cert);
+   tcase_add_test(tc, ecore_test_ecore_con_remote_nodelay_mixed);
+   tcase_add_test(tc, ecore_test_ecore_con_remote_nodelay_mixed_load_cert);
    tcase_add_test(tc, ecore_test_ecore_con_dns);
    tcase_add_test(tc, ecore_test_ecore_con_shutdown_bef_init);
 }
diff --git a/src/tests/ecore/server.key b/src/tests/ecore/server.key
new file mode 100644
index 0000000..922b0f7
--- /dev/null
+++ b/src/tests/ecore/server.key
@@ -0,0 +1,15 @@
+-----BEGIN RSA PRIVATE KEY-----
+MIICXAIBAAKBgQDPM7htA+kHL37qJQOLK3CYP4x9mqCcYy4m4GvT+yn5b4IRqi1x
+iH0F+/A+hvG4EE/iamNsnM7uJ1bixw/BCya+m9EfE5qzQvZuU+6AN73D+nMXcgBd
+4TTjfF8MD340a1Tn3RRVOx1hdSuuN61wpIFT/sn/dfTaVzD/UnMWj+AdBQIDAQAB
+AoGAYc6wSAWIgnPRHQXL3m3rAHM/BitvlWLb7k4RmEb/UVdptpz2Rpl/Ksv6ZAmf
+IJvSmbZOqH58z76SLQp6TU3OQ2IBikHo8+C+RgPWptBDlgYO57zGz4ee28tImqV/
+quxNE+TM9EBJDAhGA0ySaiQcdfOOErzRQvcFSTE2ie9LjAECQQDvUmMzsYhEEb8B
+RS7ASYNUFihBPprZh+/qhJeF37kK7t1g2zk5gwfEo2W9926DiKicpvX1/hxgKOwb
+ZpZuhRAhAkEA3aRNBnrDPo+gaP+wV4Z410+laW/myqbEN9l6tcGQqRZmOXw6jEAm
+Cq5zngIVibaVZ4g052c4PHl51txYoEjAZQJBAM4He2exWsJfFLSfPpRDtU/ak2U3
+5E+Je73F0DxsUf1bjjIoCKe+ah2bHafhL78FE0NpaS4RSZRvJnSgaLlUzIECQB5H
+SMJ+2NdeFaLiczuxwiZf2hAKWnQKzjl2+12DIPkId1SZFQJ97PR+morWbAzRJZ3s
+LJYEMtmIGs3wcicLaUUCQFBmyP238jX58ixYd7crJdnxPnTvOtasQqb8cPJ9XSyT
+ara6m96iiQSvqXObtmRl6oGCWGw8q821iJYHKFD0ls4=
+-----END RSA PRIVATE KEY-----
diff --git a/src/tests/ecore/server.pem b/src/tests/ecore/server.pem
new file mode 100644
index 0000000..84e8de3
--- /dev/null
+++ b/src/tests/ecore/server.pem
@@ -0,0 +1,14 @@
+-----BEGIN CERTIFICATE-----
+MIICOTCCAaICCQDQ5umIhrgBUDANBgkqhkiG9w0BAQsFADBhMQswCQYDVQQGEwJJ
+TjEMMAoGA1UECAwDS2FyMRIwEAYDVQQHDAlCZW5nYWx1cnUxDDAKBgNVBAoMA0VG
+TDEOMAwGA1UECwwFRWNvcmUxEjAQBgNVBAMMCTEyNy4wLjAuMTAeFw0xNTAyMTIw
+NDIxMDVaFw0xNjAyMTIwNDIxMDVaMGExCzAJBgNVBAYTAklOMQwwCgYDVQQIDANL
+YXIxEjAQBgNVBAcMCUJlbmdhbHVydTEMMAoGA1UECgwDRUZMMQ4wDAYDVQQLDAVF
+Y29yZTESMBAGA1UEAwwJMTI3LjAuMC4xMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCB
+iQKBgQDPM7htA+kHL37qJQOLK3CYP4x9mqCcYy4m4GvT+yn5b4IRqi1xiH0F+/A+
+hvG4EE/iamNsnM7uJ1bixw/BCya+m9EfE5qzQvZuU+6AN73D+nMXcgBd4TTjfF8M
+D340a1Tn3RRVOx1hdSuuN61wpIFT/sn/dfTaVzD/UnMWj+AdBQIDAQABMA0GCSqG
+SIb3DQEBCwUAA4GBALgUu21Ihj6W2/tagmV7Iwt4LJndnIJP1IINUrLptkH1vE4B
+4p7uHxtRp7fQpOOl2ns1JhJabgHUjXLCPfjsZ1YS5YgTqs9IaiyqjYZDgCusSvrJ
+eJXeNVLWMb6iHgW0zsEDv9Vl1/XyBk9koyP0/stWw+JFxKqMJGCen5dRPQLZ
+-----END CERTIFICATE-----

-- 


Reply via email to