[Libvir] PATCH: BZ 426425: Fix truncated reading of config files

Richard W.M. Jones rjones at redhat.com
Tue Jan 8 14:11:56 UTC 2008


Jim Meyering wrote:
> "Daniel P. Berrange" <berrange at redhat.com> wrote:
> 
>> On Fri, Jan 04, 2008 at 09:55:47AM +0000, Richard W.M. Jones wrote:
>>> Daniel P. Berrange wrote:
>>>> The virConfReadFile  API  has a fixed 4096 byte buffer it reads the config
>>>> file into, regardless of the config file size and silently drops any data
>>>> exceeding this.
>>> Ah, the joys of C ...
>>>
>>>> +    if ((ret = fread(*buf, st.st_size, 1, fh)) != 1) {
>>>> +        free(buf);
>>>> +        buf = NULL;
>>> I wonder if you meant to write *buf = NULL here?
>> Yes, indeed. I'll make that change before committing.
> 
> You'll want this one, too:
> 
> diff --git a/src/util.c b/src/util.c
> index 0fa3611..01fc6e9 100644
> --- a/src/util.c
> +++ b/src/util.c
> @@ -308,7 +308,7 @@ int virFileReadAll(const char *path,
>      }
> 
>      if ((ret = fread(*buf, st.st_size, 1, fh)) != 1) {
> -        free(buf);
> +        free(*buf);
>          *buf = NULL;
>          virLog("Failed to read config file '%s': %s",
>                 path, strerror(errno));

Agreed.  Dan?

Rich.

-- 
Emerging Technologies, Red Hat - http://et.redhat.com/~rjones/
Registered Address: Red Hat UK Ltd, Amberley Place, 107-111 Peascod
Street, Windsor, Berkshire, SL4 1TE, United Kingdom.  Registered in
England and Wales under Company Registration No. 03798903
-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/x-pkcs7-signature
Size: 3237 bytes
Desc: S/MIME Cryptographic Signature
URL: <http://listman.redhat.com/archives/libvir-list/attachments/20080108/7e21b6c3/attachment-0001.bin>


More information about the libvir-list mailing list