From 2c7a1427927dab361b0531c69eed9e4061517a30 Mon Sep 17 00:00:00 2001 From: deraadt <> Date: Tue, 16 Oct 2007 06:06:49 +0000 Subject: [PATCH] in the lex... even inside quotes, a \ followed by space or tab should expand to space or tab, and a \ followed by newline should be ignored (as a line continuation). compatible with the needs of hoststated (which has the most strict quoted string requirements), and ifstated (where one commonly does line continuations in strings). pointed out by mpf, discussed with pyr --- src/usr.sbin/ntpd/parse.y | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/usr.sbin/ntpd/parse.y b/src/usr.sbin/ntpd/parse.y index f81341eb..79d33b5d 100644 --- a/src/usr.sbin/ntpd/parse.y +++ b/src/usr.sbin/ntpd/parse.y @@ -1,4 +1,4 @@ -/* $OpenBSD: parse.y,v 1.37 2007/10/13 16:35:21 deraadt Exp $ */ +/* $OpenBSD: parse.y,v 1.38 2007/10/16 06:06:49 deraadt Exp $ */ /* * Copyright (c) 2002, 2003, 2004 Henning Brauer @@ -454,8 +454,10 @@ yylex(void) } else if (c == '\\') { if ((next = lgetc(quotec)) == EOF) return (0); - if (next == quotec) + if (next == quotec || c == ' ' || c == '\t') c = next; + else if (next == '\n') + continue; else lungetc(next); } else if (c == quotec) {