Download raw body.
gotd.conf varset
This makes it possible to set variables in gotd.conf. We already have symset() but it was not reachable. Code obtained from gotwebd/parse.y. ok? diff /home/stsp/src/got commit - ac4f092c7c8e090ee733c90b8b0f0274872c8662 path + /home/stsp/src/got blob - cc7231514a823861b662e419be141a4492c833fd file + gotd/parse.y --- gotd/parse.y +++ gotd/parse.y @@ -127,10 +127,29 @@ typedef struct { grammar : | grammar '\n' + | grammar varset '\n' | grammar main '\n' | grammar repository '\n' ; +varset : STRING '=' STRING { + char *s = $1; + while (*s++) { + if (isspace((unsigned char)*s)) { + yyerror("macro name cannot contain " + "whitespace"); + free($1); + free($3); + YYERROR; + } + } + if (symset($1, $3, 0) == -1) + fatal("cannot store variable"); + free($1); + free($3); + } + ; + timeout : NUMBER { if ($1 < 0) { yyerror("invalid timeout: %lld", $1);
gotd.conf varset