newstr = NULL;
}
return (ISC_R_SUCCESS);
-
- cleanup:
- if (newstr != NULL)
- isc_mem_free(mctx, newstr);
- free_controlkeylist(keyids, mctx);
- return (ISC_R_NOMEMORY);
}
static void
/* return success */
return (ISC_R_SUCCESS);
- /* handle no memory error */
- no_mem:
-
/* if we allocated a config data object clean it up */
if (cd != NULL)
fs_destroy(NULL, cd);
isc_mem_free(cmctx, cache->db_type);
cleanup_filelock:
isc_mutex_destroy(&cache->filelock);
-cleanup_stats:
isc_stats_detach(&cache->stats);
isc_mutex_destroy(&cache->lock);
-cleanup_mem:
if (cache->name != NULL) {
isc_mem_free(cmctx, cache->name);
}
isc_buffer_forward(data, len);
key->keydata.pkey = ec;
key->key_size = len * 4;
- return (ISC_R_SUCCESS);
- nomemory:
- for (attr = pk11_attribute_first(ec);
- attr != NULL;
- attr = pk11_attribute_next(ec, attr))
- switch (attr->type) {
- case CKA_EC_PARAMS:
- case CKA_EC_POINT:
- FREECURVE();
- break;
- }
- if (ec->repr != NULL) {
- memset(ec->repr, 0, ec->attrcnt * sizeof(*attr));
- isc_mem_put(key->mctx,
- ec->repr,
- ec->attrcnt * sizeof(*attr));
- }
- memset(ec, 0, sizeof(*ec));
- isc_mem_put(key->mctx, ec, sizeof(*ec));
- return (ISC_R_NOMEMORY);
+ return (ISC_R_SUCCESS);
}
static isc_result_t
key->keydata.pkey = rsa;
return (ISC_R_SUCCESS);
-
- nomemory:
- for (attr = pk11_attribute_first(rsa);
- attr != NULL;
- attr = pk11_attribute_next(rsa, attr))
- switch (attr->type) {
- case CKA_MODULUS:
- case CKA_PUBLIC_EXPONENT:
- if (attr->pValue != NULL) {
- isc_safe_memwipe(attr->pValue,
- attr->ulValueLen);
- isc_mem_put(key->mctx,
- attr->pValue,
- attr->ulValueLen);
- }
- break;
- }
- if (rsa->repr != NULL) {
- isc_safe_memwipe(rsa->repr,
- rsa->attrcnt * sizeof(*attr));
- isc_mem_put(key->mctx,
- rsa->repr,
- rsa->attrcnt * sizeof(*attr));
- }
- isc_safe_memwipe(rsa, sizeof(*rsa));
- isc_mem_put(key->mctx, rsa, sizeof(*rsa));
- return (ISC_R_NOMEMORY);
}
static isc_result_t
priv.nelements = i;
result = dst__privstruct_writefile(key, &priv, directory);
- fail:
for (i = 0; i < 10; i++) {
if (bufs[i] == NULL)
break;
cleanup_info:
isc_mem_free(mctx, fctx->info);
-
- cleanup_counter:
isc_counter_detach(&fctx->qc);
cleanup_fetch:
cleanup_name:
isc_mem_free(mctx, view->name);
-
- cleanup_view:
isc_mem_putanddetach(&view->mctx, view, sizeof(*view));
return (result);
zone->db_argc = dbargc;
zone->db_argv = argv;
result = ISC_R_SUCCESS;
- goto unlock;
- nomem:
- if (argv != NULL) {
- for (i = 0; i < dbargc; i++) {
- if (argv[i] != NULL) {
- isc_mem_free(zone->mctx, argv[i]);
- }
- }
- isc_mem_put(zone->mctx, argv, dbargc * sizeof(*argv));
- }
- result = ISC_R_NOMEMORY;
-
- unlock:
UNLOCK_ZONE(zone);
+
return (result);
}