aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMartin Kittel <martin.kittel@sap.com>2017-03-15 17:21:28 +0100
committerGreg Hudson <ghudson@mit.edu>2017-07-17 17:14:50 -0400
commit5293591d56d47e4345c958acaa68f095e0919d76 (patch)
tree313bae9aeff617fd486a22b9079321c48c3fd89b
parentb76821281250e0e06727f30bac05afe01ec794d2 (diff)
downloadkrb5-5293591d56d47e4345c958acaa68f095e0919d76.zip
krb5-5293591d56d47e4345c958acaa68f095e0919d76.tar.gz
krb5-5293591d56d47e4345c958acaa68f095e0919d76.tar.bz2
Fix krb5int_open_plugin_dirs() error handling
In krb5int_open_plugin_dirs(), if constructing filepath fails, filepath is set to null but accessed a few lines later. Add an error check before calling krb5int_open_plugin(). (cherry picked from commit ec56309e95e37cb3c91bad2a696b9bd094620876) ticket: 8565 version_fixed: 1.14.6
-rw-r--r--src/util/support/plugins.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/util/support/plugins.c b/src/util/support/plugins.c
index b0bb2ad..47368be 100644
--- a/src/util/support/plugins.c
+++ b/src/util/support/plugins.c
@@ -592,9 +592,10 @@ krb5int_open_plugin_dirs (const char * const *dirnames,
}
}
- if (krb5int_open_plugin (filepath, &handle, ep) == 0) {
+ if (!err && krb5int_open_plugin(filepath, &handle, ep) == 0) {
err = krb5int_plugin_file_handle_array_add (&h, &count, handle);
- if (!err) { handle = NULL; } /* h takes ownership */
+ if (!err)
+ handle = NULL; /* h takes ownership */
}
free(filepath);