torture: add local verification trailer parsing test
[samba.git] / source4 / torture / local / local.c
1 /* 
2    Unix SMB/CIFS implementation.
3    SMB torture tester
4    Copyright (C) Jelmer Vernooij 2006
5    
6    This program is free software; you can redistribute it and/or modify
7    it under the terms of the GNU General Public License as published by
8    the Free Software Foundation; either version 3 of the License, or
9    (at your option) any later version.
10    
11    This program is distributed in the hope that it will be useful,
12    but WITHOUT ANY WARRANTY; without even the implied warranty of
13    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14    GNU General Public License for more details.
15    
16    You should have received a copy of the GNU General Public License
17    along with this program.  If not, see <http://www.gnu.org/licenses/>.
18 */
19
20 #include "includes.h"
21 #include "torture/smbtorture.h"
22 #include "torture/local/proto.h"
23 #include "torture/ndr/proto.h"
24 #include "torture/auth/proto.h"
25 #include "../lib/crypto/test_proto.h"
26 #include "lib/registry/tests/proto.h"
27 #include "lib/replace/replace-testsuite.h"
28
29 /* ignore me */ static struct torture_suite *
30         (*suite_generators[]) (TALLOC_CTX *mem_ctx) =
31
32         torture_local_binding_string, 
33         torture_ntlmssp, 
34         torture_smbencrypt,
35         torture_local_messaging, 
36         torture_local_irpc, 
37         torture_local_util_strlist, 
38         torture_local_util_parmlist, 
39         torture_local_util_file, 
40         torture_local_util_str, 
41         torture_local_util_time, 
42         torture_local_util_data_blob, 
43         torture_local_util_asn1,
44         torture_local_util_anonymous_shared,
45         torture_local_idtree, 
46         torture_local_dlinklist,
47         torture_local_genrand, 
48         torture_local_iconv,
49         torture_local_socket, 
50 #ifdef SOCKET_WRAPPER
51         torture_local_socket_wrapper, 
52 #endif
53 #ifdef NSS_WRAPPER
54         torture_local_nss_wrapper,
55 #endif
56         torture_pac, 
57         torture_local_resolve,
58         torture_local_sddl,
59         torture_local_ndr, 
60         torture_local_tdr, 
61         torture_local_share,
62         torture_local_loadparm,
63         torture_local_charset,
64         torture_local_convert_string_handle,
65         torture_local_convert_string,
66         torture_local_string_case_handle,
67         torture_local_string_case,
68         torture_local_compression,
69         torture_local_event, 
70         torture_local_torture,
71         torture_local_dbspeed, 
72         torture_local_credentials,
73         torture_ldb,
74         torture_dsdb_dn,
75         torture_dsdb_syntax,
76         torture_registry,
77         torture_local_verif_trailer,
78         NULL
79 };
80
81 NTSTATUS torture_local_init(void)
82 {
83         int i;
84         struct torture_suite *suite = torture_suite_create(
85                 talloc_autofree_context(), "local");
86         
87         torture_suite_add_simple_test(suite, "talloc", torture_local_talloc);
88         torture_suite_add_simple_test(suite, "replace", torture_local_replace);
89         
90         torture_suite_add_simple_test(suite, 
91                                       "crypto.md4", torture_local_crypto_md4);
92         torture_suite_add_simple_test(suite, "crypto.md5", 
93                                       torture_local_crypto_md5);
94         torture_suite_add_simple_test(suite, "crypto.hmacmd5", 
95                                       torture_local_crypto_hmacmd5);
96         torture_suite_add_simple_test(suite, "crypto.aes_cmac_128",
97                                       torture_local_crypto_aes_cmac_128);
98
99         for (i = 0; suite_generators[i]; i++)
100                 torture_suite_add_suite(suite,
101                                         suite_generators[i](talloc_autofree_context()));
102         
103         suite->description = talloc_strdup(suite, 
104                                            "Local, Samba-specific tests");
105
106         torture_register_suite(suite);
107
108         return NT_STATUS_OK;
109 }