X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=pubkeys.fl.pl;h=226f4ddbd319873e8e3da886cb55b003703d9deb;hb=81bdd35ff7c53a742d5e8f3ee88b13ad4b6ce386;hp=69cc3c925aee2ab249529d32d631c5cfb4f8f399;hpb=4217929f5828f3d542d89fc8c598756d0ad5c5c3;p=secnet.git diff --git a/pubkeys.fl.pl b/pubkeys.fl.pl index 69cc3c9..226f4dd 100755 --- a/pubkeys.fl.pl +++ b/pubkeys.fl.pl @@ -134,6 +134,7 @@ L [ \t]* S [ \t]+ BASE91S []-~!#-&(-[]+ %x SKIPNL +%x SYNTAXERR %option yylineno %option noyywrap @@ -267,7 +268,14 @@ static struct pubkeyset_context c[1]; <> { return 0; } -<*>. { FAIL("syntax error"); } +<*>. { + yymore(); + BEGIN(SYNTAXERR); +} +.* { + slilog(LI,M_DEBUG,"pubkeys syntax error at `%s'", yytext); + FAIL("syntax error"); +} <*>\n { FAIL("syntax error - unexpected newline"); } <> { FAIL("syntax error - unexpected eof"); } @@ -303,10 +311,6 @@ keyset_load(const char *path, struct buffer_if *data_buf, int r=pkyylex(); if (r) goto err_bad; - if (!c->had_serial) { - slilog(LI,M_ERR,"missing serial number in %s",path); - goto err_bad; - } if (!c->building->nkeys) { slilog(LI,M_ERR,"no useable keys in %s",path); goto err_bad;