diff --git a/ChangeLog b/ChangeLog index 8cb92085e0a6896a3cdb018e061595c2d1d47a38..8b430037b82f8cab4dfc05d14d8277cd71f35a33 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,10 @@ +2016-02-16 Niels Möller <nisse@lysator.liu.se> + + * tools/parse.c (sexp_parse): Fail with an error message for + unexpected ']' characters. Fixes crash reported by Hanno Böck. + Also handle SEXP_DISPLAY (internal error) explicitly, without a + default clause. + 2016-01-28 Niels Möller <nisse@lysator.liu.se> * Released nettle-3.2. diff --git a/tools/parse.c b/tools/parse.c index 008f3f14fa8073636e4e22d7691fcb1dd5dff42b..388139ad89ac0672f6746dd8a004778928c15e83 100644 --- a/tools/parse.c +++ b/tools/parse.c @@ -165,7 +165,10 @@ sexp_parse(struct sexp_parser *parser, case SEXP_CODING_END: die("Unexpected end of transport encoding.\n"); - default: + case SEXP_DISPLAY_END: + die("Unexpected end of display tag.\n"); + + case SEXP_DISPLAY: /* Internal error. */ abort(); }