Jim Meyering wrote:
"Daniel P. Berrange" <berrange@xxxxxxxxxx> 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
Attachment:
smime.p7s
Description: S/MIME Cryptographic Signature
-- Libvir-list mailing list Libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list