Merge commit 'release-4-0-0alpha15' into master4-tmp
[kai/samba.git] / source3 / torture / proto.h
1 /*
2    Unix SMB/CIFS implementation.
3
4    SMB torture tester - header file
5
6    Copyright (C) Andrew Tridgell 1997-1998
7    Copyright (C) Jeremy Allison 2009
8
9    This program is free software; you can redistribute it and/or modify
10    it under the terms of the GNU General Public License as published by
11    the Free Software Foundation; either version 3 of the License, or
12    (at your option) any later version.
13
14    This program is distributed in the hope that it will be useful,
15    but WITHOUT ANY WARRANTY; without even the implied warranty of
16    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
17    GNU General Public License for more details.
18
19    You should have received a copy of the GNU General Public License
20    along with this program.  If not, see <http://www.gnu.org/licenses/>.
21 */
22
23 #ifndef __TORTURE_H__
24 #define __TORTURE_H__
25
26 struct cli_state;
27
28 /* The following definitions come from torture/denytest.c  */
29
30 bool torture_denytest1(int dummy);
31 bool torture_denytest2(int dummy);
32
33 /* The following definitions come from torture/mangle_test.c  */
34
35 bool torture_mangle(int dummy);
36
37 /* The following definitions come from torture/nbio.c  */
38
39 double nbio_total(void);
40 void nb_alarm(int ignore);
41 void nbio_shmem(int n);
42 void nb_setup(struct cli_state *cli);
43 void nb_unlink(const char *fname);
44 void nb_createx(const char *fname,
45                 unsigned create_options, unsigned create_disposition, int handle);
46 void nb_writex(int handle, int offset, int size, int ret_size);
47 void nb_readx(int handle, int offset, int size, int ret_size);
48 void nb_close(int handle);
49 void nb_rmdir(const char *fname);
50 void nb_rename(const char *oldname, const char *newname);
51 void nb_qpathinfo(const char *fname);
52 void nb_qfileinfo(int fnum);
53 void nb_qfsinfo(int level);
54 void nb_findfirst(const char *mask);
55 void nb_flush(int fnum);
56 void nb_deltree(const char *dname);
57 void nb_cleanup(void);
58
59 /* The following definitions come from torture/scanner.c  */
60
61 bool torture_trans2_scan(int dummy);
62 bool torture_nttrans_scan(int dummy);
63
64 /* The following definitions come from torture/torture.c  */
65
66 void *shm_setup(int size);
67 bool smbcli_parse_unc(const char *unc_name, TALLOC_CTX *mem_ctx,
68                       char **hostname, char **sharename);
69 bool torture_open_connection(struct cli_state **c, int conn_index);
70 bool torture_cli_session_setup2(struct cli_state *cli, uint16 *new_vuid);
71 bool torture_close_connection(struct cli_state *c);
72 bool torture_ioctl_test(int dummy);
73 bool torture_chkpath_test(int dummy);
74 NTSTATUS torture_setup_unix_extensions(struct cli_state *cli);
75
76 /* The following definitions come from torture/utable.c  */
77
78 bool torture_utable(int dummy);
79 bool torture_casetable(int dummy);
80
81 /*
82  * Misc
83  */
84
85 bool run_posix_append(int dummy);
86 bool run_case_insensitive_create(int dummy);
87
88 bool run_nbench2(int dummy);
89 bool run_async_echo(int dummy);
90 bool run_smb_any_connect(int dummy);
91 bool run_addrchange(int dummy);
92 bool run_notify_online(int dummy);
93 bool run_nttrans_create(int dummy);
94
95 #endif /* __TORTURE_H__ */