DNAME, would trigger an INSIST(!search.need_cleanup)
assertion. [RT #399]
+ 515. [bug] The ssu table was not being attached / detached
+ by dns_zone_[sg]etssutable. [RT#397]
+
511. [bug] The message code could throw an assertion on an
out of memory failure. [RT #392]
* SOFTWARE.
*/
-/* $Id: update.c,v 1.58 2000/06/22 21:49:37 tale Exp $ */
+/* $Id: update.c,v 1.58.2.1 2000/10/17 18:48:09 gson Exp $ */
#include <config.h>
if (db != NULL)
dns_db_detach(&db);
+ if (ssutable != NULL)
+ dns_ssutable_detach(&ssutable);
+
if (zone != NULL)
dns_zone_detach(&zone);
* SOFTWARE.
*/
-/* $Id: zone.c,v 1.152.2.13 2000/09/21 10:10:05 marka Exp $ */
+/* $Id: zone.c,v 1.152.2.14 2000/10/17 18:48:05 gson Exp $ */
#include <config.h>
REQUIRE(DNS_ZONE_VALID(zone));
REQUIRE(table != NULL);
REQUIRE(*table == NULL);
- *table = zone->ssutable;
+
+ LOCK(&zone->lock);
+ if (zone->ssutable != NULL)
+ dns_ssutable_attach(zone->ssutable, table);
+ UNLOCK(&zone->lock);
}
void
dns_zone_setssutable(dns_zone_t *zone, dns_ssutable_t *table) {
REQUIRE(DNS_ZONE_VALID(zone));
- REQUIRE(table != NULL);
- zone->ssutable = table;
+
+ LOCK(&zone->lock);
+ if (zone->ssutable != NULL)
+ dns_ssutable_detach(&zone->ssutable);
+ if (table != NULL)
+ dns_ssutable_attach(table, &zone->ssutable);
+ UNLOCK(&zone->lock);
}
void
* SOFTWARE.
*/
-/* $Id: zoneconf.c,v 1.43.2.1 2000/07/25 22:47:35 gson Exp $ */
+/* $Id: zoneconf.c,v 1.43.2.2 2000/10/17 18:48:07 gson Exp $ */
#include <config.h>
dns_zone_setupdateacl,
dns_zone_clearupdateacl));
- dns_zone_getssutable(zone, &ssutable);
- if (ssutable != NULL)
- dns_ssutable_detach(&ssutable);
result = dns_c_zone_getssuauth(czone, &ssutable);
- if (result == ISC_R_SUCCESS) {
- dns_ssutable_t *newssutable = NULL;
- dns_ssutable_attach(ssutable, &newssutable);
- dns_zone_setssutable(zone, newssutable);
- }
+ if (result == ISC_R_SUCCESS)
+ dns_zone_setssutable(zone, ssutable);
result = dns_c_zone_getsigvalidityinterval(czone, &uintval);
if (result != ISC_R_SUCCESS && cview != NULL)