1
0
mirror of https://github.com/nmap/nmap.git synced 2025-12-06 04:31:29 +00:00
Commit Graph

251 Commits

Author SHA1 Message Date
dmiller
5b6645e09d Copy link header from beginning of frame, not beginning of IP header. 2020-04-06 21:39:58 +00:00
dmiller
d0dc55fc90 Inline broadcast_socket(), only used in one place.
Also remove the check for the special socket value 501, which is a
vestige of a workaround leftover from when raw sockets mostly worked on
Windows. That code was removed in r2812 back in 2005.
2020-01-14 05:38:29 +00:00
dmiller
7faec7f157 Inline getpcapinterfaces, used in only 1 location 2020-01-14 03:39:25 +00:00
dmiller
86f80305a1 Consolidate duplicate functions read_na_pcap and read_ns_reply_pcap. 2020-01-13 23:33:30 +00:00
dmiller
4ffeb09ad3 Use libnetutil's read_reply_pcap to deduplicate pcap reading logic. 2020-01-13 21:48:04 +00:00
dmiller
00cb4d22d9 Switch from pcap_next to pcap_next_ex to check for errors
This change supports #1394. When the network goes down, Nmap ought to
stop instead of slowing to an infinite crawl.
2020-01-13 17:14:45 +00:00
dmiller
d639a53088 Bump copyright date in license headers 2019-05-28 21:36:04 +00:00
dmiller
c314e81cc6 Fix TCP option checking, which could be fooled by unknown kind into failing validation. See #1204 2018-05-01 03:39:49 +00:00
fyodor
ff62300249 Bump copyright dates to 2018 and slightly improve wording (doesn't change meaning) of Nmap license header text 2018-01-28 21:18:17 +00:00
dmiller
358d221aa3 Add debug info with getaddrinfo error 2017-10-04 18:27:30 +00:00
dmiller
9c7ea727a7 Update license terms for 2017 2017-06-07 12:32:38 +00:00
dmiller
e813de759a Reduce use of utils.h for error functions 2017-04-20 22:39:08 +00:00
dmiller
86edcb0e5b Remove some unused includes 2017-04-19 19:06:47 +00:00
fyodor
4bd67aa2fb Update the Nmap license/header text to reflect latest updates to docs/legal-notices.xml 2016-12-14 00:12:23 +00:00
dmiller
f4c5c832a6 Remove dependency on pcap-int.h Fixes #426
Windows doesn't support selectable pcap fds, so instead of fiddling with
adapter read timeouts via PacketSetReadTimeout, we get an event handle
with pcap_get_event and WaitForSIngleObject. This means we don't need to
extract the adapter from the pcap_t, which is not part of the libpcap
API and was causing crashes switching between the libpcap versions used
by WinPcap and Npcap.
2016-08-25 18:41:03 +00:00
abhishek
9d288db7fd Add support for decoys in IPv6 closes #433 and fixes #98 2016-08-17 06:09:09 +00:00
vincent
0f22680426 Correct format string specifiers
The formats has been tested and verified on Mac OS X 10.8.5,
Mac OS X 10.11.5 and Ubuntu 14.04 LTS, all on x86_64 machines
and OSs. It mainly silences warnings. There were no warnings on
Ubuntu but a few on Mac OS, so the fix is intended to silence
warnings on Mac OS whithout triggering new warnings on other OSs.
Example of warnings previously encountered:

netutil.cc:2828:74: warning: format specifies type 'unsigned short'
but the argument has type 'int' [-Wformat]
2016-07-01 11:44:26 +00:00
dmiller
855ec33fc0 Allow use of Windows' own inet_pton and inet_ntop functions 2016-06-04 02:46:12 +00:00
dmiller
6e33d6ac3c Bump date in copyright headers 2016-04-04 15:38:44 +00:00
dmiller
e9bdcd811a Strip tcpip.h of some unnecessary includes 2015-06-30 18:34:28 +00:00
dmiller
68409b2226 Update copyright date to 2015 2015-06-03 13:01:29 +00:00
dmiller
a86b679404 Fix WinPcap crash on pcap_findalldevs error
See http://seclists.org/nmap-dev/2015/q1/176

Fixes #15
2015-02-12 16:52:02 +00:00
dmiller
47ad1bf67c Add a problematic TCP option to validateTCPhdr 2014-09-10 18:48:15 +00:00
dmiller
5adfb3b1de Update copyright notice to 2014 2014-08-16 01:52:33 +00:00
jay
8d5ec9e310 Reapply r33420, r33421. Fix a missing right parenthesis. https://xkcd.com/859/ 2014-08-15 12:09:22 +00:00
fyodor
f6f59a7cd7 Auto regeneration with latest template files, etc. 2014-08-13 22:57:43 +00:00
jay
d4cf544df6 Fix a missing bracket at the end of the IMPORTANT NMAP LICENSE TERMS part in each file 2014-08-02 19:29:50 +00:00
d33tah
421176fc00 Get rid of double newline at the EOF I accidentally introduced in the
last commit.
2014-06-18 11:30:02 +00:00
d33tah
e3d1c178e3 Add newlines at the EOF in conformance to Daniel's coding standards
proposal. This only affects Nmap's root directory. We might also need to
modify the code which autogenerates Nmap's source code files such as IPv6
fingerprinting code.
2014-06-18 10:18:58 +00:00
dmiller
3f0d0c16f9 Spellcheck on Nmap, Nsock, Nbase source files 2014-02-20 18:44:12 +00:00
d33tah
ccd0c02a4c Add a lacking space in the license comment. The command I used to do this is:
for file in `grep "* including the terms and conditions of this license text as well.       \*" * -r --files-with-match `; do sed "s/\* including the terms and conditions of this license text as well.       \*/* including the terms and conditions of this license text as well.        */g" -i $file; done
2013-09-11 19:06:20 +00:00
fyodor
6e01ecd452 Update an email address, fix a typo, and slightly reword a sentence. 2013-07-30 00:02:00 +00:00
fyodor
83fb10ec56 Update the Nmap copyright/license files. This isn't the new Nmap Public Source License we've been discussing on the list, but rather just a 'quick patch' to hopefully prevent some of the abuse we've been seeing from companies lately. More details on the changes will be posted to the dev list. Also, the copyright year was updated to 2013 (which is the only change to Nsock license statements). 2013-07-28 22:05:05 +00:00
fyodor
6a42ef47c0 Update the Nmap and Nsock source code headers to note new Nmap dev mailing list email address and a better URL for Nmap license. 2012-12-06 01:21:42 +00:00
david
7b18ea1bc0 Move win32_fatal_raw_sockets out of nmap_raw_socket.
For the same reason and with the same exception (nse_dnet.cc) as in
r30159.
2012-10-31 17:00:55 +00:00
david
03946ba2f5 Return -1 instead of calling pfatal in nmap_raw_socket.
There was one case where we previously didn't fatal, in nse_dnet.cc.
Move the fatal calls out of nmap_raw_socket and into the calling scope,
with the exception of the one in nse_dnet.cc.

The problem was reported by Rob Nicholls.
http://seclists.org/nmap-dev/2012/q4/186
2012-10-31 16:09:47 +00:00
david
22dc30d786 Fix a compile error left from r29932 refactoring.
Reported by Jaebum Shin.
http://seclists.org/nmap-dev/2012/q4/47
2012-10-07 15:16:18 +00:00
david
bc0c6d17b4 Constify data arguments in packet building and sending functions. 2012-10-06 21:26:29 +00:00
david
8ab0096609 Remove dead asserts.
I believe the purpose of these asserts was to quiet a compiler warning
in r24309, but the rest of that revision (marking fatal as a
non-returning function) should do the job.
2012-10-06 21:26:26 +00:00
david
84f4697c50 Call socket_bindtodevice in nmap_raw_socket. 2012-10-03 15:43:23 +00:00
david
a53e00afa1 Factor out an nmap_raw_socket function.
This does the common setup of a raw socket that we use everywhere.
2012-10-03 15:43:21 +00:00
david
7527202d8b Let setTargetNextHopMAC call getNextHopMAC instead of duplicating code. 2012-09-15 14:57:35 +00:00
david
271045501f Make getNextHopMAC do ND when the dest is IPv6.
This is what setTargetNextHopMAC already did, but the code change was
not copied here. This provided a way for NSE scripts to cause an
assertion failure:

local math = require "math"
local packet = require "packet"
function portrule(host, port)
  return port.protocol == "udp"
end
function action(host, port)
  local ip_raw = bin.pack("H", "60000000000d11ff")
    .. host.bin_ip_src .. host.bin_ip
    .. bin.pack(">S", math.random(32768, 65535)) .. bin.pack(">S",
port.number)
    .. bin.pack("H", "000d8082") .. "hello"
  local p = packet.Packet:new(ip_raw, #ip_raw)
  p:udp_count_checksum()
  local s = nmap.new_dnet()
  s:ip_open()
  s:ip_send(p.buf)
end

This would fail with the message "doArp can only handle IPv4 addresses"
when ip_send called getNextHopMAC. (Only with --send-eth.)
2012-09-15 14:57:34 +00:00
david
652fb94405 Make -e assign IPv6 scope ids for everything, not only route_dst.
You could use "-e en0" to automatically add scope ids to your IPv6
addresses, so you didn't need the write "fe80::1234%en0". But this only
happened for the route_dst calculation, and could lead to later failures
in sendmsg when the address didn't have a scope id.
2012-03-27 21:48:53 +00:00
david
aadc34efa3 Remove dumb offensive comments. 2012-03-26 21:58:15 +00:00
david
e4816cea05 Whitespace.
astyle -a -p -H -s2 -m2 tcpip.cc
2012-03-26 21:58:14 +00:00
david
b4cb468b1d Apply the nonblocking pcap read trick in readip_pcap too. 2012-03-22 00:47:24 +00:00
david
94768d88fa Include <net/if_arp.h> from struct_ip.h.
This may be a better way to solve AIX build problems; anyway tcpip.cc didn't build for me on Solaris.
2012-03-17 11:44:00 +00:00
david
941d609eef Include <net/if.h> before <net/if_arp.h>.
This may fix some build problems on AIX 5.3.
2012-03-07 03:39:11 +00:00
batrick
4e7756e4de Change hostname parameter to const char *. 2012-03-04 07:26:16 +00:00