diff options
author | Don Anderson <dda@ddanderson.com> | 2016-02-03 13:58:59 -0500 |
---|---|---|
committer | Don Anderson <dda@ddanderson.com> | 2016-02-03 13:58:59 -0500 |
commit | 1e23c4eff5c745a0e0071067fb67649f9fcfb726 (patch) | |
tree | fff47b808b777d1fcb5bd0031d5f0cf60986ee08 | |
parent | 32bb3fc49574b20f7a965036fd588b93ae87e9ec (diff) | |
download | mongo-1e23c4eff5c745a0e0071067fb67649f9fcfb726.tar.gz |
SERVER-22438. Clarify encryptor customize code and resolve coverity warning.
-rw-r--r-- | src/conn/conn_api.c | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/src/conn/conn_api.c b/src/conn/conn_api.c index a53f7d96e64..27977de63b2 100644 --- a/src/conn/conn_api.c +++ b/src/conn/conn_api.c @@ -402,7 +402,7 @@ __wt_encryptor_config(WT_SESSION_IMPL *session, WT_CONFIG_ITEM *cval, { WT_CONNECTION_IMPL *conn; WT_DECL_RET; - WT_ENCRYPTOR *encryptor; + WT_ENCRYPTOR *custom, *encryptor; WT_KEYED_ENCRYPTOR *kenc; WT_NAMED_ENCRYPTOR *nenc; uint64_t bucket, hash; @@ -440,12 +440,13 @@ __wt_encryptor_config(WT_SESSION_IMPL *session, WT_CONFIG_ITEM *cval, WT_ERR(__wt_strndup(session, keyid->str, keyid->len, &kenc->keyid)); encryptor = nenc->encryptor; if (encryptor->customize != NULL) { + custom = NULL; WT_ERR(encryptor->customize(encryptor, &session->iface, - cfg_arg, &encryptor)); - if (encryptor == NULL) - encryptor = nenc->encryptor; - else + cfg_arg, &custom)); + if (custom != NULL) { kenc->owned = 1; + encryptor = custom; + } } WT_ERR(encryptor->sizing(encryptor, &session->iface, &kenc->size_const)); |