summaryrefslogtreecommitdiffstats
path: root/ldap/servers/plugins/replication/repl5_agmtlist.c
diff options
context:
space:
mode:
authorRich Megginson <rmeggins@redhat.com>2005-05-11 18:51:54 +0000
committerRich Megginson <rmeggins@redhat.com>2005-05-11 18:51:54 +0000
commit37bff7c59f8cca09ba2a2e6eb3e6c852327bbb17 (patch)
tree177c4e3e28f643b19d65010f1acae3381eb06982 /ldap/servers/plugins/replication/repl5_agmtlist.c
parent2e23e027f6ec5917e81537c129de8001c9a16b30 (diff)
downloadds-37bff7c59f8cca09ba2a2e6eb3e6c852327bbb17.tar.gz
ds-37bff7c59f8cca09ba2a2e6eb3e6c852327bbb17.tar.xz
ds-37bff7c59f8cca09ba2a2e6eb3e6c852327bbb17.zip
Bug(s) fixed: 157377
Bug Description: RL16: Server core dumped while configuring replication agreements Reviewed by: David (Thanks!) Fix Description: The code for handling bad agreements was wrong. It was not returning the correct error code. The result of this is that the client did not receive an appropriate error code/message from the server. The reason for the core dump was that, even though the agreement was not created, the DSE entry was still there, causing the server to become very confused. Returning the correct error code causes the server to refuse to create the bad DSE entry. Platforms tested: RHEL3 Flag Day: no Doc impact: no QA impact: should be covered by regular nightly and manual testing New Tests integrated into TET: none
Diffstat (limited to 'ldap/servers/plugins/replication/repl5_agmtlist.c')
-rw-r--r--ldap/servers/plugins/replication/repl5_agmtlist.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/ldap/servers/plugins/replication/repl5_agmtlist.c b/ldap/servers/plugins/replication/repl5_agmtlist.c
index b8abe4c0..2206f83d 100644
--- a/ldap/servers/plugins/replication/repl5_agmtlist.c
+++ b/ldap/servers/plugins/replication/repl5_agmtlist.c
@@ -147,7 +147,7 @@ add_new_agreement(Slapi_Entry *e)
Object *repl_obj = NULL;
Object *ro = NULL;
- if (ra == NULL) return 0;
+ if (ra == NULL) return 1; /* tell search result handler callback this entry was not sent */
ro = object_new((void *)ra, agmt_delete);
objset_add_obj(agmt_set, ro);