typedef struct allocnode {
struct allocnode *next, *back;
+ size_t sz;
} allocnode;
union maxalign {
* answer->cname and answer->owner are _preserved.
*/
-void adns__transfer_interim(adns_query from, adns_query to,
- void *block, size_t sz);
+void adns__transfer_interim(adns_query from, adns_query to, void *block);
/* Transfers an interim allocation from one query to another, so that
* the `to' query will have room for the data when we get to makefinal
* and so that the free will happen when the `to' query is freed
* TTLs get inherited by their parents.
*/
+void adns__free_interim(adns_query qu, void *p);
+/* Forget about a block allocated by adns__alloc_interim.
+ */
+
void *adns__alloc_mine(adns_query qu, size_t sz);
/* Like _interim, but does not record the length for later
* copying into the answer. This just ensures that the memory