mirror of
https://github.com/nmap/nmap.git
synced 2025-12-22 07:29:01 +00:00
New function stdnse.format_mac
This function will format a MAC address as colon-separated hex bytes.
It's really very simple: stdnse.tohex(mac, {separator=":"})
This commit updates all the instances I could find of the varying
convoluted attempts at performing this conversion.
This commit is contained in:
@@ -46,23 +46,12 @@ hostrule = function(host)
|
||||
end
|
||||
|
||||
|
||||
local function format_mac(mac)
|
||||
local octets
|
||||
|
||||
octets = {}
|
||||
for _, v in ipairs({ string.byte(mac, 1, #mac) }) do
|
||||
octets[#octets + 1] = string.format("%02x", v)
|
||||
end
|
||||
|
||||
return stdnse.strjoin(":", octets)
|
||||
end
|
||||
|
||||
icmpEchoRequest = function(ifname, host, addr)
|
||||
local iface = nmap.get_interface_info(ifname)
|
||||
local dnet, pcap = nmap.new_dnet(), nmap.new_socket()
|
||||
|
||||
pcap:set_timeout(5000)
|
||||
pcap:pcap_open(iface.device, 128, false, ("ether src %s and icmp and ( icmp[0] = 0 or icmp[0] = 5 ) and dst %s"):format(format_mac(host.mac_addr), iface.address))
|
||||
pcap:pcap_open(iface.device, 128, false, ("ether src %s and icmp and ( icmp[0] = 0 or icmp[0] = 5 ) and dst %s"):format(stdnse.format_mac(host.mac_addr), iface.address))
|
||||
dnet:ethernet_open(iface.device)
|
||||
|
||||
local probe = packet.Frame:new()
|
||||
|
||||
Reference in New Issue
Block a user