break;
}
- socket_open(&hd, hostname, portname, app_proto, SOCKET_FLAG_STARTTLS, NULL, NULL);
+ socket_open(&hd, hostname, portname, app_proto, SOCKET_FLAG_STARTTLS|SOCKET_FLAG_RAW, NULL, NULL);
hd.verbose = verbose;
do {
ret = tls_tests[i].func(hd.session);
- if (ret != TEST_IGNORE) {
+ if (ret != TEST_IGNORE && ret != TEST_IGNORE2) {
printf("%58s...", tls_tests[i].test_name);
fflush(stdout);
}
ret = do_handshake(session);
if (ret < 0)
- return TEST_IGNORE;
+ return TEST_IGNORE2;
if (handshake_output < 0)
return TEST_SUCCEED;
return ret;
if (gnutls_certificate_type_get(session) != GNUTLS_CRT_X509)
- return TEST_IGNORE;
+ return TEST_IGNORE2;
cert_list = gnutls_certificate_get_peers(session, &cert_list_size);
if (cert_list_size == 0) {
ext_text = "No certificates found!";
- return TEST_IGNORE;
+ return TEST_IGNORE2;
}
if (cert_list_size == 1)
*/
typedef enum {
- TEST_SUCCEED, TEST_FAILED, TEST_UNSURE, TEST_IGNORE
+ TEST_SUCCEED, TEST_FAILED, TEST_UNSURE, TEST_IGNORE/*keep socket*/, TEST_IGNORE2/*destroy socket*/
} test_code_t;
test_code_t test_chain_order(gnutls_session_t session);