From: Tom Yu Date: Wed, 19 May 2010 18:52:36 +0000 (+0000) Subject: pull up r23929 from trunk X-Git-Tag: krb5-1.8.2-beta1~11 X-Git-Url: http://git.tremily.us/?a=commitdiff_plain;h=83e30ba0f4d111a1b64b079ac7b8bb481c2e6b21;p=krb5.git pull up r23929 from trunk ------------------------------------------------------------------------ r23929 | tlyu | 2010-04-22 21:30:48 -0400 (Thu, 22 Apr 2010) | 7 lines ticket: 6697 target_version: 1.8.2 tags: pullup Adapted patch from Arlene Berry to handle dlerror() returning a null pointer. ticket: 6697 version_fixed: 1.8.2 status: resolved git-svn-id: svn://anonsvn.mit.edu/krb5/branches/krb5-1-8@24058 dc483132-0cff-0310-8789-dd5450dbe970 --- diff --git a/src/util/support/plugins.c b/src/util/support/plugins.c index fa7b36ebf..4e9225407 100644 --- a/src/util/support/plugins.c +++ b/src/util/support/plugins.c @@ -268,6 +268,8 @@ krb5int_open_plugin (const char *filepath, struct plugin_file_handle **h, struct handle = dlopen(filepath, PLUGIN_DLOPEN_FLAGS); if (handle == NULL) { const char *e = dlerror(); + if (e == NULL) + e = "unknown failure"; Tprintf ("dlopen(%s): %s\n", filepath, e); err = ENOENT; /* XXX */ krb5int_set_error (ep, err, "%s", e); @@ -335,6 +337,8 @@ krb5int_get_plugin_sym (struct plugin_file_handle *h, sym = dlsym (h->dlhandle, csymname); if (sym == NULL) { const char *e = dlerror (); /* XXX copy and save away */ + if (e == NULL) + e = "unknown failure"; Tprintf ("dlsym(%s): %s\n", csymname, e); err = ENOENT; /* XXX */ krb5int_set_error(ep, err, "%s", e);