I am terribly sorry but i posted wrong version (one from clipboard not
actually right one so again).
You can edit what you want (eg hashing or anything else). I don't know
how to stop it from init.d script gracefully  (for now I have there kill
-9 pid). I thing the problem is in the loop (while /bin/true).

#!/bin/sh
#verze 2.0.0_2013-05-31
lock=/var/run/hostnames-updater.pid
shmm="/dev/shm/hosts"

clean () {
    rm $lock
    rm $shmm
}
trap clean SIGHUP SIGINT SIGTERM

/bin/echo $$ > $lock
while /bin/true
    do
    tst(){
    x=0
    if /usr/bin/test $3 = $(/usr/bin/ssh-keyscan -p $2 $5
2>/dev/null|/bin/sed 's/.*\ ssh-.*\ //g'|/usr/bin/whirlpooldeep)
    then
        x=$5
    elif /usr/bin/test $1 -gt 2
    then
        if /usr/bin/test $3 = $(/usr/bin/ssh-keyscan -p $2 $6
2>/dev/null|/bin/sed 's/.*\ ssh-.*\ //g'|/usr/bin/whirlpooldeep)
        then
            x=$6
        else
            x=$4
        fi
    else
        x=$4
    fi
    }

####################host1
tst <address count> <port> <hash> <fallback address> <address 1> ...
<addressn> 2>&1 >/dev/null
host1=$x
####################AJA




/bin/echo "# /etc/hosts: Local Host Database
#
# This file describes a number of aliases-to-address mappings for the for
# local hosts that share this file.
#
# In the presence of the domain name service or NIS, this file may not be
# consulted at all; see /etc/host.conf for the resolution order.
#

# IPv4 and IPv6 localhost aliases
127.0.0.1    $(hostname).local $(hostname) localhost
::1        localhost

#
# Imaginary network.
    $host1        hostname1
#    Last update $(date --rfc-3339=ns)

#
#
# According to RFC 1918, you can use the following IP networks for private
# nets which will never be connected to the Internet:
#
#       10.0.0.0        -   10.255.255.255
#       172.16.0.0      -   172.31.255.255
#       192.168.0.0     -   192.168.255.255
#
# In case you want to be able to connect directly to the Internet (i.e. not
# behind a NAT, ADSL router, etc...), you need real official assigned
# numbers.  Do not try to invent your own network numbers but instead
get one
# from your network provider (if any) or from your regional registry (ARIN,
# APNIC, LACNIC, RIPE NCC, or AfriNIC.)
#
" > $shmm
/bin/mv $shmm /etc/hosts
/usr/bin/sleep 120
done

Reply via email to