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