Commit Graph

1402 Commits

Author SHA1 Message Date
Richard Jones
795cf46a03 appliance: Ignore unreadable dbus helper programs. 2009-12-16 11:04:10 +00:00
Richard Jones
3b0d91890d lib: Link with $(LTLIBTHREAD), required by Gnulib lock module.
This fixes commit cada248a53.
2009-12-07 13:09:08 +00:00
Matthew Booth
f025a9c41d appliance: Fix code which gets list of kernels.
The first 'ls' command was failing, so the second 'ls' command
would never run at all.
2009-12-07 11:13:12 +00:00
Jim Meyering
9e5fabbe01 accommodate leading "+" in git submodule output
* cfg.mk (_submodule_hash): Also filter out "+".
* autogen.sh: Likewise.
2009-12-07 11:13:12 +00:00
Richard Jones
cada248a53 lib: Add thread-safety to global list of handles.
This commit uses the Gnulib 'lock' module to implement a mutex on
the global list of handles which is stored by the library.

Note that Gnulib nicely avoids explicitly linking with -lpthread
unless the application program itself links to -lpthread.  Locks
are only enabled in multithreaded applications.

$ ldd src/.libs/libguestfs.so.0.217.0
	linux-vdso.so.1 =>  (0x00007fffcb7ff000)
	libc.so.6 => /lib64/libc.so.6 (0x00007f96a4e6c000)
	/lib64/ld-linux-x86-64.so.2 (0x00007f96a544d000)

Please enter the commit message for your changes. Lines starting
2009-12-07 11:13:12 +00:00
Richard Jones
983e7a2345 daemon error handling: Define a new function reply_with_perror_errno.
This allows you to save the errno from a previous call and
pass it to reply_with_perror.

For example, original code:

  r = some_system_call ();
  err = errno;
  do_cleanup ();
  errno = err;
  if (r == -1) {
    reply_with_perror ("failed");
    return -1;
  }

can in future be changed to:

  r = some_system_call ();
  err = errno;
  do_cleanup ();
  if (r == -1) {
    reply_with_perror_errno (err, "failed");
    return -1;
  }
2009-12-07 11:13:12 +00:00
Richard Jones
4b4e0d0d07 daemon error handling: recursive_mkdir shouldn't need to set errno. 2009-12-07 11:13:11 +00:00
Richard Jones
50c239c045 daemon error handling: Clear errno before calling stub functions.
This just ensures that we accurately report errors, even if our
error path code doesn't set errno.  We won't end up with a bogus
errno left over from a previous call.
2009-12-04 15:06:23 +00:00
Richard Jones
f02acc3d30 Whitespace change. 2009-11-27 14:32:47 +00:00
Richard Jones
582b64a7b1 virt-rescue: Freshen documentation. 2009-11-26 22:40:57 +00:00
Richard Jones
47ecaa9ad4 guestfish: Freshen documentation. 2009-11-26 22:40:53 +00:00
Richard Jones
940ef864d0 daemon: Move prototypes around to keep functions grouped logically. 2009-11-26 17:16:17 +00:00
Richard Jones
bba019781a Fix error handling in 'zero' function. 2009-11-26 17:16:17 +00:00
Richard Jones
4d53df4d73 daemon/Win32: Add contributed test script to test daemon using Wine.
This test script allows you to test limited features of the
Windows daemon by running it on a standard Fedora host using
Wine.

Read contrib/README and contrib/guestfsd-in-wine.sh in detail
before using.
2009-11-26 15:36:41 +00:00
Richard Jones
115bc4b816 Ignore guestfsd.exe (Windows daemon). 2009-11-26 15:36:41 +00:00
Richard Jones
7a2f4dbbcb Remove old contrib/febootstrap directory. 2009-11-26 14:34:35 +00:00
Richard Jones
f4845292fb Update PO files. 2009-11-26 14:26:44 +00:00
Richard Jones
a86eb0e0d2 Make realpath call optional, disable it for Windows. 2009-11-26 14:13:55 +00:00
Richard Jones
6699491803 build: update gnulib submodule to latest 2009-11-26 14:11:46 +00:00
Richard Jones
9799810df9 daemon: program_name must be defined for Gnulib error module. 2009-11-26 14:11:46 +00:00
Richard Jones
15ebf32891 daemon/Win32: use gnulib modules connect, socket and symlinkat (for readlinkat). 2009-11-26 14:11:43 +00:00
Richard Jones
fd84feb822 daemon/Win32: provide htonl, htons, ntohl, ntohs functions.
These functions are not available on Windows.
2009-11-26 11:52:44 +00:00
Richard Jones
b76462f743 daemon/Win32: Use Gnulib perror module. 2009-11-26 11:28:02 +00:00
Richard Jones
929ba5a843 daemon: Link guestfs_protocol.[ch] into the daemon directory.
Instead of doing a recursive call into the src/ directory to build
the object files, hard link the source files into the daemon
directory and build them separately.

See:
http://www.redhat.com/archives/libguestfs/2009-November/msg00254.html

Thanks to Jim Meyering for noticing a typo in the original version.
2009-11-26 11:27:45 +00:00
Richard Jones
12f3e9780f daemon: Typo generator_build -> generator_built 2009-11-26 11:04:53 +00:00
Richard Jones
8e33cd5f2f daemon: Indent C macros to reflect nesting level. 2009-11-26 10:32:00 +00:00
Richard Jones
fcae398873 daemon/Win32: Win32 can't fork message moved to separate function (Jim Meyering) 2009-11-26 10:32:00 +00:00
Richard Jones
0a302b7878 guestfs documentation: Missing space. 2009-11-25 22:20:22 +00:00
Richard Jones
8504318756 guestfs: Update architecture section of documentation. 2009-11-25 21:41:51 +00:00
Richard Jones
d32cf86698 Update PO files. 2009-11-25 17:12:00 +00:00
Richard Jones
fafd87038b daemon: Fix build on Unix. 2009-11-25 17:10:33 +00:00
Richard Jones
34ac5d7b7a daemon: Fix sync() call on Unix. 2009-11-25 16:54:46 +00:00
Richard Jones
b854ff35a3 daemon/Win32: update comment 2009-11-25 16:36:00 +00:00
Richard Jones
ed08d34eb6 daemon/Win32: Supply MAX macro for challenged platforms. 2009-11-25 16:28:26 +00:00
Richard Jones
8d0d8cd4a3 daemon/Win32: Windows can't daemonize. 2009-11-25 16:28:26 +00:00
Richard Jones
ea99d9ec56 daemon/Win32: Windows replacement for umask. 2009-11-25 16:28:26 +00:00
Richard Jones
33bc8fb6d2 daemon/Win32: Replace setenv with Win32 equivalent. 2009-11-25 16:28:26 +00:00
Richard Jones
55355491c5 daemon/Win32: Use xdr_u_int for PortableXDR compatibility.
PortableXDR didn't support xdr_uint32_t.  xdr_u_int is the same type.
2009-11-25 16:28:26 +00:00
Richard Jones
b884456237 daemon/Win32: Don't bother blocking SIGPIPE on Win32. 2009-11-25 16:28:26 +00:00
Richard Jones
b20a0916d8 daemon/Win32: Use gnulib getaddrinfo module. 2009-11-25 16:28:26 +00:00
Richard Jones
579465ec1f daemon/Win32: Implement statvfs using GetDiskFreeSpaceEx.
At the time of writing Gnulib didn't support Win32 for its
fsusage API.  Therefore this patch uses GetDiskFreeSpaceEx
if it's available (on Windows) otherwise falls back to using
Gnulib fsusage.
2009-11-25 16:28:26 +00:00
Richard Jones
63516f39a0 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.
2009-11-25 16:28:26 +00:00
Richard Jones
b3035e8d7c daemon: Use gnulib futimens module.
Instead of checking for futimens support and falling back
(incorrectly in one case) to using futimes, use gnulib's
module.

However the gnulib module does not yet support Win32, so
this change is only really useful on platforms like RHEL 5.
2009-11-25 16:28:26 +00:00
Richard Jones
25081d6268 daemon/Win32: Use gnulib pread module. 2009-11-25 16:28:26 +00:00
Richard Jones
fdbc5aa711 sync: Windows implementation of sync() call.
Replace calls to sync() with calls to sync_disks() which supports
Win32 via FlushFileBuffers.
2009-11-25 16:28:26 +00:00
Richard Jones
c2aad5cd92 daemon: Alternate implementation of posix_fallocate.
If the posix_fallocate function is not available [ie. Windows]
use an alternate implementation that just loops and writes.
2009-11-25 16:28:25 +00:00
Richard Jones
a951965403 dd: Missing include of <string.h>
Breaks compilation on Windows.
2009-11-25 16:28:25 +00:00
Richard Jones
34d5df70d8 daemon/Windows: Define _WIN32_WINNT when compiling on Windows. 2009-11-25 16:28:25 +00:00
Richard Jones
62d6ae454f build: update gnulib submodule to latest 2009-11-25 16:24:49 +00:00
Richard Jones
65ab9e660b build: update gnulib submodule to latest 2009-11-25 15:29:39 +00:00