On Thu, Mar 21, 2013 at 02:45:11PM +0100, Petr Spacek wrote: > Hello, > > Log successful zone reload after record change. > > This should be last piece of > https://fedorahosted.org/bind-dyndb-ldap/ticket/102
Ack > From 06c414c2922bb09c18afd9fadc52b2b0f4529f90 Mon Sep 17 00:00:00 2001 > From: Petr Spacek <pspa...@redhat.com> > Date: Thu, 21 Mar 2013 14:43:56 +0100 > Subject: [PATCH] Log successful zone reload after record change. > > Signed-off-by: Petr Spacek <pspa...@redhat.com> > --- > src/ldap_helper.c | 19 ++++++++++++++----- > 1 file changed, 14 insertions(+), 5 deletions(-) > > diff --git a/src/ldap_helper.c b/src/ldap_helper.c > index > 7ac5ceda26cd9d734f94d9195388db879be1959e..72105e6093cea7b0bc9fdfc96229afded7650dce > 100644 > --- a/src/ldap_helper.c > +++ b/src/ldap_helper.c > @@ -3494,6 +3494,7 @@ update_record(isc_task_t *task, isc_event_t *event) > dns_zone_t *zone_ptr = NULL; > isc_boolean_t zone_found = ISC_FALSE; > isc_boolean_t zone_reloaded = ISC_FALSE; > + isc_uint32_t serial; > mctx = pevent->mctx; > > UNUSED(task); > @@ -3579,8 +3580,7 @@ update_restart: > if (serial_autoincrement) > CHECK(soa_serial_increment(mctx, inst, &origin)); > else { > - isc_uint32_t dummy; > - CHECK(ldap_get_zone_serial(inst, &origin, &dummy)); > + CHECK(ldap_get_zone_serial(inst, &origin, &serial)); > } > } > > @@ -3594,16 +3594,23 @@ cleanup: > result = zr_get_zone_ptr(inst->zone_register, &origin, > &zone_ptr); > if (result == ISC_R_SUCCESS) > result = dns_zone_load(zone_ptr); > - if (zone_ptr != NULL) > - dns_zone_detach(&zone_ptr); > > if (result == ISC_R_SUCCESS || result == DNS_R_UPTODATE || > result == DNS_R_DYNAMIC || result == DNS_R_CONTINUE) { > /* zone reload succeeded, fire current event again */ > log_debug(1, "restarting update_record after zone > reload " > "caused by change in '%s'", pevent->dn); > zone_reloaded = ISC_TRUE; > - goto update_restart; > + result = dns_zone_getserial2(zone_ptr, &serial); > + if (result == ISC_R_SUCCESS) { > + dns_zone_log(zone_ptr, ISC_LOG_INFO, > + "reloaded serial %u", serial); > + goto update_restart; > + } else { > + dns_zone_log(zone_ptr, ISC_LOG_ERROR, > + "could not get serial after " > + "reload"); > + } > } else { > log_error_r("unable to reload invalid zone; " > "reload triggered by change in '%s'", > @@ -3617,6 +3624,8 @@ cleanup: > pevent->dn, pevent->chgtype); > } > > + if (zone_ptr != NULL) > + dns_zone_detach(&zone_ptr); > if (dns_name_dynamic(&name)) > dns_name_free(&name, inst->mctx); > if (dns_name_dynamic(&prevname)) > -- > 1.7.11.7 > -- Adam Tkac, Red Hat, Inc. _______________________________________________ Freeipa-devel mailing list Freeipa-devel@redhat.com https://www.redhat.com/mailman/listinfo/freeipa-devel