]> git.ozlabs.org Git - petitboot/blobdiff - discover/parser.c
discover/network: Ensure dns config buffer contains a trailling nul
[petitboot] / discover / parser.c
index 48169167974d6150a2670aaba4576053e133da9e..e83b994e11cf1a3833f9cdd6bb6755590909f6df 100644 (file)
@@ -171,16 +171,25 @@ void iterate_parsers(struct discover_context *ctx, enum conf_method method)
        }
 }
 
+static void *parsers_ctx;
+
 void __register_parser(struct parser *parser)
 {
-       struct p_item* i = talloc(NULL, struct p_item);
+       struct p_item *i;
 
-       printf("%s: %s\n", __func__, parser->name);
+       if (!parsers_ctx)
+               parsers_ctx = talloc_new(NULL);
 
+       i = talloc(parsers_ctx, struct p_item);
        i->parser = parser;
        list_add(&parsers, &i->list);
 }
 
+static __attribute__((destructor)) void cleanup_parsers(void)
+{
+       talloc_free(parsers_ctx);
+}
+
 void parser_init(void)
 {
 }