upstream commit

fix uninitialised memory read when parsing a config file
 consisting of a single nul byte. Found by hanno AT hboeck.de using AFL; ok
 dtucker
This commit is contained in:
djm@openbsd.org 2015-03-30 00:00:29 +00:00 committed by Damien Miller
parent fecede00a7
commit 26e0bcf766
1 changed files with 4 additions and 2 deletions

View File

@ -1,4 +1,4 @@
/* $OpenBSD: readconf.c,v 1.232 2015/02/16 22:13:32 djm Exp $ */ /* $OpenBSD: readconf.c,v 1.233 2015/03/30 00:00:29 djm Exp $ */
/* /*
* Author: Tatu Ylonen <ylo@cs.hut.fi> * Author: Tatu Ylonen <ylo@cs.hut.fi>
* Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland * Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland
@ -763,7 +763,9 @@ process_config_line(Options *options, struct passwd *pw, const char *host,
} }
/* Strip trailing whitespace */ /* Strip trailing whitespace */
for (len = strlen(line) - 1; len > 0; len--) { if ((len = strlen(line)) == 0)
return 0;
for (len--; len > 0; len--) {
if (strchr(WHITESPACE, line[len]) == NULL) if (strchr(WHITESPACE, line[len]) == NULL)
break; break;
line[len] = '\0'; line[len] = '\0';