diff options
Diffstat (limited to 'usr/src/cmd/cmd-crypto/cryptoadm/adm_uef.c')
| -rw-r--r-- | usr/src/cmd/cmd-crypto/cryptoadm/adm_uef.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/usr/src/cmd/cmd-crypto/cryptoadm/adm_uef.c b/usr/src/cmd/cmd-crypto/cryptoadm/adm_uef.c index 9e19316d72..88f3787aa4 100644 --- a/usr/src/cmd/cmd-crypto/cryptoadm/adm_uef.c +++ b/usr/src/cmd/cmd-crypto/cryptoadm/adm_uef.c @@ -231,7 +231,12 @@ list_mechlist_for_lib(char *libname, mechlist_t *mlist, (void) strlcpy(libpath, libname, sizeof (libpath)); } - /* Open the provider */ + /* + * Open the provider. Use RTLD_NOW here, as a way to + * catch any providers with incomplete symbols that + * might otherwise cause problems during libpkcs11's + * execution. + */ dldesc = dlopen(libpath, RTLD_NOW); if (dldesc == NULL) { dl_error = dlerror(); |
