}
c->c_peer_domain.bv_len = 0;
if(c->c_peer_name.bv_val != NULL) {
-#ifdef LDAP_PF_LOCAL
- /*
- * If peer was a domain socket, unlink. Mind you,
- * they may be un-named. Should we leave this to
- * the client?
- */
- if (strncmp(c->c_peer_name.bv_val, "PATH=",
- sizeof("PATH=") - 1) == 0) {
- char *path = c->c_peer_name.bv_val
- + sizeof("PATH=") - 1;
- if (path[0] != '\0') {
- (void)unlink(path);
- }
- }
-#endif /* LDAP_PF_LOCAL */
-
free(c->c_peer_name.bv_val);
c->c_peer_name.bv_val = NULL;
}
LDAP_STAILQ_REMOVE( &conn->c_ops, arg->co_op, slap_op, o_next);
LDAP_STAILQ_NEXT(arg->co_op, o_next) = NULL;
- slap_op_free( arg->co_op );
+#ifdef LDAP_CLIENT_UPDATE
+ if ( !( arg->co_op->o_clientupdate_type & SLAP_LCUP_PERSIST ) )
+#endif /* LDAP_CLIENT_UPDATE */
+ {
+ slap_op_free( arg->co_op );
+ }
arg->co_op = NULL;
arg->co_conn = NULL;
free( (char *) arg );