#include #include "parser.h" #include "debug.h" static struct parser_info *parser_list; int register_parser(struct parser_info *info) { struct parser_info *parser; if (!info->name) { pr_err("Unable to register parser without a name\n"); return -1; } pr_info("Registering parser %s\n", info->name); if (!parser_list) { parser_list = info; return 0; } for (parser = parser_list; parser->next; parser = parser->next) ; parser->next = info; info->next = NULL; return 0; } struct parser_info *str_to_parser(const char *str) { struct parser_info *parser; for (parser = parser_list; parser; parser = parser->next) { if (!strcmp(str, parser->name)) return parser; } return NULL; }