>From 892ebd71b4c66744b7d12741b0f3d2589aa4aff0 Mon Sep 17 00:00:00 2001 From: Richard Jones Date: Wed, 25 Nov 2009 12:24:01 +0000 Subject: [PATCH 1/2] daemon: Move statvfs code into separate file. This makes no functional change to the code. It just moves the statvfs-related code out of daemon/stat.c into a new file called daemon/statvfs.c. --- daemon/Makefile.am | 1 + daemon/stat.c | 38 ----------------------------- daemon/statvfs.c | 68 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 69 insertions(+), 38 deletions(-) create mode 100644 daemon/statvfs.c diff --git a/daemon/Makefile.am b/daemon/Makefile.am index 75867cb..ea2d7ea 100644 --- a/daemon/Makefile.am +++ b/daemon/Makefile.am @@ -95,6 +95,7 @@ guestfsd_SOURCES = \ sfdisk.c \ sleep.c \ stat.c \ + statvfs.c \ strings.c \ stubs.c \ swap.c \ diff --git a/daemon/stat.c b/daemon/stat.c index 45d2cb8..20f4b70 100644 --- a/daemon/stat.c +++ b/daemon/stat.c @@ -23,7 +23,6 @@ #include #include #include -#include #include #include @@ -199,40 +198,3 @@ do_lstatlist (const char *path, char *const *names) return ret; } - -guestfs_int_statvfs * -do_statvfs (const char *path) -{ - int r; - guestfs_int_statvfs *ret; - struct statvfs statbuf; - - CHROOT_IN; - r = statvfs (path, &statbuf); - CHROOT_OUT; - - if (r == -1) { - reply_with_perror ("statvfs"); - return NULL; - } - - ret = malloc (sizeof *ret); - if (ret == NULL) { - reply_with_perror ("malloc"); - return NULL; - } - - ret->bsize = statbuf.f_bsize; - ret->frsize = statbuf.f_frsize; - ret->blocks = statbuf.f_blocks; - ret->bfree = statbuf.f_bfree; - ret->bavail = statbuf.f_bavail; - ret->files = statbuf.f_files; - ret->ffree = statbuf.f_ffree; - ret->favail = statbuf.f_favail; - ret->fsid = statbuf.f_fsid; - ret->flag = statbuf.f_flag; - ret->namemax = statbuf.f_namemax; - - return ret; -} diff --git a/daemon/statvfs.c b/daemon/statvfs.c new file mode 100644 index 0000000..40df9b9 --- /dev/null +++ b/daemon/statvfs.c @@ -0,0 +1,68 @@ +/* libguestfs - the guestfsd daemon + * Copyright (C) 2009 Red Hat Inc. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + */ + +#include + +#include +#include +#include +#include +#include +#include +#include + +#include "../src/guestfs_protocol.h" +#include "daemon.h" +#include "actions.h" + +guestfs_int_statvfs * +do_statvfs (const char *path) +{ + int r; + guestfs_int_statvfs *ret; + struct statvfs statbuf; + + CHROOT_IN; + r = statvfs (path, &statbuf); + CHROOT_OUT; + + if (r == -1) { + reply_with_perror ("statvfs"); + return NULL; + } + + ret = malloc (sizeof *ret); + if (ret == NULL) { + reply_with_perror ("malloc"); + return NULL; + } + + ret->bsize = statbuf.f_bsize; + ret->frsize = statbuf.f_frsize; + ret->blocks = statbuf.f_blocks; + ret->bfree = statbuf.f_bfree; + ret->bavail = statbuf.f_bavail; + ret->files = statbuf.f_files; + ret->ffree = statbuf.f_ffree; + ret->favail = statbuf.f_favail; + ret->fsid = statbuf.f_fsid; + ret->flag = statbuf.f_flag; + ret->namemax = statbuf.f_namemax; + + return ret; +} -- 1.6.5.2