Skip to content
Snippets Groups Projects
Commit 46d91a7c authored by Daniel Salzman's avatar Daniel Salzman
Browse files

conf: use static buffer instead of dynamic memory for catalog name

parent b27191a9
No related branches found
No related tags found
No related merge requests found
......@@ -204,8 +204,8 @@ conf_val_t conf_zone_get_txn(
// Check if this is a catalog member zone.
if (conf->catalog != NULL) {
knot_dname_t *catalog = NULL;
int ret = catalog_get_zone_threadsafe(conf->catalog, dname, &catalog);
knot_dname_storage_t catalog;
int ret = catalog_get_zone_threadsafe(conf->catalog, dname, catalog);
if (ret == KNOT_EOK) {
conf_db_get(conf, txn, C_ZONE, C_CATALOG_TPL, catalog,
knot_dname_size(catalog), &val);
......@@ -215,7 +215,6 @@ conf_val_t conf_zone_get_txn(
knot_strerror(val.code));
return val;
}
knot_dname_free(catalog, NULL);
conf_val(&val);
conf_db_get(conf, txn, C_TPL, key1_name, val.data, val.len, &val);
goto got_template;
......
......@@ -260,7 +260,7 @@ int catalog_get_zone(catalog_t *cat, const knot_dname_t *member,
}
int catalog_get_zone_threadsafe(catalog_t *cat, const knot_dname_t *member,
knot_dname_t **catzone)
knot_dname_storage_t catzone)
{
if (cat->ro_txn == NULL) {
return KNOT_ENOENT;
......@@ -273,9 +273,8 @@ int catalog_get_zone_threadsafe(catalog_t *cat, const knot_dname_t *member,
uint8_t zero, shift;
const knot_dname_t *ow = NULL;
knot_lmdb_unmake_key(val.mv_data, val.mv_size, "BBN", &zero, &shift, &ow);
*catzone = knot_dname_copy(ow + shift, NULL);
if (*catzone == NULL) {
ret = KNOT_ENOMEM;
if (knot_dname_store(catzone, ow + shift) == 0) {
ret = KNOT_EINVAL;
}
free(val.mv_data);
}
......
......@@ -179,7 +179,7 @@ int catalog_get_zone(catalog_t *cat, const knot_dname_t *member,
* \return KNOT_E*
*/
int catalog_get_zone_threadsafe(catalog_t *cat, const knot_dname_t *member,
knot_dname_t **catzone);
knot_dname_storage_t catzone);
/*!
* \brief Find specific member record in catalog database.
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment