diff options
author | djm@openbsd.org <djm@openbsd.org> | 2015-06-26 05:13:20 +0000 |
---|---|---|
committer | Damien Miller <djm@mindrot.org> | 2015-06-27 09:24:04 +1000 |
commit | 78c2a4f883ea9aba866358e2acd9793a7f42ca93 (patch) | |
tree | 0cb392be5f4a20c6334d362f544e506201aad22d /readconf.c | |
parent | bc20205c91c9920361d12b15d253d4997dba494a (diff) |
upstream commit
Fix \-escaping bug that caused forward path parsing to skip
two characters and skip past the end of the string.
Based on patch by Salvador Fandino; ok dtucker@
Upstream-ID: 7b879dc446335677cbe4cb549495636a0535f3bd
Diffstat (limited to 'readconf.c')
-rw-r--r-- | readconf.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/readconf.c b/readconf.c index 47125aea6..db7d0bbbf 100644 --- a/readconf.c +++ b/readconf.c | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: readconf.c,v 1.236 2015/05/22 04:45:52 djm Exp $ */ | 1 | /* $OpenBSD: readconf.c,v 1.237 2015/06/26 05:13:20 djm Exp $ */ |
2 | /* | 2 | /* |
3 | * Author: Tatu Ylonen <ylo@cs.hut.fi> | 3 | * Author: Tatu Ylonen <ylo@cs.hut.fi> |
4 | * Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland | 4 | * Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland |
@@ -1927,7 +1927,8 @@ parse_fwd_field(char **p, struct fwdarg *fwd) | |||
1927 | switch (*cp) { | 1927 | switch (*cp) { |
1928 | case '\\': | 1928 | case '\\': |
1929 | memmove(cp, cp + 1, strlen(cp + 1) + 1); | 1929 | memmove(cp, cp + 1, strlen(cp + 1) + 1); |
1930 | cp++; | 1930 | if (*cp == '\0') |
1931 | return -1; | ||
1931 | break; | 1932 | break; |
1932 | case '/': | 1933 | case '/': |
1933 | ispath = 1; | 1934 | ispath = 1; |