xref: /netbsd-src/external/ibm-public/postfix/dist/src/global/test_main.h (revision 67b9b338a7386232ac596b5fd0cd5a9cc8a03c71)
1 /*	$NetBSD: test_main.h,v 1.2 2022/10/08 16:12:45 christos Exp $	*/
2 
3 /*++
4 /* NAME
5 /*	test_main	3h
6 /* SUMMARY
7 /*	test	main program
8 /* SYNOPSIS
9 /*	#include <test_main.h>
10 /* DESCRIPTION
11 /* .nf
12 
13  /*
14   * Global library.
15   */
16 #include <mail_conf.h>
17 
18  /*
19   * External interface. Copied from master/mail_server.h, but without
20   * introducing libmaster dependencies.
21   */
22 #define TEST_MAIN_INT_TABLE	1
23 #define TEST_MAIN_STR_TABLE	2
24 #define TEST_MAIN_BOOL_TABLE	3
25 #define TEST_MAIN_TIME_TABLE	4
26 #define TEST_MAIN_RAW_TABLE	5
27 #define TEST_MAIN_NINT_TABLE	6
28 #define TEST_MAIN_NBOOL_TABLE	7
29 #define TEST_MAIN_LONG_TABLE	8
30 
31 #define CA_TEST_MAIN_INT_TABLE(v)     TEST_MAIN_INT_TABLE, CHECK_CPTR(TEST_MAIN, CONFIG_INT_TABLE, (v))
32 #define CA_TEST_MAIN_STR_TABLE(v)     TEST_MAIN_STR_TABLE, CHECK_CPTR(TEST_MAIN, CONFIG_STR_TABLE, (v))
33 #define CA_TEST_MAIN_BOOL_TABLE(v)    TEST_MAIN_BOOL_TABLE, CHECK_CPTR(TEST_MAIN, CONFIG_BOOL_TABLE, (v))
34 #define CA_TEST_MAIN_TIME_TABLE(v)    TEST_MAIN_TIME_TABLE, CHECK_CPTR(TEST_MAIN, CONFIG_TIME_TABLE, (v))
35 #define CA_TEST_MAIN_RAW_TABLE(v)     TEST_MAIN_RAW_TABLE, CHECK_CPTR(TEST_MAIN, CONFIG_RAW_TABLE, (v))
36 #define CA_TEST_MAIN_NINT_TABLE(v)    TEST_MAIN_NINT_TABLE, CHECK_CPTR(TEST_MAIN, CONFIG_NINT_TABLE, (v))
37 #define CA_TEST_MAIN_NBOOL_TABLE(v)   TEST_MAIN_NBOOL_TABLE, CHECK_CPTR(TEST_MAIN, CONFIG_NBOOL_TABLE, (v))
38 #define CA_TEST_MAIN_LONG_TABLE(v)    TEST_MAIN_LONG_TABLE, CHECK_CPTR(TEST_MAIN, CONFIG_LONG_TABLE, (v))
39 
40 CHECK_CPTR_HELPER_DCL(TEST_MAIN, CONFIG_INT_TABLE);
41 CHECK_CPTR_HELPER_DCL(TEST_MAIN, CONFIG_STR_TABLE);
42 CHECK_CPTR_HELPER_DCL(TEST_MAIN, CONFIG_BOOL_TABLE);
43 CHECK_CPTR_HELPER_DCL(TEST_MAIN, CONFIG_TIME_TABLE);
44 CHECK_CPTR_HELPER_DCL(TEST_MAIN, CONFIG_RAW_TABLE);
45 CHECK_CPTR_HELPER_DCL(TEST_MAIN, CONFIG_NINT_TABLE);
46 CHECK_CPTR_HELPER_DCL(TEST_MAIN, CONFIG_NBOOL_TABLE);
47 CHECK_CPTR_HELPER_DCL(TEST_MAIN, CONFIG_LONG_TABLE);
48 
49 typedef void (*TEST_DRIVER_FN) (int, char **);
50 extern NORETURN test_main(int, char **, TEST_DRIVER_FN,...);
51 
52 /* LICENSE
53 /* .ad
54 /* .fi
55 /*	The Secure Mailer license must be distributed with this software.
56 /* AUTHOR(S)
57 /*	Wietse Venema
58 /*	IBM T.J. Watson Research
59 /*	P.O. Box 704
60 /*	Yorktown Heights, NY 10598, USA
61 /*
62 /*	Wietse Venema
63 /*	Google, Inc.
64 /*	111 8th Avenue
65 /*	New York, NY 10011, USA
66 /*--*/
67