From fa3293d1f5199ba07e99e492c2fe21bd011886e0 Mon Sep 17 00:00:00 2001 From: Jennifer Richards Date: Wed, 10 Aug 2016 14:35:59 -0400 Subject: [PATCH] Create/destroy TR_APC structures. --- common/tr_apc.c | 40 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) create mode 100644 common/tr_apc.c diff --git a/common/tr_apc.c b/common/tr_apc.c new file mode 100644 index 0000000..9728022 --- /dev/null +++ b/common/tr_apc.c @@ -0,0 +1,40 @@ +#include + +#include +#include + +static int tr_apc_destructor(void *obj) +{ + TR_APC *apc=talloc_get_type_abort(obj, TR_APC); + if (apc->id!=NULL) + tr_free_name(apc->id); + return 0; +} + +TR_APC *tr_apc_new(TALLOC_CTX *mem_ctx) +{ + TR_APC *apc=talloc(mem_ctx, TR_APC); + if (apc!=NULL) { + apc->id=NULL; + apc->next=NULL; + talloc_set_destructor((void *)apc, tr_apc_destructor); + } + return apc; +} + +void tr_apc_free(TR_APC *apc) +{ + talloc_free(apc); +} + +void tr_apc_set_id(TR_APC *apc, TR_NAME *id) +{ + if (apc->id) + tr_free_name(apc->id); + apc->id=id; +} + +TR_NAME *tr_apc_get_id(TR_APC *apc) +{ + return apc->id; +} -- 2.1.4