diff options
author | Endi S. Dewata <edewata@redhat.com> | 2010-07-10 02:57:55 -0500 |
---|---|---|
committer | Noriko Hosoi <nhosoi@redhat.com> | 2010-08-23 15:32:26 -0700 |
commit | 48d11ee1c350bde4299619a5a54c62987f575ef1 (patch) | |
tree | 6008afc84f22a8e2b0980c9b4036239818c17a83 | |
parent | a25be51e417e3c7b31333edeff861fede376798f (diff) | |
download | ds-48d11ee1c350bde4299619a5a54c62987f575ef1.tar.gz ds-48d11ee1c350bde4299619a5a54c62987f575ef1.tar.xz ds-48d11ee1c350bde4299619a5a54c62987f575ef1.zip |
Bug 611790 - fix coverify Defect Type: Null pointer dereferences issues 11940 - 12166
https://bugzilla.redhat.com/show_bug.cgi?id=611790
Resolves: bug 611790
Bug description: Fix coverify Defect Type: Null pointer dereferences issues 11940 - 12166
Fix description: Catch possible NULL pointer in my_ber_scanf_value() and my_ber_scanf_attr().
-rw-r--r-- | ldap/servers/plugins/replication/repl5_total.c | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/ldap/servers/plugins/replication/repl5_total.c b/ldap/servers/plugins/replication/repl5_total.c index 5416d0c5..5bf37428 100644 --- a/ldap/servers/plugins/replication/repl5_total.c +++ b/ldap/servers/plugins/replication/repl5_total.c @@ -481,14 +481,14 @@ my_ber_scanf_value(BerElement *ber, Slapi_Value **value, PRBool *deleted) PR_ASSERT(ber && value && deleted); - *value = NULL; - if (NULL == ber && NULL == value) { slapi_log_error(SLAPI_LOG_FATAL, repl_plugin_name, "my_ber_scanf_value BAD 1\n"); goto loser; } + *value = NULL; + /* Each value is a sequence */ if (ber_scanf(ber, "{O", &attrval) == LBER_ERROR) { @@ -593,11 +593,16 @@ my_ber_scanf_attr (BerElement *ber, Slapi_Attr **attr, PRBool *deleted) int rc; Slapi_Value *value = NULL; + if (attr == NULL) + { + goto loser; + } + PR_ASSERT (ber && attr && deleted); /* allocate the attribute */ *attr = slapi_attr_new (); - if (attr == NULL) + if (*attr == NULL) { goto loser; } |