diff options
author | Tom Yu <tlyu@mit.edu> | 2007-04-10 21:52:11 +0000 |
---|---|---|
committer | Tom Yu <tlyu@mit.edu> | 2007-04-10 21:52:11 +0000 |
commit | 012a957e29c7a3d66083093602293507406db0eb (patch) | |
tree | e6dd50baa9cab96cb76e5c87e61f28ccba43a416 /src | |
parent | 8c86041853d617eabe613a5906279f8258a543df (diff) | |
download | krb5-012a957e29c7a3d66083093602293507406db0eb.zip krb5-012a957e29c7a3d66083093602293507406db0eb.tar.gz krb5-012a957e29c7a3d66083093602293507406db0eb.tar.bz2 |
pull up r19400 from trunk
r19400@cathode-dark-space: lxs | 2007-04-05 16:33:40 -0400
ticket: new
subject: krb5int_open_plugin_dirs errors out if directory does not exist
If one of the directories in the list doesn't exist and no filenames are
passed in because opendir fails and then the code gets an error. opendir()
failing should not be a fatal error. The function should just move on to
the next directory.
ticket: 5510
version_fixed: 1.6.1
git-svn-id: svn://anonsvn.mit.edu/krb5/branches/krb5-1-6@19417 dc483132-0cff-0310-8789-dd5450dbe970
Diffstat (limited to 'src')
-rw-r--r-- | src/util/support/plugins.c | 12 |
1 files changed, 2 insertions, 10 deletions
diff --git a/src/util/support/plugins.c b/src/util/support/plugins.c index bccb522..b26726f 100644 --- a/src/util/support/plugins.c +++ b/src/util/support/plugins.c @@ -455,17 +455,9 @@ krb5int_open_plugin_dirs (const char * const *dirnames, } else { /* load all plugins in each directory */ #ifndef _WIN32 - DIR *dir = NULL; + DIR *dir = opendir (dirnames[i]); - if (!err) { - dir = opendir(dirnames[i]); - if (dir == NULL) { - err = errno; - Tprintf ("-> error %d/%s\n", err, strerror (err)); - } - } - - while (!err) { + while (dir != NULL && !err) { struct dirent *d = NULL; char *filepath = NULL; struct plugin_file_handle *handle = NULL; |