X-Git-Url: https://git.distorted.org.uk/~mdw/secnet/blobdiff_plain/558fa3fbbb2e6fd1bed6dec54ef603ceb6c943ad..refs/heads/master:/conffile.y diff --git a/conffile.y b/conffile.y index cd53b7c..9f32cfd 100644 --- a/conffile.y +++ b/conffile.y @@ -8,8 +8,15 @@ #include #include #include +/* Bison stupidly redeclares malloc/free unless they are #defined + * (or a bunch of madder conditions) */ +#ifndef malloc +# define malloc malloc +# define free free +#endif #include "secnet.h" #include "conffile_internal.h" +#include "conffile.yy.h" #include "util.h" #define YYERROR_VERBOSE @@ -17,7 +24,7 @@ static struct p_node *node(uint32_t type, struct p_node *l, struct p_node *r); static struct p_node *result; -static void yyerror(char *s); +static void yyerror(const char *s); %} @@ -73,7 +80,7 @@ item: TOK_STRING %% -static void yyerror(char *s) +static void yyerror(const char *s) { Message(M_FATAL,"config file %s line %d: %s\n",config_file, config_lineno,s); @@ -96,7 +103,7 @@ static struct p_node *node(uint32_t type, struct p_node *l, struct p_node *r) { struct p_node *rv; - rv=safe_malloc(sizeof(*rv),"p_node"); + NEW(rv); rv->type=type; rv->loc.file=config_file; rv->loc.line=config_lineno;