Use secure_getenv() instead of issuid()

This commit is contained in:
Nicolas Williams
2017-04-17 16:43:32 -05:00
committed by Viktor Dukhovni
parent cf4efe8de6
commit 7dfad1ab0b
13 changed files with 44 additions and 69 deletions

View File

@@ -101,16 +101,14 @@ p11_module_init_once(void *context)
CK_RV rv;
CK_FUNCTION_LIST_PTR module;
CK_RV (*C_GetFunctionList_fn)(CK_FUNCTION_LIST_PTR_PTR);
char *pkcs11ModulePath = secure_getenv("PKCS11_MODULE_PATH");
if (!issuid()) {
char *pkcs11ModulePath = getenv("PKCS11_MODULE_PATH");
if (pkcs11ModulePath != NULL) {
pkcs11_module_handle =
dlopen(pkcs11ModulePath,
RTLD_LAZY | RTLD_LOCAL | RTLD_GROUP | RTLD_NODELETE);
if (pkcs11_module_handle == NULL)
fprintf(stderr, "p11_module_init(%s): %s\n", pkcs11ModulePath, dlerror());
}
if (pkcs11ModulePath != NULL) {
pkcs11_module_handle =
dlopen(pkcs11ModulePath,
RTLD_LAZY | RTLD_LOCAL | RTLD_GROUP | RTLD_NODELETE);
if (pkcs11_module_handle == NULL)
fprintf(stderr, "p11_module_init(%s): %s\n", pkcs11ModulePath, dlerror());
}
#ifdef PKCS11_MODULE_PATH
if (pkcs11_module_handle == NULL) {

View File

@@ -350,13 +350,11 @@ RAND_file_name(char *filename, size_t size)
const char *e = NULL;
int pathp = 0, ret;
if (!issuid()) {
e = getenv("RANDFILE");
if (e == NULL)
e = getenv("HOME");
if (e)
pathp = 1;
}
e = secure_getenv("RANDFILE");
if (e == NULL)
e = secure_getenv("HOME");
if (e)
pathp = 1;
#ifndef _WIN32
/*