Thank you Phillip because, I have pored over the man pages in depth and have seen the words which Howard has pointed out.   What I have not seen... not one word anywhere... that says "and these default apply to the 'C' library calls".   I fully well understand that the environment variables are used to augment the file-based values.   I have scripts that take advantage of that actual capability.   Have had them for a while.   That is not what I've been asking here.

It's not a big deal and I have followed the source code through those sections that you've mentioned.   I did finally get that.    It's actually a very nice feature and should be made clear in the man pages for the 'C' library calls whenever it is practical for someone to do so.

Actually, looking at the source code is a great learning experience.   I encourage it.   I understand the library much better now than I did just a couple weeks ago.   Still much to learn though.    My next learning (by looking at examples) will be how to actually use SASL EXTERNAL in "C".    There is a good bit of info in the man pages but not comprehensive.    I'm looking at ldapwhoami and the common.c (etc) code.    Lots of good stuff there.

Thanks,
Frank


On Thu, Mar 31, 2016 at 1:08 PM, Philip Guenther <pguenther@proofpoint.com> wrote:
On Thu, 31 Mar 2016, Howard Chu wrote:
> Frank Crow wrote:
...
> > However either case call determines the default host, I'm not yet
> > sure.  It may be that the ldap.conf file (or the environment
> > variables) are only used by the ldap command line tools and not the
> > underlying API itself.
>
> The ldap.conf(5) man page is quite explicit already. "Environmental
> variables may also be used to augment the file based defaults."

I believe his concern is the lack of reference in the ldap_init(3)
documentation to ldap.conf(5) or any statement that the settings described
there affect the ldap_init() behavior.  ldap(3) has a SEE ALSO for
ldap.conf(5), but no prose mention that would explain why you would look
there or when it would be applicable.  <shurg>

Frank, source-wise: ldap_init()->ldap_create()->ldap_int_initialize()
where the bits described in ldap.conf(5) are implemented.


Philip Guenther



--
Frank