• C
    Fix failing virGetHostname. · 0117b7da
    Chris Lalancette 提交于
    We've been running into a lot of situations where
    virGetHostname() is returning "localhost", where a plain
    gethostname() would have returned the correct thing.  This
    is because virGetHostname() is *always* trying to canonicalize
    the name returned from gethostname(), even when it doesn't
    have to.
    
    This patch changes virGetHostname so that if the value returned
    from gethostname() is already FQDN or localhost, it returns
    that string directly.  If the value returned from gethostname()
    is a shortened hostname, then we try to canonicalize it.  If
    that succeeds, we returned the canonicalized hostname.  If
    that fails, and/or returns "localhost", then we just return
    the original string we got from gethostname() and hope for
    the best.
    
    Note that after this patch it is up to clients to check whether
    "localhost" is an allowed return value.  The only place
    where it's currently not is in qemu migration.
    Signed-off-by: NChris Lalancette <clalance@redhat.com>
    0117b7da
util.c 72.0 KB