From c3de6ba19b623976e96a647119f69f243468e946 Mon Sep 17 00:00:00 2001 From: Ralf Haferkamp Date: Thu, 10 Dec 2009 13:07:13 +0000 Subject: [PATCH] apply frontend limits when deleting olcSizeLimit from a database (more forITS#6428) --- servers/slapd/bconfig.c | 23 ++++++++++++++++------- 1 file changed, 16 insertions(+), 7 deletions(-) diff --git a/servers/slapd/bconfig.c b/servers/slapd/bconfig.c index ae6dc4833f..483a798387 100644 --- a/servers/slapd/bconfig.c +++ b/servers/slapd/bconfig.c @@ -2208,13 +2208,22 @@ config_sizelimit(ConfigArgs *c) { rc = 1; return rc; } else if ( c->op == LDAP_MOD_DELETE ) { - /* Reset to defaults */ - lim->lms_s_soft = SLAPD_DEFAULT_SIZELIMIT; - lim->lms_s_hard = 0; - lim->lms_s_unchecked = -1; - lim->lms_s_pr = 0; - lim->lms_s_pr_hide = 0; - lim->lms_s_pr_total = 0; + /* Reset to defaults or values from frontend */ + if ( c->be == frontendDB ) { + lim->lms_s_soft = SLAPD_DEFAULT_SIZELIMIT; + lim->lms_s_hard = 0; + lim->lms_s_unchecked = -1; + lim->lms_s_pr = 0; + lim->lms_s_pr_hide = 0; + lim->lms_s_pr_total = 0; + } else { + lim->lms_s_soft = frontendDB->be_def_limit.lms_s_soft; + lim->lms_s_hard = frontendDB->be_def_limit.lms_s_hard; + lim->lms_s_unchecked = frontendDB->be_def_limit.lms_s_unchecked; + lim->lms_s_pr = frontendDB->be_def_limit.lms_s_pr; + lim->lms_s_pr_hide = frontendDB->be_def_limit.lms_s_pr_hide; + lim->lms_s_pr_total = frontendDB->be_def_limit.lms_s_pr_total; + } goto ok; } for(i = 1; i < c->argc; i++) { -- 2.39.5