@ -72,6 +72,9 @@ int parse_config(oal_config_t * const config, const char *file) {
if (strncmp(key, "bindtimeout", 11) == 0) {
config->bindtimeout = atoi(value);
} else
if (strncmp(key, "referrals", 9) == 0) {
config->referrals = atoi(value);
if (strncmp(key, "basedn", 6) == 0) {
config->basedn = strndup(value, valsize);
@ -6,6 +6,7 @@ typedef struct {
char *binddn; /** bind as this user before search for user */
char *bindpass; /** bind with this password */
size_t bindtimeout; /** bind timeout */
short referrals; /** if > 0 - follow referals */
char *basedn; /** where to search for users */
char *userfilter; /** ldap filter for user entry */
char *error; /** parser error */
@ -16,6 +16,7 @@ int main(void) {
}
assert(config.bindtimeout == 5);
assert(config.referrals == 2);
assert(strcmp(config.bindpass, "strong-password") == 0);
assert(strcmp(config.bindurls, "ldap://127.0.0.1 ldaps://172.16.17.1") == 0);
assert(strcmp(config.binddn, "cn=admin,dc=example,dc=com") == 0);
@ -5,5 +5,7 @@ bindpass strong-password
bindtimeout 5
# another comment and empty string below
referrals 2
basedn ou=users,dc=example,dc=com
userfilter (objectClass=inetOrgPerson)