diff options
author | Richard W.M. Jones <rjones@redhat.com> | 2011-01-11 10:43:51 +0000 |
---|---|---|
committer | Richard W.M. Jones <rjones@redhat.com> | 2011-03-08 14:50:23 +0000 |
commit | 3b4ff15f15f323f6dcafef6a2ee59d6b527d749f (patch) | |
tree | f6b76e2107b0f13b02d2f07f4f41b552edb661a9 /fish/inspect.c | |
parent | 5b656fac03146c331cd1310f22febf631b2d8e36 (diff) | |
download | libguestfs-3b4ff15f15f323f6dcafef6a2ee59d6b527d749f.tar.gz libguestfs-3b4ff15f15f323f6dcafef6a2ee59d6b527d749f.tar.xz libguestfs-3b4ff15f15f323f6dcafef6a2ee59d6b527d749f.zip |
fish: Don't fail if some mountpoints in /etc/fstab are bogus (RHBZ#668574).
Fix guestfish (and other C tools) so that they ignore errors
when /etc/fstab contains bogus entries.
Update the documentation for inspect-get-mountpoints to emphasize
that callers must be aware of this when mounting the returned
values.
Add a regression test.
Update the example code ("inspect_vm") to reflect the way this
API ought to be called.
For more detail see:
https://bugzilla.redhat.com/show_bug.cgi?id=668574
(cherry picked from commit 0c60e4d9dd6549c2135699490ba8a9ec1dd50ab9)
Diffstat (limited to 'fish/inspect.c')
-rw-r--r-- | fish/inspect.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/fish/inspect.c b/fish/inspect.c index 28c1b88b..713501e9 100644 --- a/fish/inspect.c +++ b/fish/inspect.c @@ -111,6 +111,7 @@ inspect_mount_root (const char *root) compare_keys_len); size_t i; + size_t mount_errors = 0; for (i = 0; mountpoints[i] != NULL; i += 2) { int r; if (!read_only) @@ -118,10 +119,14 @@ inspect_mount_root (const char *root) else r = guestfs_mount_ro (g, mountpoints[i+1], mountpoints[i]); if (r == -1) - exit (EXIT_FAILURE); + mount_errors++; } free_strings (mountpoints); + + if (mount_errors) + fprintf (stderr, _("%s: some filesystems could not be mounted (ignored)\n"), + program_name); } /* This function is called only if the above function was called, |