1
0
mirror of https://github.com/nmap/nmap.git synced 2025-12-06 04:31:29 +00:00
dmiller f78be32513 Handle pcap sockets just like other nsock sockets.
Pcap nsock sockets in NSE were cached so that multiple threads opening
the "same" pcap descriptor (same device, bpf, promisc, snaplen) would
get the same socket object. This is a leftover from a very old design
that would multiplex captured packets to each thread, but for a long
time that meant that each thread would just get whatever packets were
available and miss any that another thread received. This almost never
happened because scripts don't use identical pcap descriptors generally.
But it did complicate garbage collection, resulting in segfaults and
assertion failures in certain scenarios such as double-closing a socket.
2022-01-04 18:10:45 +00:00
2021-07-19 23:58:02 +00:00
2021-07-19 23:58:02 +00:00
2022-01-03 21:08:52 +00:00
2022-01-03 21:08:52 +00:00
2020-08-27 19:13:31 +00:00
2020-08-27 19:13:31 +00:00
2017-09-19 17:01:40 +00:00
2020-08-27 19:13:31 +00:00
2020-08-27 19:13:31 +00:00
2018-10-16 05:18:31 +00:00
2014-06-26 20:12:54 +00:00
2020-01-15 05:18:27 +00:00
2019-05-29 15:11:13 +00:00

Nmap Build Status Language grade: C/C++ Language grade: Python Total alerts

Nmap is released under a custom license, which is based on (but not compatible with) GPLv2. The Nmap license allows free usage by end users, and we also offer a commercial license for companies that wish to redistribute Nmap technology with their products. See Nmap Copyright and Licensing for full details.

The latest version of this software as well as binary installers for Windows, macOS, and Linux (RPM) are available from Nmap.org

Full documentation is also available on the Nmap.org website.

Questions and suggestions may be sent to the Nmap-dev mailing list.

Installing

Ideally, you should be able to just type:

./configure
make
make install

For far more in-depth compilation, installation, and removal notes, read the Nmap Install Guide on Nmap.org.

Using Nmap

Nmap has a lot of features, but getting started is as easy as running nmap scanme.nmap.org. Running nmap without any parameters will give a helpful list of the most common options, which are discussed in depth in the man page. Users who prefer a graphical interface can use the included Zenmap front-end.

Contributing

Information about filing bug reports and contributing to the Nmap project can be found in the HACKING and CONTRIBUTING.md files.

Languages
C 37.8%
Lua 28.1%
C++ 16.7%
Shell 5.8%
Python 4.2%
Other 7.2%