]> git.ipfire.org Git - ipfire-2.x.git/blob - src/pakfire/lib/test_host.sh
Hinzugefügt:
[ipfire-2.x.git] / src / pakfire / lib / test_host.sh
1 #!/bin/bash
2 ############################################################################################
3 # Version 0.1a, Copyright (C) 2006 by IPFire.org #
4 # IPFire ist freie Software, die Sie unter bestimmten Bedingungen weitergeben dürfen. #
5 ############################################################################################
6
7 # URL Zerleger
8 URL_ZERL=$(get_conf.sh URL_ZERL)
9
10 # Zählen wie viele Host übergeben wurden
11 i=0
12 for host in $1
13 do
14 ((i++))
15 done
16
17 # Random Zahl auslesen
18 rand=$RANDOM
19
20 # Random Zahl herunterbrechen
21 while [ $rand -gt $i ]
22 do ((rand=rand/2))
23 done
24
25 # Versuche Randomserver zu erreichen
26 i=0
27 for host in $1
28 do
29 ((i++))
30 if [ $i -eq $rand ]
31 then
32 if ping $($URL_ZERL $host get_host) -c 1 -s 0 >/dev/null 2>&1
33 then echo $host
34 exit 0
35 fi
36 fi
37 if [ $i -gt $rand ]
38 then
39 break
40 fi
41 done
42
43 for host in $1
44 do
45 if ping $($URL_ZERL $host get_host) -c 1 -s 0 >/dev/null 2>&1
46 then
47 echo $host
48 exit 0
49 fi
50 done
51
52 exit 1
53
54 ################################### EOF ####################################################