X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ian/git?p=secnet.git;a=blobdiff_plain;f=conffile_internal.h;h=44d0ac7d4ba7dcc864248e7805321fb4f9dc2be8;hp=710fd965245aff592a3cb8805b51016c9115f724;hb=1a448682f9a56b3e33e24fc07767a07e40feaec7;hpb=2fe58dfd10216a37f1ece081f926971882de112e diff --git a/conffile_internal.h b/conffile_internal.h index 710fd96..44d0ac7 100644 --- a/conffile_internal.h +++ b/conffile_internal.h @@ -1,16 +1,10 @@ -/* - * $Log$ - */ - #ifndef conffile_internal_h #define conffile_internal_h #include #include "secnet.h" -extern FILE *yyin; - -typedef string_t atom_t; +typedef cstring_t atom_t; /* Parse tree for configuration file */ @@ -29,6 +23,8 @@ typedef string_t atom_t; #define T_ALIST 17 #define T_ERROR 20 +#define T_IS_PRIMITIVE(NTYPE) ((NTYPE) < T_ASSIGNMENT) + struct p_node { uint32_t type; struct cloc loc; @@ -41,13 +37,13 @@ struct p_node { struct p_node *r; }; -extern int yylex(void); -extern string_t config_file; -extern uint32_t config_lineno; +extern cstring_t config_file; +extern int config_lineno; +extern int yynerrs; /* Keys in dictionaries are 'atoms', which are constructed from strings using this call. Atoms may be compared using '=='. */ -extern atom_t intern(string_t string); +extern atom_t intern(cstring_t string); extern struct p_node *parse_conffile(FILE *conffile);