示例#1
0
文件: opts.t.c 项目: 0x0mar/sslsplit
END_TEST

START_TEST(proxyspec_parse_14)
{
	proxyspec_t *spec;
	int argc = 6;
	char **argv = argv10;

	spec = proxyspec_parse(&argc, &argv, NATENGINE);
	fail_unless(!!spec, "failed to parse spec");
	fail_unless(spec->ssl, "not SSL");
	fail_unless(spec->http, "not HTTP");
	fail_unless(spec->listen_addrlen == sizeof(struct sockaddr_in6),
	            "not IPv6 listen addr");
	fail_unless(!spec->connect_addrlen, "connect addr set");
	fail_unless(!spec->sni_port, "SNI port is set");
	fail_unless(!!spec->natengine, "natengine not set");
	fail_unless(!strcmp(spec->natengine, NATENGINE), "natengine mismatch");
	fail_unless(!spec->natlookup, "natlookup() is set");
	fail_unless(!spec->natsocket, "natsocket() is set");
	fail_unless(!!spec->next, "next is not set");
	fail_unless(spec->next->ssl, "not SSL");
	fail_unless(spec->next->http, "not HTTP");
	fail_unless(spec->next->listen_addrlen == sizeof(struct sockaddr_in),
	            "not IPv4 listen addr");
	fail_unless(!spec->next->connect_addrlen, "connect addr set");
	fail_unless(!spec->next->sni_port, "SNI port is set");
	fail_unless(!!spec->next->natengine, "natengine not set");
	fail_unless(!strcmp(spec->next->natengine, NATENGINE),
	            "natengine mismatch");
	fail_unless(!spec->next->natlookup, "natlookup() is set");
	fail_unless(!spec->next->natsocket, "natsocket() is set");
	proxyspec_free(spec);
}
示例#2
0
END_TEST

START_TEST(proxyspec_parse_16)
{
	proxyspec_t *spec;
	int argc = 10;
	char **argv = argv12;

	spec = proxyspec_parse(&argc, &argv, NATENGINE);
	fail_unless(!!spec, "failed to parse spec");
	fail_unless(spec->ssl, "not SSL");
	fail_unless(spec->http, "not HTTP");
	fail_unless(!spec->upgrade, "Upgrade");
	fail_unless(spec->listen_addrlen == sizeof(struct sockaddr_in),
	            "not IPv4 listen addr");
	fail_unless(spec->connect_addrlen == sizeof(struct sockaddr_in),
	            "not IPv4 connect addr");
	fail_unless(!spec->sni_port, "SNI port is set");
	fail_unless(!spec->natengine, "natengine is set");
	fail_unless(!spec->natlookup, "natlookup() is set");
	fail_unless(!spec->natsocket, "natsocket() is set");
	fail_unless(!!spec->next, "next is not set");
	fail_unless(!spec->next->ssl, "SSL");
	fail_unless(!spec->next->http, "HTTP");
	fail_unless(spec->next->upgrade, "not Upgrade");
	fail_unless(spec->next->listen_addrlen == sizeof(struct sockaddr_in),
	            "not IPv4 listen addr");
	fail_unless(spec->next->connect_addrlen == sizeof(struct sockaddr_in),
	            "not IPv4 connect addr");
	fail_unless(!spec->next->sni_port, "SNI port is set");
	fail_unless(!spec->next->natengine, "natengine is set");
	fail_unless(!spec->next->natlookup, "natlookup() is set");
	fail_unless(!spec->next->natsocket, "natsocket() is set");
	proxyspec_free(spec);
}
示例#3
0
文件: opts.t.c 项目: droe/sslsplit
END_TEST
#endif /* !DOCKER */

START_TEST(proxyspec_parse_11)
{
	proxyspec_t *spec = NULL;
	int argc = 3;
	char **argv = argv08;

	proxyspec_parse(&argc, &argv, NATENGINE, &spec);
	fail_unless(!!spec, "failed to parse spec");
	fail_unless(spec->ssl, "not SSL");
	fail_unless(spec->http, "not HTTP");
	fail_unless(!spec->upgrade, "Upgrade");
	fail_unless(spec->listen_addrlen == sizeof(struct sockaddr_in),
	            "not IPv4 listen addr");
	fail_unless(!spec->connect_addrlen, "connect addr set");
	fail_unless(!spec->sni_port, "SNI port is set");
	fail_unless(!!spec->natengine, "natengine not set");
	fail_unless(!strcmp(spec->natengine, NATENGINE), "natengine mismatch");
	fail_unless(!spec->natlookup, "natlookup() is set");
	fail_unless(!spec->natsocket, "natsocket() is set");
	fail_unless(!spec->next, "next is set");
	proxyspec_free(spec);
}
示例#4
0
文件: opts.t.c 项目: droe/sslsplit
END_TEST

