1
0
mirror of https://github.com/nmap/nmap.git synced 2025-12-14 19:59:02 +00:00
Commit Graph

12968 Commits

Author SHA1 Message Date
dmiller
00c493485c Fewer (4.5MB) transient allocations when parsing service match lines 2022-09-19 17:51:46 +00:00
dmiller
c39ed4d7c7 Remove unused members from ServiceProbeMatch class 2022-09-19 17:51:45 +00:00
dmiller
0d8916b2c9 Escape disallowed CPE character 2022-09-19 17:51:44 +00:00
dmiller
186d734084 Don't bother aligning charpool allocs: not using for non-strings any more 2022-09-19 17:51:44 +00:00
dmiller
fb29dba40e Fix another charpool blunder: null goes at end of string, not end of allocation. 2022-09-16 22:40:25 +00:00
dmiller
fb64aa9738 Don't use string_pool for ephemeral OS fingerprint results 2022-09-16 21:58:42 +00:00
dmiller
91df781351 Fix off-by-one error: need 1 more byte for null terminator 2022-09-16 21:22:21 +00:00
dmiller
631d163fb2 Object-oriented implementation of charpool 2022-09-16 01:10:20 +00:00
dmiller
b7c76ea08a Don't bother allocating space for 'unknown' string. 2022-09-16 01:10:20 +00:00
dmiller
3a32543db0 Key service table on protocol number, not name 2022-09-16 01:10:19 +00:00
dmiller
6c6d4e33b5 Use const. New function nmap_getprotbyname() 2022-09-16 01:10:18 +00:00
dmiller
721912c113 fast caseless comparison of proto names 2022-09-16 01:10:18 +00:00
dmiller
f7ff89b744 Remove unneeded includes (protoent/servent superseded) 2022-09-15 16:05:54 +00:00
dmiller
30c045621c Fix bugs in protocol file parsing
Protocol numbers were being used as a short in network byte order
instead of host byte order, so this command would fail:
nmap -sO -p tcp

Additionally, duplicate protocols would not be reported correctly. This
change speeds up lookups and simplifies the code.
2022-09-15 16:05:53 +00:00
dmiller
5f21094a68 Fix a memory leak of port service name (strdup but not freed) 2022-09-13 21:09:38 +00:00
dmiller
8b3465231e Fix crash: manage lifetime of now-dynamic test results 2022-09-13 20:05:34 +00:00
dmiller
1d8bf1deff Create AVal vectors in-place, do not copy
At startup with -O, this change reduces overall memory use by 4%, total
alloc/frees by 70%, and total instructions by 45%.
2022-09-13 16:10:05 +00:00
dmiller
9a494348c5 Use const and avoid strdup in fingerprint parsing 2022-09-13 16:10:05 +00:00
dmiller
f44f255da3 Reuse strings for IPv6 OS detection probe IDs 2022-09-13 16:10:04 +00:00
fyodor
478e156b04 Made a couple minor updates requested by author 2022-09-13 03:08:32 +00:00
dmiller
7ec32df7ea Use charpool to back string_pool
string_pool (string interning) was using STL strings with lots of extra
constructions, when all we need is a const char array. We can use
charpool for that and get all the benefits there of tightly-packed heap
allocations.
2022-09-12 16:59:36 +00:00
dmiller
cc5cd5f2c6 Define our own servent/protoent structs with const members. 2022-09-12 16:59:35 +00:00
dmiller
d8864b6d5a Fix printing of duplicate mac prefixes 2022-09-10 22:14:56 +00:00
dmiller
84c2cc95c7 Remove dupes, regen mac prefixes 2022-09-10 22:14:55 +00:00
dmiller
a129ad893a Clarify/update nmap-mac-prefixes header 2022-09-10 22:14:54 +00:00
dmiller
c34184b5d0 Use string_pool, not charpool, for MAC vendors, due to overlap w/OS vendors 2022-09-10 22:14:54 +00:00
dmiller
dfe5dc7e4d Add MA-M and MA-S registrations to nmap-mac-prefixes 2022-09-08 23:37:55 +00:00
dmiller
7013eefb05 Support MA-S, MA-M, and MA-L reg lookups for OUI/MAC/EUI-48 2022-09-08 23:37:54 +00:00
dmiller
ecf3b63189 reduce work in threads_iter 2022-09-08 18:14:53 +00:00
dmiller
2f6885f273 Memoize lpeg patterns for keywords in script spec/rules 2022-09-08 18:14:52 +00:00
dmiller
3cfe60c3ed Minor optimization for caseless matching in lpeg-utility 2022-09-08 18:14:52 +00:00
dmiller
aabd8040eb Reuse objects/results when matching scripts to rules 2022-09-08 18:14:51 +00:00
dmiller
7ed7703402 Refactor script db update to run only once 2022-09-08 18:14:51 +00:00
dmiller
dee423f798 Tolerate missing script.db; categories will not work. 2022-09-08 18:14:50 +00:00
dmiller
d6bea8dcde Build based on OpenSSL version, not API level. Fixes #2516 2022-09-06 22:39:34 +00:00
dmiller
9732e6979e Merge Nmap 7.93 release branch 2022-09-02 14:38:17 +00:00
fyodor
4a10170f39 Update the CHANGELOG for Nmap 7.93 release 2022-09-02 02:11:59 +00:00
dmiller
2e7ed50a5a Update macosx OpenSSL to 3.0.5 2022-08-31 22:20:34 +00:00
dmiller
0d4036a709 Fix Visual Studio build of libz on x86 due to type differences 2022-08-31 20:39:34 +00:00
dmiller
6dc8cf70b7 Upgrade zlibc to current v142 toolset 2022-08-31 20:38:36 +00:00
dmiller
8dffbd3df9 Avoid deprecated pcap_lookupdev in Nping 2022-08-31 18:39:58 +00:00
dmiller
65410fead1 Update included libpcap to 1.10.1 2022-08-31 18:39:55 +00:00
dmiller
04bcefd3e4 Update Lua to 5.3.6 2022-08-31 18:39:45 +00:00
dmiller
ea9344ef3d Update zlib to 1.2.12 2022-08-31 15:24:02 +00:00
dmiller
aa1f5b42f7 Avoid extra check for EC crypto, use OpenSSL-defined macros 2022-08-31 13:43:38 +00:00
dmiller
48eef5213f Fix incorrect constness for some OpenSSL versions 2022-08-31 13:43:37 +00:00
dmiller
e11ff107de Update service matches for predictable values [ci skip] 2022-08-30 22:35:10 +00:00
dmiller
00dfa15bc8 Update latest enterprise numbers from IANA [ci skip] 2022-08-30 20:53:43 +00:00
dmiller
3df8c7d79c TLS registry number updates from IANA 2022-08-29 22:06:37 +00:00
dmiller
c476b640bf Update nmap-protocols to latest from IANA [ci skip] 2022-08-29 22:06:36 +00:00