+/* $OpenLDAP$ */
/*
* Copyright 1998-1999 The OpenLDAP Foundation, All Rights Reserved.
* COPYING RESTRICTIONS APPLY, see COPYRIGHT file
#define ATTR_KV 3
#define ATTR_STRING 4
#define ATTR_TLS 5
+#define ATTR_URLS 6
struct ol_keyvalue {
const char * key;
offsetof(struct ldapoptions, ldo_timelimit)},
{ATTR_STRING, "BASE", NULL,
offsetof(struct ldapoptions, ldo_defbase)},
- {ATTR_STRING, "HOST", NULL,
- offsetof(struct ldapoptions, ldo_defhost)},
{ATTR_INT, "PORT", NULL,
offsetof(struct ldapoptions, ldo_defport)},
+ /* **** keep this around for backward compatibility */
+ {ATTR_URLS, "HOST", NULL, 1},
+ /* **** */
+ {ATTR_URLS, "URL", NULL, 0},
{ATTR_BOOL, "REFERRALS", NULL, LDAP_BOOL_REFERRALS},
- {ATTR_BOOL, "RESTART", NULL, LDAP_BOOL_RESTART},
- {ATTR_BOOL, "DNS", NULL, LDAP_BOOL_DNS},
- {ATTR_BOOL, "TLS", NULL, LDAP_OPT_X_TLS},
- {ATTR_TLS, "TLS_CERT", NULL, LDAP_OPT_X_TLS_CERTFILE},
- {ATTR_TLS, "TLS_KEY", NULL, LDAP_OPT_X_TLS_KEYFILE},
+ {ATTR_BOOL, "RESTART", NULL, LDAP_BOOL_RESTART},
+ {ATTR_BOOL, "DNS", NULL, LDAP_BOOL_DNS},
+ {ATTR_TLS, "TLS", NULL, LDAP_OPT_X_TLS},
+ {ATTR_TLS, "TLS_CERT", NULL, LDAP_OPT_X_TLS_CERTFILE},
+ {ATTR_TLS, "TLS_KEY", NULL, LDAP_OPT_X_TLS_KEYFILE},
{ATTR_TLS, "TLS_CACERT", NULL, LDAP_OPT_X_TLS_CACERTFILE},
{ATTR_TLS, "TLS_CACERTDIR",NULL, LDAP_OPT_X_TLS_CACERTDIR},
{ATTR_TLS, "TLS_REQCERT", NULL, LDAP_OPT_X_TLS_REQUIRE_CERT},
ldap_pvt_tls_config( &gopts, attrs[i].offset, opt );
#endif
break;
+ case ATTR_URLS:
+ if (attrs[i].offset == 0) {
+ ldap_set_option( NULL, LDAP_OPT_URI, opt );
+ } else {
+ ldap_set_option( NULL, LDAP_OPT_HOST_NAME, opt );
+ }
+ break;
}
}
}
break;
case ATTR_TLS:
#ifdef HAVE_TLS
- ldap_pvt_tls_config( attrs[i].offset, value );
+ ldap_pvt_tls_config( &gopts, attrs[i].offset, value );
#endif
break;
+ case ATTR_URLS:
+ if (attrs[i].offset == 0) {
+ ldap_set_option( NULL, LDAP_OPT_URI, value );
+ } else {
+ ldap_set_option( NULL, LDAP_OPT_HOST_NAME, value );
+ }
+ break;
}
}
}
if ( ldap_int_tblsize == 0 )
ldap_int_ip_init();
+ gopts.ldo_debug = 0;
+
gopts.ldo_version = LDAP_VERSION2;
gopts.ldo_deref = LDAP_DEREF_NEVER;
gopts.ldo_timelimit = LDAP_NO_LIMIT;
gopts.ldo_sizelimit = LDAP_NO_LIMIT;
- gopts.ldo_debug = 0;
+ gopts.ldo_tm_api = (struct timeval *)NULL;
+ gopts.ldo_tm_net = (struct timeval *)NULL;
- gopts.ldo_defhost = LDAP_STRDUP("localhost");
+ ldap_url_parselist(&gopts.ldo_defludp, "ldap://localhost/");
gopts.ldo_defport = LDAP_PORT;
gopts.ldo_refhoplimit = LDAP_DEFAULT_REFHOPLIMIT;