diff options
author | Richard W.M. Jones <rjones@redhat.com> | 2011-07-29 17:38:43 +0100 |
---|---|---|
committer | Richard W.M. Jones <rjones@redhat.com> | 2011-07-29 17:38:43 +0100 |
commit | bad3f4b54a959685f3c0697238fc5753096834fb (patch) | |
tree | c986ae455792ea2950603afa80b3001c10d9f487 | |
parent | c70532ab4b3d977ed7484e473107808b22d90a2a (diff) | |
download | libguestfs-bad3f4b54a959685f3c0697238fc5753096834fb.tar.gz libguestfs-bad3f4b54a959685f3c0697238fc5753096834fb.tar.xz libguestfs-bad3f4b54a959685f3c0697238fc5753096834fb.zip |
Don't fail if HOSTNAME field is missing on Red Hat guests (RHBZ#726739).
-rw-r--r-- | src/inspect_fs_unix.c | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/src/inspect_fs_unix.c b/src/inspect_fs_unix.c index 2ea29ad8..b8be049b 100644 --- a/src/inspect_fs_unix.c +++ b/src/inspect_fs_unix.c @@ -543,11 +543,18 @@ check_hostname_redhat (guestfs_h *g, struct inspect_fs *fs) { char *hostname; + /* Errors here are not fatal (RHBZ#726739), since it could be + * just missing HOSTNAME field in the file. + */ + guestfs_error_handler_cb old_error_cb = g->error_cb; + g->error_cb = NULL; hostname = guestfs_aug_get (g, "/files/etc/sysconfig/network/HOSTNAME"); - if (!hostname) - return -1; + g->error_cb = old_error_cb; - fs->hostname = hostname; /* freed by guestfs___free_inspect_info */ + /* This is freed by guestfs___free_inspect_info. Note that hostname + * could be NULL because we ignored errors above. + */ + fs->hostname = hostname; return 0; } |