Open main menu
Posts
Gists
Guilds
Users
Decipher
Docs
Open user menu
Log in
Sign up
Create a new gist
Posts
Gists
Guilds
Users
Decipher
Docs
Files
nmap.src
nmap.src
map = function(list, func)
result = list[0:] //list copy.
for i in indexes(list)
result[i] = func(result[i])
end for
return result
end function
Nmap = {}
Nmap.ip = ""
Nmap.init = function()
if not is_valid_ip(self.ip) then exit("nmap: invalid ip address")
self.is_lan = is_lan_ip(self.ip)
self.set_router()
self.set_ports()
end function
Nmap.set_router = function()
if self.is_lan then
self.router = get_router;
else
self.router = get_router(self.ip)
end if
if self.router == null then exit("nmap: ip address not found")
end function
Nmap.set_ports = function()
if not self.is_lan then
self.ports = self.router.used_ports
else
self.ports = self.router.device_ports(self.ip)
end if
if self.ports == null then exit("nmap: ip address not found")
if typeof(self.ports) == "string" then exit(self.ports)
self.format_ports()
end function
Nmap.format_ports = function()
port_to_map = function(port)
service_info = self.router.port_info(port)
lan_ip = port.get_lan_ip
port_status = "open"
if(port.is_closed and not self.is_lan) then
port_status = "closed"
end if
return {"port": port.port_number, "state": port_status, "service": service_info, "lan_ip": lan_ip, "obj": port}
end function
self.ports = map(self.ports, @port_to_map)
end function
Nmap.ip = "82.132.52.75"
Nmap.init
print(Nmap.ports)