lib/base: introduce HEIM_BASE_USE_PATH_TOKENS
commit30745617960c85586d1b8a067c89d4abecf6f465
authorJeffrey Altman <jaltman@secure-endpoints.com>
Mon, 25 May 2020 18:16:35 +0000 (25 14:16 -0400)
committerNicolas Williams <nico@twosigma.com>
Tue, 26 May 2020 16:48:45 +0000 (26 11:48 -0500)
tree473aaeaa2221ff21090e1bed20fd9abee968de6b
parentf77618ef15d37b7abea2d17c00bd4aa8f2406fef
lib/base: introduce HEIM_BASE_USE_PATH_TOKENS

KRB5_USE_PATH_TOKENS cannot be used within lib/base as its value
is declared in lib/krb5/krb5.h.  Declare HEIM_BASE_USE_PATH_TOKENS
in lib/base/baselocl.h and test for it in
heim_config_parse_file_multi().

By conditionalizing heim_config_parse_file_multi() behavior on
KRB5_USE_PATH_TOKENS heim_expand_path_tokens() is not executed
and open() is called on a path without token substitution.  As a
result open() always fails with ENOENT.

Change-Id: I29dc018bc560519b76314232b2d51f53bde6313c
lib/base/baselocl.h
lib/base/config_file.c
lib/base/log.c