slapd-common.h revision 1.1.1.9 1 /* $NetBSD: slapd-common.h,v 1.1.1.9 2021/08/14 16:05:12 christos Exp $ */
2
3 /* $OpenLDAP$ */
4 /* This work is part of OpenLDAP Software <http://www.openldap.org/>.
5 *
6 * Copyright 1999-2021 The OpenLDAP Foundation.
7 * All rights reserved.
8 *
9 * Redistribution and use in source and binary forms, with or without
10 * modification, are permitted only as authorized by the OpenLDAP
11 * Public License.
12 *
13 * A copy of this license is available in file LICENSE in the
14 * top-level directory of the distribution or, alternatively, at
15 * <http://www.OpenLDAP.org/license.html>.
16 */
17 /* ACKNOWLEDGEMENTS:
18 * This work was initially developed by Howard Chu for inclusion
19 * in OpenLDAP Software.
20 */
21
22 #ifndef SLAPD_COMMON_H
23 #define SLAPD_COMMON_H
24
25 typedef enum {
26 TESTER_TESTER,
27 TESTER_ADDEL,
28 TESTER_BIND,
29 TESTER_MODIFY,
30 TESTER_MODRDN,
31 TESTER_READ,
32 TESTER_SEARCH,
33 TESTER_LAST
34 } tester_t;
35
36 extern struct tester_conn_args * tester_init( const char *pname, tester_t ptype );
37 extern char * tester_uri( char *uri );
38 extern void tester_error( const char *msg );
39 extern void tester_perror( const char *fname, const char *msg );
40 extern void tester_ldap_error( LDAP *ld, const char *fname, const char *msg );
41 extern int tester_ignore_str2errlist( const char *err );
42 extern int tester_ignore_err( int err );
43
44 struct tester_conn_args {
45 char *uri;
46
47 int outerloops;
48 int loops;
49 int retries;
50 int delay;
51
52 int chaserefs;
53
54 int authmethod;
55
56 char *binddn;
57 struct berval pass;
58
59 #ifdef HAVE_CYRUS_SASL
60 char *mech;
61 char *realm;
62 char *authz_id;
63 char *authc_id;
64 char *secprops;
65 void *defaults;
66 #endif
67 };
68
69 #define TESTER_INIT_ONLY (1 << 0)
70 #define TESTER_INIT_NOEXIT (1 << 1)
71 #define TESTER_COMMON_OPTS "CD:d:H:L:l:i:O:R:U:X:Y:r:t:w:x"
72 #define TESTER_COMMON_HELP \
73 "[-C] " \
74 "[-D <dn> [-w <passwd>]] " \
75 "[-d <level>] " \
76 "[-H <uri>]" \
77 "[-i <ignore>] " \
78 "[-l <loops>] " \
79 "[-L <outerloops>] " \
80 "[-r <maxretries>] " \
81 "[-t <delay>] " \
82 "[-O <SASL secprops>] " \
83 "[-R <SASL realm>] " \
84 "[-U <SASL authcid> [-X <SASL authzid>]] " \
85 "[-x | -Y <SASL mech>] "
86
87 extern int tester_config_opt( struct tester_conn_args *config, char opt, char *optarg );
88 extern void tester_config_finish( struct tester_conn_args *config );
89 extern void tester_init_ld( LDAP **ldp, struct tester_conn_args *conf, int flags );
90
91 extern pid_t pid;
92 extern int debug;
93
94 #endif /* SLAPD_COMMON_H */
95