Skip to content
GitLab
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
Menu
Open sidebar
Joe Martin
OpenLDAP
Commits
77716069
Commit
77716069
authored
Feb 01, 2018
by
Nadezhda Ivanova
Committed by
Ondřej Kuzník
Nov 17, 2020
Browse files
Use slapd's config.h
parent
2d330325
Changes
3
Hide whitespace changes
Inline
Side-by-side
servers/lloadd/config.c
View file @
77716069
...
...
@@ -165,22 +165,27 @@ static ConfigTable config_back_cf_table[] = {
{
""
,
""
,
0
,
0
,
0
,
ARG_MAGIC
,
&
config_fname
,
NULL
,
NULL
,
NULL
},
{
"argsfile"
,
"file"
,
2
,
2
,
0
,
ARG_STRING
,
&
slapd_args_file
,
NULL
,
NULL
,
NULL
},
{
"concurrency"
,
"level"
,
2
,
2
,
0
,
ARG_INT
|
ARG_MAGIC
|
CFG_CONCUR
,
&
config_generic
,
NULL
,
NULL
,
NULL
},
{
"backend"
,
"backend options"
,
2
,
0
,
0
,
ARG_MAGIC
|
CFG_BACKEND
,
&
config_backend
,
NULL
,
NULL
,
NULL
},
{
"bindconf"
,
"backend credentials"
,
2
,
0
,
0
,
ARG_MAGIC
|
CFG_BINDCONF
,
&
config_bindconf
,
NULL
,
NULL
,
NULL
},
{
"gentlehup"
,
"on|off"
,
2
,
2
,
0
,
#ifdef SIGHUP
...
...
@@ -190,42 +195,52 @@ static ConfigTable config_back_cf_table[] = {
ARG_IGNORED
,
NULL
,
#endif
NULL
,
NULL
,
NULL
},
{
"idletimeout"
,
"timeout"
,
2
,
2
,
0
,
ARG_INT
,
&
global_idletimeout
,
NULL
,
NULL
,
NULL
},
{
"include"
,
"file"
,
2
,
2
,
0
,
ARG_MAGIC
,
&
config_include
,
NULL
,
NULL
,
NULL
},
{
"io-threads"
,
"count"
,
2
,
0
,
0
,
ARG_UINT
|
ARG_MAGIC
|
CFG_IOTHREADS
,
&
config_generic
,
NULL
,
NULL
,
NULL
},
{
"logfile"
,
"file"
,
2
,
2
,
0
,
ARG_STRING
|
ARG_MAGIC
|
CFG_LOGFILE
,
&
config_generic
,
NULL
,
NULL
,
NULL
},
{
"loglevel"
,
"level"
,
2
,
0
,
0
,
ARG_MAGIC
,
&
config_loglevel
,
NULL
,
NULL
,
NULL
},
{
"pidfile"
,
"file"
,
2
,
2
,
0
,
ARG_STRING
,
&
slapd_pid_file
,
NULL
,
NULL
,
NULL
},
{
"restrict"
,
"op_list"
,
2
,
0
,
0
,
ARG_MAGIC
,
&
config_restrict
,
NULL
,
NULL
,
NULL
},
{
"sockbuf_max_incoming_client"
,
"max"
,
2
,
2
,
0
,
ARG_BER_LEN_T
,
&
sockbuf_max_incoming_client
,
NULL
,
NULL
,
NULL
},
{
"sockbuf_max_incoming_upstream"
,
"max"
,
2
,
2
,
0
,
ARG_BER_LEN_T
,
&
sockbuf_max_incoming_upstream
,
NULL
,
NULL
,
NULL
},
{
"tcp-buffer"
,
"[listener=<listener>] [{read|write}=]size"
,
0
,
0
,
0
,
#ifdef LDAP_TCP_BUFFER
...
...
@@ -235,22 +250,27 @@ static ConfigTable config_back_cf_table[] = {
ARG_IGNORED
,
NULL
,
#endif
NULL
,
NULL
,
NULL
},
{
"threads"
,
"count"
,
2
,
2
,
0
,
ARG_INT
|
ARG_MAGIC
|
CFG_THREADS
,
&
config_generic
,
NULL
,
NULL
,
NULL
},
{
"threadqueues"
,
"count"
,
2
,
2
,
0
,
ARG_INT
|
ARG_MAGIC
|
CFG_THREADQS
,
&
config_generic
,
NULL
,
NULL
,
NULL
},
{
"max_pdus_per_cycle"
,
"count"
,
2
,
2
,
0
,
ARG_INT
|
ARG_MAGIC
|
CFG_RESCOUNT
,
&
config_generic
,
NULL
,
NULL
,
NULL
},
{
"feature"
,
"name"
,
2
,
0
,
0
,
ARG_MAGIC
,
&
config_feature
,
NULL
,
NULL
,
NULL
},
{
"TLSCACertificate"
,
NULL
,
2
,
2
,
0
,
#ifdef HAVE_TLS
...
...
@@ -260,6 +280,7 @@ static ConfigTable config_back_cf_table[] = {
ARG_IGNORED
,
NULL
,
#endif
NULL
,
NULL
,
NULL
},
{
"TLSCACertificateFile"
,
NULL
,
2
,
2
,
0
,
#ifdef HAVE_TLS
...
...
@@ -269,6 +290,7 @@ static ConfigTable config_back_cf_table[] = {
ARG_IGNORED
,
NULL
,
#endif
NULL
,
NULL
,
NULL
},
{
"TLSCACertificatePath"
,
NULL
,
2
,
2
,
0
,
#ifdef HAVE_TLS
...
...
@@ -278,6 +300,7 @@ static ConfigTable config_back_cf_table[] = {
ARG_IGNORED
,
NULL
,
#endif
NULL
,
NULL
,
NULL
},
{
"TLSCertificate"
,
NULL
,
2
,
2
,
0
,
#ifdef HAVE_TLS
...
...
@@ -287,6 +310,7 @@ static ConfigTable config_back_cf_table[] = {
ARG_IGNORED
,
NULL
,
#endif
NULL
,
NULL
,
NULL
},
{
"TLSCertificateFile"
,
NULL
,
2
,
2
,
0
,
#ifdef HAVE_TLS
...
...
@@ -296,6 +320,7 @@ static ConfigTable config_back_cf_table[] = {
ARG_IGNORED
,
NULL
,
#endif
NULL
,
NULL
,
NULL
},
{
"TLSCertificateKey"
,
NULL
,
2
,
2
,
0
,
#ifdef HAVE_TLS
...
...
@@ -305,6 +330,7 @@ static ConfigTable config_back_cf_table[] = {
ARG_IGNORED
,
NULL
,
#endif
NULL
,
NULL
,
NULL
},
{
"TLSCertificateKeyFile"
,
NULL
,
2
,
2
,
0
,
#ifdef HAVE_TLS
...
...
@@ -314,6 +340,7 @@ static ConfigTable config_back_cf_table[] = {
ARG_IGNORED
,
NULL
,
#endif
NULL
,
NULL
,
NULL
},
{
"TLSCipherSuite"
,
NULL
,
2
,
2
,
0
,
#ifdef HAVE_TLS
...
...
@@ -323,6 +350,7 @@ static ConfigTable config_back_cf_table[] = {
ARG_IGNORED
,
NULL
,
#endif
NULL
,
NULL
,
NULL
},
{
"TLSCRLCheck"
,
NULL
,
2
,
2
,
0
,
#if defined(HAVE_TLS) && defined(HAVE_OPENSSL)
...
...
@@ -332,6 +360,7 @@ static ConfigTable config_back_cf_table[] = {
ARG_IGNORED
,
NULL
,
#endif
NULL
,
NULL
,
NULL
},
{
"TLSCRLFile"
,
NULL
,
2
,
2
,
0
,
#if defined(HAVE_GNUTLS)
...
...
@@ -341,6 +370,7 @@ static ConfigTable config_back_cf_table[] = {
ARG_IGNORED
,
NULL
,
#endif
NULL
,
NULL
,
NULL
},
{
"TLSRandFile"
,
NULL
,
2
,
2
,
0
,
#ifdef HAVE_TLS
...
...
@@ -350,6 +380,7 @@ static ConfigTable config_back_cf_table[] = {
ARG_IGNORED
,
NULL
,
#endif
NULL
,
NULL
,
NULL
},
{
"TLSVerifyClient"
,
NULL
,
2
,
2
,
0
,
#ifdef HAVE_TLS
...
...
@@ -359,6 +390,7 @@ static ConfigTable config_back_cf_table[] = {
ARG_IGNORED
,
NULL
,
#endif
NULL
,
NULL
,
NULL
},
{
"TLSDHParamFile"
,
NULL
,
2
,
2
,
0
,
#ifdef HAVE_TLS
...
...
@@ -368,6 +400,7 @@ static ConfigTable config_back_cf_table[] = {
ARG_IGNORED
,
NULL
,
#endif
NULL
,
NULL
,
NULL
},
{
"TLSECName"
,
NULL
,
2
,
2
,
0
,
#ifdef HAVE_TLS
...
...
@@ -377,6 +410,7 @@ static ConfigTable config_back_cf_table[] = {
ARG_IGNORED
,
NULL
,
#endif
NULL
,
NULL
,
NULL
},
{
"TLSProtocolMin"
,
NULL
,
2
,
2
,
0
,
#ifdef HAVE_TLS
...
...
@@ -386,10 +420,12 @@ static ConfigTable config_back_cf_table[] = {
ARG_IGNORED
,
NULL
,
#endif
NULL
,
NULL
,
NULL
},
{
"iotimeout"
,
"ms timeout"
,
2
,
2
,
0
,
ARG_INT
|
ARG_MAGIC
|
CFG_IOTIMEOUT
,
&
config_generic
,
NULL
,
NULL
,
NULL
},
{
NULL
,
NULL
,
0
,
0
,
0
,
ARG_IGNORED
,
NULL
}
...
...
@@ -2795,3 +2831,9 @@ lload_config_check_my_url( const char *url, LDAPURLDesc *lud )
}
return
NULL
;
}
int
lload_back_init_cf
(
BackendInfo
*
bi
)
{
return
0
;
}
servers/lloadd/config.h
View file @
77716069
...
...
@@ -14,127 +14,19 @@
* <http://www.OpenLDAP.org/license.html>.
*/
#ifndef CONFIG_H
#define CONFIG_H
#ifndef
LLOAD_
CONFIG_H
/* not CONFIG_H because it overlaps with the one from slapd */
#define
LLOAD_
CONFIG_H
#include
<ac/string.h>
#include
"../slapd/config.h"
LDAP_BEGIN_DECL
typedef
struct
ConfigTable
{
const
char
*
name
;
const
char
*
what
;
int
min_args
;
int
max_args
;
int
length
;
unsigned
int
arg_type
;
void
*
arg_item
;
}
ConfigTable
;
/* search entries are returned according to this order */
typedef
enum
{
Cft_Abstract
=
0
,
Cft_Global
,
Cft_Module
,
Cft_Schema
,
Cft_Backend
,
Cft_Database
,
Cft_Overlay
,
Cft_Misc
/* backend/overlay defined */
}
ConfigType
;
#define ARGS_USERLAND 0x00000fff
/* types are enumerated, not a bitmask */
#define ARGS_TYPES 0x0000f000
#define ARG_INT 0x00001000
#define ARG_LONG 0x00002000
#define ARG_BER_LEN_T 0x00003000
#define ARG_ON_OFF 0x00004000
#define ARG_STRING 0x00005000
#define ARG_BERVAL 0x00006000
#define ARG_UINT 0x00008000
#define ARG_ULONG 0x0000a000
#define ARG_BINARY 0x0000b000
#define ARGS_SYNTAX 0xffff0000
#define ARG_IGNORED 0x00080000
#define ARG_PAREN 0x01000000
#define ARG_NONZERO 0x02000000
#define ARG_NO_INSERT 0x04000000
/* no arbitrary inserting */
#define ARG_NO_DELETE 0x08000000
/* no runtime deletes */
#define ARG_UNIQUE 0x10000000
#define ARG_QUOTE 0x20000000
/* wrap with quotes before parsing */
#define ARG_OFFSET 0x40000000
#define ARG_MAGIC 0x80000000
#define ARG_BAD_CONF 0xdead0000
/* overload return values */
struct
config_args_s
;
typedef
int
(
ConfigDriver
)(
struct
config_args_s
*
c
);
struct
config_reply_s
{
int
err
;
char
msg
[
SLAP_TEXT_BUFLEN
];
};
typedef
struct
config_args_s
{
int
argc
;
char
**
argv
;
int
argv_size
;
char
*
line
;
char
*
tline
;
const
char
*
fname
;
int
lineno
;
int
linelen
;
char
log
[
MAXPATHLEN
+
STRLENOF
(
": line "
)
+
LDAP_PVT_INTTYPE_CHARS
(
unsigned
long
)];
#define cr_msg reply.msg
ConfigReply
reply
;
int
depth
;
int
valx
;
/* multi-valued value index */
/* parsed first val for simple cases */
union
{
int
v_int
;
unsigned
v_uint
;
long
v_long
;
size_t
v_ulong
;
ber_len_t
v_ber_t
;
char
*
v_string
;
struct
berval
v_bv
;
}
values
;
/* return values for emit mode */
BerVarray
rvalue_vals
;
BerVarray
rvalue_nvals
;
#define SLAP_CONFIG_EMIT 0x2000
/* emit instead of set */
#define SLAP_CONFIG_ADD 0x4000
/* config file add vs LDAP add */
int
op
;
int
type
;
/* ConfigTable.arg_type & ARGS_USERLAND */
void
*
ca_private
;
/* anything */
#ifndef SLAP_CONFIG_CLEANUP_MAX
#define SLAP_CONFIG_CLEANUP_MAX 16
#endif
ConfigDriver
*
cleanups
[
SLAP_CONFIG_CLEANUP_MAX
];
ConfigType
table
;
/* which config table did we come from */
int
num_cleanups
;
}
ConfigArgs
;
#define value_int values.v_int
#define value_uint values.v_uint
#define value_long values.v_long
#define value_ulong values.v_ulong
#define value_ber_t values.v_ber_t
#define value_string values.v_string
#define value_bv values.v_bv
int
lload_config_fp_parse_line
(
ConfigArgs
*
c
);
int
lload_config_get_vals
(
ConfigTable
*
ct
,
ConfigArgs
*
c
);
int
lload_config_add_vals
(
ConfigTable
*
ct
,
ConfigArgs
*
c
);
int
config_push_cleanup
(
ConfigArgs
*
c
,
ConfigDriver
*
cleanup
);
void
lload_init_config_argv
(
ConfigArgs
*
c
);
int
lload_read_config_file
(
const
char
*
fname
,
int
depth
,
ConfigArgs
*
cf
,
ConfigTable
*
cft
);
...
...
@@ -144,4 +36,4 @@ LloadListener *lload_config_check_my_url( const char *url, LDAPURLDesc *lud );
LDAP_END_DECL
#endif
/* CONFIG_H */
#endif
/*
LLOAD_
CONFIG_H */
servers/lloadd/proto-lload.h
View file @
77716069
...
...
@@ -33,9 +33,6 @@
LDAP_BEGIN_DECL
struct
config_args_s
;
/* config.h */
struct
config_reply_s
;
/* config.h */
/*
* backend.c
*/
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment