- kernel interface hacks, works partially

- interface must be redefined
This commit is contained in:
Martin Willi
2005-12-05 16:09:42 +00:00
parent e70c7feb02
commit ba425b87dd
10 changed files with 504 additions and 186 deletions
@@ -123,3 +123,9 @@ $(BUILD_DIR)rsa_test.o : $(TESTCASES_DIR)rsa_test.c $(TESTCASES_DIR)rsa_test.h
TEST_OBJS+= $(BUILD_DIR)prime_pool_test.o
$(BUILD_DIR)prime_pool_test.o : $(TESTCASES_DIR)prime_pool_test.c $(TESTCASES_DIR)prime_pool_test.h
$(CC) $(CFLAGS) -c -o $@ $<
TEST_OBJS+= $(BUILD_DIR)kernel_interface_test.o
$(BUILD_DIR)kernel_interface_test.o : $(TESTCASES_DIR)kernel_interface_test.c $(TESTCASES_DIR)kernel_interface_test.h
$(CC) $(CFLAGS) -c -o $@ $<
@@ -0,0 +1,81 @@
/**
* @file kernel_interface_test.h
*
* @brief Tests for the kernel_interface_t class.
*
*/
/*
* Copyright (C) 2005 Jan Hutter, Martin Willi
* Hochschule fuer Technik Rapperswil
*
* This program is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License as published by the
* Free Software Foundation; either version 2 of the License, or (at your
* option) any later version. See <http://www.fsf.org/copyleft/gpl.txt>.
*
* This program is distributed in the hope that it will be useful, but
* WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
* or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* for more details.
*/
#include "kernel_interface_test.h"
#include <daemon.h>
#include <threads/kernel_interface.h>
#include <utils/allocator.h>
#include <utils/logger.h>
#include <network/host.h>
/*
* described in Header-File
*/
void test_kernel_interface(tester_t *tester)
{
kernel_interface_t *kernel_interface;
u_int32_t spi;
host_t *me, *other;
status_t status;
u_int8_t enc_key_bytes[] = {
0x01,0x02,0x03,0x04,0x05,0x06,0x07,0x08,
0x01,0x02,0x03,0x04,0x05,0x06,0x07,0x08
};
u_int8_t inc_key_bytes[] = {
0x01,0x02,0x03,0x04,0x05,0x06,0x07,0x08,
0x01,0x02,0x03,0x04,0x05,0x06,0x07,0x08
};
chunk_t enc_key,inc_key;
enc_key.ptr = enc_key_bytes;
enc_key.len = sizeof(enc_key_bytes);
inc_key.ptr = inc_key_bytes;
inc_key.len = sizeof(inc_key_bytes);
kernel_interface = kernel_interface_create();
me = host_create(AF_INET, "152.96.193.130", 500);
other = host_create(AF_INET, "152.96.193.130", 500);
//status = kernel_interface->get_spi(kernel_interface, me, other, 51, TRUE, &spi);
//status |= kernel_interface->get_spi(kernel_interface, me, other, 50, TRUE, &spi);
//tester->assert_true(tester, status == SUCCESS, "spi get");
status = kernel_interface->add_sa(kernel_interface, me, other, spi, 50, TRUE, ENCR_AES_CBC, 16, enc_key,AUTH_HMAC_MD5_96,16,inc_key,FALSE);
tester->assert_true(tester, status == SUCCESS, "build sa");
me->destroy(me);
other->destroy(other);
kernel_interface->destroy(kernel_interface);
}
@@ -0,0 +1,38 @@
/**
* @file kernel_interface_test.h
*
* @brief Tests for the kernel_interface_t class.
*
*/
/*
* Copyright (C) 2005 Jan Hutter, Martin Willi
* Hochschule fuer Technik Rapperswil
*
* This program is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License as published by the
* Free Software Foundation; either version 2 of the License, or (at your
* option) any later version. See <http://www.fsf.org/copyleft/gpl.txt>.
*
* This program is distributed in the hope that it will be useful, but
* WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
* or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* for more details.
*/
#ifndef KERNEL_INTERFACE_TEST_H_
#define KERNEL_INTERFACE_TEST_H_
#include <utils/tester.h>
/**
* @brief Test function used to test the kernel_interface functionality.
*
* @param tester associated tester object
*
* @ingroup testcases
*/
void test_kernel_interface(tester_t *tester);
#endif /*KERNEL_INTERFACE_TEST_H_*/
+2
View File
@@ -60,6 +60,7 @@
#include <testcases/sa_config_test.h>
#include <testcases/rsa_test.h>
#include <testcases/prime_pool_test.h>
#include <testcases/kernel_interface_test.h>
/* output for test messages */
extern FILE * stderr;
@@ -120,6 +121,7 @@ test_t init_config_test = {test_init_config, "init_config_t test"};
test_t sa_config_test = {test_sa_config, "sa_config_t test"};
test_t rsa_test = {test_rsa, "RSA private/public key test"};
test_t prime_pool_test = {test_prime_pool, "Prime pool"};
test_t kernel_interface_test = {test_kernel_interface, "Kernel Interface"};
daemon_t* charon;