/usr/share/kannel/contrib/ping.cgi is in kannel-extras 1.4.4-4.
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 | #!/usr/bin/python
"""PING cgi.
Gets the name or IP number of a host as CGI argument. Returns as
plain text the output of the ping command for that host.
Lars Wirzenius <liw@wapit.com>
"""
import os, cgi, string
def ping(host):
if len(string.split(host, "'")) != 1:
return "Invalid host name."
f = os.popen("ping -q -c 4 '%s'" % host)
lines = f.readlines()
f.close()
lines = map(lambda line: line[:-1], lines)
lines = filter(lambda line: line and line[:4] != "--- ", lines)
return string.join(string.split(string.join(lines, " ")), " ")
def do_cgi():
print "Content-type: text/plain"
print ""
form = cgi.FieldStorage()
if not form.has_key("host"):
print "CGI argument `host' missing."
else:
host = form["host"].value
print ping(host)
if __name__ == "__main__":
do_cgi()
|