X-Git-Url: http://git.annexia.org/?a=blobdiff_plain;f=fuse%2Fguestmount.c;h=e1cb2d89e2a45ca390f9d8d7ff6f4414fbcba6e5;hb=fbe0802f9d237837d10026471186b1ef973c0877;hp=b4a917fcf9f5a65a4c136c891647b44a9a47cc35;hpb=1f0f0df9b19520979857ab42b192ba46e0bc36dd;p=libguestfs.git diff --git a/fuse/guestmount.c b/fuse/guestmount.c index b4a917f..e1cb2d8 100644 --- a/fuse/guestmount.c +++ b/fuse/guestmount.c @@ -40,6 +40,7 @@ #include #include #include +#include #include #include @@ -652,7 +653,17 @@ fg_write (const char *path, const char *buf, size_t size, dir_cache_invalidate (path); - return -ENOSYS; /* XXX */ + /* See fg_read. */ + const size_t limit = 2 * 1024 * 1024; + if (size > limit) + size = limit; + + int r; + r = guestfs_pwrite (g, path, buf, size, offset); + if (r == -1) + return error (); + + return r; } static int