This file is indexed.

/usr/share/xen-tools/gentoo.d/50-setup-hostname is in xen-tools 4.4-1.

This file is owned by root:root, with mode 0o755.

The actual contents of the file can be viewed below.

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
#!/bin/sh
#
#  This script places the new systems hostname into a couple of files within
# the new image.
#
# Steve
# --
# http://www.steve.org.uk/



prefix=$1


#
#  Source our common functions
#
if [ -e /usr/share/xen-tools/common.sh ]; then
    . /usr/share/xen-tools/common.sh
else
    . ./hooks/common.sh
fi


#
# Log our start
#
logMessage Script $0 starting


#
#  We need to split up the hostname into name + domain
# do this by looking for a dot.
name=$(echo "$hostname" | sed -e 's/\..*$//')
domain=$(echo "$hostname" | sed -e 's/^[^.]*\.//')


#
#  Make sure the umask is correct
#
umask 022


#
#  Setup the hostname + domain names.
#
echo HOSTNAME=\"${name}\" >> ${prefix}/etc/conf.d/hostname
echo DNSDOMAIN=\"${domain}\" >> ${prefix}/etc/conf.d/domainname


#
#  Fixup the /etc/hosts file upon the new image for
# machines with static IPs
#
if [ -z "${dhcp}" ]; then

    # Non-IPv6 stuff.
    grep -v '\(::\|IPv6\)' /etc/hosts > ${prefix}/etc/hosts

    # New entry.
    echo "${ip1}    ${hostname}" >> ${prefix}/etc/hosts
    echo " " >> ${prefix}/etc/hosts

    # IPv6 stuff.
    grep '\(::\|IPv6\)' /etc/hosts >> ${prefix}/etc/hosts

else

    #
    #  Stub /etc/hosts for DHCP clients.
    #
    cat >> ${prefix}/etc/hosts <<EOF
127.0.0.1       localhost

# The following lines are desirable for IPv6 capable hosts
::1     ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
ff02::3 ip6-allhosts

EOF


fi


#
#  Allow the host system to know the IP address of our new guest.
#
if [ -z "${dhcp}" ]; then

    if ( grep ${hostname} /etc/hosts > /dev/null ) ; then

        logMessage Host already has IP address for the host ${hostname}.

    else

        #
        #  Short host name.
        #
        name=`echo ${hostname} | awk -F. '{print $1}'`

        if [ -z "${nohosts}" ]; then

            logMessage Adding ${hostname} and ${name} to /etc/hosts on the host
            echo "${ip1}    ${hostname}    ${name}" >> /etc/hosts

            #
            #  If we've updated the /etc/hosts file on the host machine
            # and there is an installation of dnsmasq installed then
            # reload it.
            #
            #  This will let the local LAN clients lookup the new address.
            #
            if [ -x /usr/sbin/dnsmasq ] ; then
                if [ -e /var/run/dnsmasq.pid ]; then

                    logMessage Allowing DNSMasq to restart.
                    kill -s HUP `cat /var/run/dnsmasq.pid`
                fi
            fi
        fi
    fi
fi


#
#  Log our finish
#
logMessage Script $0 finished