summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--source4/heimdal/lib/asn1/gen_template.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/source4/heimdal/lib/asn1/gen_template.c b/source4/heimdal/lib/asn1/gen_template.c
index edd68e1223..06e48e2760 100644
--- a/source4/heimdal/lib/asn1/gen_template.c
+++ b/source4/heimdal/lib/asn1/gen_template.c
@@ -545,13 +545,15 @@ template_members(struct templatehead *temp, const char *basetype, const char *na
case TNull:
break;
case TBitString: {
- struct templatehead template = ASN1_TAILQ_HEAD_INITIALIZER(template);
+ struct templatehead template;
struct template *q;
Member *m;
size_t count = 0, i;
char *bname = NULL;
FILE *f = get_code_file();
+ ASN1_TAILQ_INIT(&template);
+
if (ASN1_TAILQ_EMPTY(t->members)) {
add_line(temp, "{ A1_PARSE_T(A1T_HEIM_BIT_STRING), %s, NULL }", poffset);
break;
@@ -681,7 +683,7 @@ template_members(struct templatehead *temp, const char *basetype, const char *na
break;
}
case TChoice: {
- struct templatehead template = ASN1_TAILQ_HEAD_INITIALIZER(template);
+ struct templatehead template;
struct template *q;
size_t count = 0, i;
char *tname = NULL;
@@ -690,6 +692,8 @@ template_members(struct templatehead *temp, const char *basetype, const char *na
int ellipsis = 0;
char *e;
+ ASN1_TAILQ_INIT(&template);
+
if (asprintf(&tname, "asn1_choice_%s_%s%x",
basetype, name ? name : "", (unsigned int)(uintptr_t)t) < 0 || tname == NULL)
errx(1, "malloc");