badssl.c 990 Bytes
Newer Older
1 2 3 4 5 6 7
#include "clar_libgit2.h"

#include "git2/clone.h"

static git_repository *g_repo;

#if defined(GIT_OPENSSL) || defined(GIT_WINHTTP) || defined(GIT_SECURE_TRANSPORT)
Leo Yang committed
8 9 10 11
static bool g_has_ssl = true;
#else
static bool g_has_ssl = false;
#endif
12 13 14

void test_online_badssl__expired(void)
{
Leo Yang committed
15 16 17
	if (!g_has_ssl)
		cl_skip();

18 19 20 21 22 23
	cl_git_fail_with(GIT_ECERTIFICATE,
			 git_clone(&g_repo, "https://expired.badssl.com/fake.git", "./fake", NULL));
}

void test_online_badssl__wrong_host(void)
{
Leo Yang committed
24 25 26
	if (!g_has_ssl)
		cl_skip();

27 28 29 30 31 32
	cl_git_fail_with(GIT_ECERTIFICATE,
			 git_clone(&g_repo, "https://wrong.host.badssl.com/fake.git", "./fake", NULL));
}

void test_online_badssl__self_signed(void)
{
Leo Yang committed
33 34 35
	if (!g_has_ssl)
		cl_skip();

36 37 38
	cl_git_fail_with(GIT_ECERTIFICATE,
			 git_clone(&g_repo, "https://self-signed.badssl.com/fake.git", "./fake", NULL));
}
39 40 41 42 43 44

void test_online_badssl__old_cipher(void)
{
	if (!g_has_ssl)
		cl_skip();

45
	cl_git_fail(git_clone(&g_repo, "https://rc4.badssl.com/fake.git", "./fake", NULL));
46
}