Blame tests/slow/cipher-test.c

Packit aea12f
#include <config.h>
Packit aea12f
#include <stdint.h>
Packit aea12f
#include <stdio.h>
Packit aea12f
#include <string.h>
Packit aea12f
#include <utils.h>
Packit aea12f
#include <stdlib.h>
Packit aea12f
#include <gnutls/gnutls.h>
Packit aea12f
#include <gnutls/crypto.h>
Packit aea12f
#include <gnutls/self-test.h>
Packit aea12f
#include <signal.h>
Packit aea12f
Packit aea12f
/* This does check the AES and SHA implementation against test vectors.
Packit aea12f
 * This should not run under valgrind in order to use the native
Packit aea12f
 * cpu instructions (AES-NI or padlock).
Packit aea12f
 */
Packit aea12f
Packit aea12f
#if defined(WIN32)
Packit aea12f
int main(int argc, char **argv)
Packit aea12f
{
Packit aea12f
	exit(77);
Packit aea12f
}
Packit aea12f
#else
Packit aea12f
# include <unistd.h>
Packit aea12f
Packit aea12f
static void handle_sigill(int sig)
Packit aea12f
{
Packit aea12f
	_exit(0);
Packit aea12f
}
Packit aea12f
Packit aea12f
static void tls_log_func(int level, const char *str)
Packit aea12f
{
Packit aea12f
	fprintf(stderr, "<%d>| %s", level, str);
Packit aea12f
}
Packit aea12f
Packit aea12f
int main(int argc, char **argv)
Packit aea12f
{
Packit aea12f
	gnutls_global_set_log_function(tls_log_func);
Packit aea12f
	if (argc > 1)
Packit aea12f
		gnutls_global_set_log_level(4711);
Packit aea12f
Packit aea12f
	global_init();
Packit aea12f
	signal(SIGILL, handle_sigill);
Packit aea12f
Packit aea12f
	/* ciphers */
Packit aea12f
	if (gnutls_cipher_self_test(1, 0) < 0)
Packit aea12f
		return 1;
Packit aea12f
Packit aea12f
	/* message digests */
Packit aea12f
	if (gnutls_digest_self_test(1, 0) < 0)
Packit aea12f
		return 1;
Packit aea12f
Packit aea12f
	/* MAC */
Packit aea12f
	if (gnutls_mac_self_test(1, 0) < 0)
Packit aea12f
		return 1;
Packit aea12f
Packit aea12f
	/* PK */
Packit aea12f
	if (gnutls_pk_self_test(1, 0) < 0)
Packit aea12f
		return 1;
Packit aea12f
Packit aea12f
	gnutls_global_deinit();
Packit aea12f
	return 0;
Packit aea12f
}
Packit aea12f
Packit aea12f
#endif