change names of clients
This commit is contained in:
@@ -0,0 +1,48 @@
|
||||
#!/usr/bin/env python
|
||||
# $Id: hbc,v 1.1 2005/07/14 19:28:59 andreas Exp $
|
||||
import sys, time, socket, os, signal
|
||||
|
||||
ADDR="204.29.161.33"
|
||||
#ADDR="10.99.1.4"
|
||||
PORT=50003
|
||||
INTERVAL=20
|
||||
|
||||
def handler(signum, frame):
|
||||
global up
|
||||
if signum == 1:
|
||||
os.execv("/usr/bin/env", ["python", sys.argv[0],"relaunch"])
|
||||
if up == 0:
|
||||
return
|
||||
sys.exit(0)
|
||||
iam=socket.gethostname()
|
||||
sock=socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
|
||||
msg="interval=%s;name=%s" % (INTERVAL, iam)
|
||||
|
||||
if len(sys.argv) <= 1 or sys.argv[1] != "relaunch":
|
||||
msgboot="boot=1;interval=%s;name=%s" % (INTERVAL, iam)
|
||||
while 1:
|
||||
try:
|
||||
sock.sendto(msgboot, (ADDR, PORT))
|
||||
break
|
||||
except:
|
||||
time.sleep(10)
|
||||
|
||||
up=1
|
||||
signal.signal(signal.SIGTERM, handler)
|
||||
signal.signal(signal.SIGHUP, handler)
|
||||
|
||||
while up:
|
||||
try:
|
||||
time.sleep(10)
|
||||
except:
|
||||
break
|
||||
try:
|
||||
sock.sendto(msg, (ADDR, PORT))
|
||||
except:
|
||||
pass
|
||||
|
||||
up=0
|
||||
msg="shutdown=1;name=%s" % (iam)
|
||||
sock.sendto(msg, (ADDR, PORT))
|
||||
time.sleep(1)
|
||||
sock.close()
|
||||
Reference in New Issue
Block a user