From: Matthias Bolte Date: Fri, 27 May 2011 10:35:50 +0000 (+0200) Subject: openvz: Handle getline failures in openvzReadConfigParam properly X-Git-Tag: CVE-2011-2178~16 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=4b15aad0d6e9dfaa0efe57100be354d2fe8f95e3;p=thirdparty%2Flibvirt.git openvz: Handle getline failures in openvzReadConfigParam properly The regression fix in 3aab7f2d6b068f0 altered the error handling. getline returns -1 on failure to read a line (including EOF). The original openvzReadConfigParam function using openvz_readline only treated EOF as not-found. The current getline version treats all getline failures as not-found. This patch fixes this and distinguishes EOF from other getline failures. --- diff --git a/src/openvz/openvz_conf.c b/src/openvz/openvz_conf.c index 6e32242699..7c76e6ba5e 100644 --- a/src/openvz/openvz_conf.c +++ b/src/openvz/openvz_conf.c @@ -659,7 +659,12 @@ openvzReadConfigParam(const char *conf_file, const char *param, char **value) return -1; VIR_FREE(*value); - while (getline(&line, &line_size, fp) >= 0) { + while (1) { + if (getline(&line, &line_size, fp) < 0) { + err = !feof(fp); + break; + } + if (! STREQLEN(line, param, strlen(param))) continue;