#ifndef TRAVIS
START_TEST(proxyspec_parse_02)
{
	proxyspec_t *spec = NULL;
	int argc = 5;
	char **argv = argv02;

	proxyspec_parse(&argc, &argv, NATENGINE, &spec);
	fail_unless(!!spec, "failed to parse spec");
	fail_unless(spec->ssl, "not SSL");
	fail_unless(spec->http, "not HTTP");
	fail_unless(!spec->upgrade, "Upgrade");
	fail_unless(spec->listen_addrlen == sizeof(struct sockaddr_in6),
	            "not IPv6 listen addr");
	fail_unless(spec->connect_addrlen == sizeof(struct sockaddr_in6),
	            "not IPv6 connect addr");
	fail_unless(!spec->sni_port, "SNI port is set");
	fail_unless(!spec->natengine, "natengine is set");
	fail_unless(!spec->natlookup, "natlookup() is set");
	fail_unless(!spec->natsocket, "natsocket() is set");
	fail_unless(!spec->next, "next is set");
	proxyspec_free(spec);
}
示例#5
0
END_TEST

START_TEST(proxyspec_parse_17)
{
	proxyspec_t *spec;
	int argc = 5;
	char **argv = argv13;

	close(2);
	spec = proxyspec_parse(&argc, &argv, NATENGINE);
	if (spec)
		proxyspec_free(spec);
}
示例#6
0
文件: opts.t.c 项目: droe/sslsplit
END_TEST

START_TEST(proxyspec_parse_10)
{
	proxyspec_t *spec = NULL;
	int argc = 4;
	char **argv = argv06;

	close(2);
	proxyspec_parse(&argc, &argv, NATENGINE, &spec);
	if (spec)
		proxyspec_free(spec);
}
示例#7
0
void
opts_free(opts_t *opts)
{
	sk_X509_pop_free(opts->chain, X509_free);
	if (opts->cacrt) {
		X509_free(opts->cacrt);
	}
	if (opts->cakey) {
		EVP_PKEY_free(opts->cakey);
	}
	if (opts->key) {
		EVP_PKEY_free(opts->key);
	}
#ifndef OPENSSL_NO_DH
	if (opts->dh) {
		DH_free(opts->dh);
	}
#endif /* !OPENSSL_NO_DH */
#ifndef OPENSSL_NO_ECDH
	if (opts->ecdhcurve) {
		free(opts->ecdhcurve);
	}
#endif /* !OPENSSL_NO_ECDH */
	if (opts->spec) {
		proxyspec_free(opts->spec);
	}
	if (opts->ciphers) {
		free(opts->ciphers);
	}
	if (opts->tgcrtdir) {
		free(opts->tgcrtdir);
	}
	if (opts->dropuser) {
		free(opts->dropuser);
	}
	if (opts->jaildir) {
		free(opts->jaildir);
	}
	if (opts->pidfile) {
		free(opts->pidfile);
	}
	if (opts->connectlog) {
		free(opts->connectlog);
	}
	if (opts->contentlog) {
		free(opts->contentlog);
	}
	memset(opts, 0, sizeof(opts_t));
	free(opts);
}
示例#8
0
文件: opts.t.c 项目: droe/sslsplit
END_TEST

#ifndef DOCKER
START_TEST(proxyspec_parse_17)
{
	proxyspec_t *spec = NULL;
	int argc = 5;
	char **argv = argv13;

	close(2);
	proxyspec_parse(&argc, &argv, NATENGINE, &spec);
	if (spec)
		proxyspec_free(spec);
}
示例#9
0
文件: opts.t.c 项目: droe/sslsplit
END_TEST
#endif /* !DOCKER */

#ifndef DOCKER
START_TEST(proxyspec_parse_04)
{
	proxyspec_t *spec = NULL;
	int argc = 4;
	char **argv = argv01;

	close(2);
	proxyspec_parse(&argc, &argv, NATENGINE, &spec);
	if (spec)
		proxyspec_free(spec);
}