[Libguestfs] Proposed new file apis
Richard W.M. Jones
rjones at redhat.com
Mon Aug 23 16:37:24 UTC 2010
On Mon, Aug 23, 2010 at 05:29:28PM +0100, Matthew Booth wrote:
> You assume above that you know in advance how large the file you're
> writing will be. As I said, you could move that truncate-size to the
> end, but mixing paths and handles is nasty and occasionally
> error-prone.
>
> Consider:
>
> h = hopen_file("/foo");
>
> hwrite ...;
> hwrite ...;
>
> mv("/foo", "/bar");
>
> hwrite ...;
> hwrite ...;
> truncate("/foo", x);
>
> You've now created 2 files rather than 1. If you use htruncate
> rather than truncate here it's robust to any changes in paths.
OK, so you can poke your own eye out ...
This is all being accessed from a single program. I think you just
should take care not to do that.
Nevertheless we can start without these APIs and add them later if
there is a pressing need. But I thought the original point of handles
was for optimization, and we don't need to optimize something which is
done exactly once.
Rich.
--
Richard Jones, Virtualization Group, Red Hat http://people.redhat.com/~rjones
New in Fedora 11: Fedora Windows cross-compiler. Compile Windows
programs, test, and build Windows installers. Over 70 libraries supprt'd
http://fedoraproject.org/wiki/MinGW http://www.annexia.org/fedora_mingw
More information about the Libguestfs
mailing list