1#include <stdio.h>
2#include <limits.h>
3
4#include <Kerberos/Kerberos.h>
5
6#include "test_ccapi_check.h"
7#include "test_ccapi_constants.h"
8#include "test_ccapi_context.h"
9#include "test_ccapi_ccache.h"
10#include "test_ccapi_iterators.h"
11#include "test_ccapi_v2.h"
12
13int main (int argc, const char * argv[]) {
14
15	cc_int32 err = ccNoError;
16//	cc_ccache_iterator_t cache_iterator = NULL;
17//	cc_credentials_iterator_t cred_iterator = NULL;
18
19	fprintf(stdout, "Testing CCAPI against CCAPI v3 rev 8 documentation...\n");
20	fprintf(stdout, "Warning: this test suite is woefully incomplete and unpolished.\n");
21
22	T_CCAPI_INIT;
23#if 0
24	// *** ccapi v2 compat ***
25	err = check_cc_shutdown();
26	err = check_cc_get_change_time();
27	err = check_cc_open();
28	err = check_cc_create();
29	err = check_cc_close();
30	err = check_cc_destroy();
31	err = check_cc_get_cred_version();
32	err = check_cc_get_name();
33	err = check_cc_get_principal();
34	err = check_cc_set_principal();
35	err = check_cc_store();
36	err = check_cc_remove_cred();
37	err = check_cc_seq_fetch_NCs_begin();
38	err = check_cc_seq_fetch_NCs_next();
39	err = check_cc_seq_fetch_creds_begin();
40	err = check_cc_seq_fetch_creds_next();
41	err = check_cc_get_NC_info();
42#endif
43	err = check_constants();
44
45	// *** cc_context ***
46	err = check_cc_initialize();
47	err = check_cc_context_release();
48	err = check_cc_context_get_change_time();
49	err = check_cc_context_get_default_ccache_name();
50	err = check_cc_context_open_ccache();
51	err = check_cc_context_open_default_ccache();
52	err = check_cc_context_create_ccache();
53	err = check_cc_context_create_default_ccache();
54	err = check_cc_context_create_new_ccache();
55	err = check_cc_context_new_ccache_iterator();
56	// err = check_cc_context_lock();
57	// err = check_cc_context_unlock();
58	err = check_cc_context_compare();
59
60	// *** cc_ccache ***
61	err = check_cc_ccache_release();
62	err = check_cc_ccache_destroy();
63	err = check_cc_ccache_set_default();
64	err = check_cc_ccache_get_credentials_version();
65	err = check_cc_ccache_get_name();
66	err = check_cc_ccache_get_principal();
67	err = check_cc_ccache_set_principal();
68	err = check_cc_ccache_store_credentials();
69	err = check_cc_ccache_remove_credentials();
70	err = check_cc_ccache_new_credentials_iterator();
71	// err = check_cc_ccache_lock();
72	// err = check_cc_ccache_unlock();
73	err = check_cc_ccache_get_change_time();
74	err = check_cc_ccache_get_last_default_time();
75	err = check_cc_ccache_move();
76	err = check_cc_ccache_compare();
77	err = check_cc_ccache_get_kdc_time_offset();
78	err = check_cc_ccache_set_kdc_time_offset();
79	err = check_cc_ccache_clear_kdc_time_offset();
80
81	// *** cc_ccache_iterator ***
82	err = check_cc_ccache_iterator_next();
83
84	// *** cc_credentials_iterator ***
85	err = check_cc_credentials_iterator_next();
86
87	fprintf(stdout, "\nFinished testing CCAPI. %d failure%s in total.\n", total_failure_count, (total_failure_count == 1) ? "" : "s");
88
89    return err;
90}
91