From: Howard Chu Date: Sun, 15 Nov 2009 21:48:49 +0000 (+0000) Subject: ITS#6283 add missing env options X-Git-Tag: ACLCHECK_0~111 X-Git-Url: https://git.sur5r.net/?a=commitdiff_plain;h=b99fdb6506fa6446f297b5db2f1fe3fce9f6035a;p=openldap ITS#6283 add missing env options --- diff --git a/libraries/libldap/init.c b/libraries/libldap/init.c index 7349e113ae..eb1eb6f787 100644 --- a/libraries/libldap/init.c +++ b/libraries/libldap/init.c @@ -427,11 +427,34 @@ static void openldap_ldap_init_w_env( ldap_int_sasl_config( gopts, attrs[i].offset, value ); #endif break; + case ATTR_GSSAPI: +#ifdef HAVE_GSSAPI + ldap_int_gssapi_config( gopts, attrs[i].offset, value ); +#endif + break; case ATTR_TLS: #ifdef HAVE_TLS ldap_pvt_tls_config( NULL, attrs[i].offset, value ); #endif break; + case ATTR_OPT_TV: { + struct timeval tv; + char *next; + tv.tv_usec = 0; + tv.tv_sec = strtol( value, &next, 10 ); + if ( next != value && next[ 0 ] == '\0' && tv.tv_sec > 0 ) { + (void)ldap_set_option( NULL, attrs[i].offset, (const void *)&tv ); + } + } break; + case ATTR_OPT_INT: { + long l; + char *next; + l = strtol( value, &next, 10 ); + if ( next != value && next[ 0 ] == '\0' && l > 0 && (long)((int)l) == l ) { + int v = (int)l; + (void)ldap_set_option( NULL, attrs[i].offset, (const void *)&v ); + } + } break; } } }