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

172 Commits

Author SHA1 Message Date
dmiller
6db5c9cb85 Bump copyright date 2025-02-26 17:44:43 +00:00
dmiller
390e0266db Consolidate private IP checking. Add IPv6. 2025-01-16 23:00:13 +00:00
nnposter
96dcf4e9ed Remove various "the the" repeats. Closes #2804 2024-03-16 01:16:34 +00:00
dmiller
63f82dded0 Fix another case for expr_match 2024-02-29 20:02:01 +00:00
dmiller
f999182d0f Bump date and reapply header templates 2024-02-28 18:46:45 +00:00
dmiller
926182d851 Fix an issue with expr_match 2023-12-14 19:13:22 +00:00
dmiller
96995a92d9 Handle leading zeroes in expr_match 2023-12-14 19:13:21 +00:00
dmiller
e47b742669 Fix expr_match bug 2023-12-05 21:47:33 +00:00
dmiller
f3f9ca7a8b Fix another edge case in expr_match 2023-12-01 23:38:20 +00:00
dmiller
ee1d570b4e Fix an incorrect match case 2023-12-01 23:38:19 +00:00
dmiller
b839872f91 Update nmap-os-db syntax to support nested ranges 2023-11-27 23:05:04 +00:00
dmiller
71d76026dc Add tests for osscan's expr_match function (some fail) 2023-11-27 23:05:03 +00:00
dmiller
b4959d04f4 Simplify expr_match in osscan 2023-11-09 23:44:08 +00:00
dmiller
855d4ef3a2 Avoid assertion failure in the case of R=N|Y. Fixes #2710. 2023-11-02 19:09:54 +00:00
dmiller
15a93e7b34 Deal with missing 'R' test in fingerprints/observations 2023-05-15 17:31:38 +00:00
dmiller
d29f59626a Avoid copying fingerprint for no reason (both const) 2023-05-15 17:31:37 +00:00
dmiller
6f6b2de214 Apply new license templates, bump copyright date 2023-04-14 17:11:46 +00:00
dmiller
70f3350cf8 Remove unused param and return value from AVal_match 2023-01-27 22:47:09 +00:00
dmiller
1d770ee059 For fingerprint tools, print all differences without shortcutting 2023-01-27 22:47:08 +00:00
dmiller
d8cf5e6eac Fix incorrect behavior: empty string OS test is valid 2022-12-15 22:43:45 +00:00
dmiller
bc381ae5d0 Fix an outdated include 2022-12-12 21:30:44 +00:00
dmiller
024f1fefd2 Add wrapper class for a fingerprint observation, used by submission processing tools 2022-12-02 21:57:32 +00:00
dmiller
5f3be5ad17 Extend parse_fingerprint_file for FP processing tools to get MatchPoints only 2022-12-02 21:57:31 +00:00
dmiller
12bb86e678 Fix a couple off-by-one errors in parse_single_fingerprint 2022-12-02 21:57:31 +00:00
dmiller
a94287c4dd Ignore a completely empty Class line 2022-12-02 21:57:30 +00:00
dmiller
18a05139be Ensure str2AVal resets existing values and detects too-long inputs 2022-12-02 21:57:30 +00:00
dmiller
06e6700268 Fix an inscrutable g++ error due to non-const callable comparison 2022-12-02 21:57:29 +00:00
dmiller
d113e08de1 Const-ify a few things, add a copy constructor 2022-12-02 21:57:29 +00:00
dmiller
d957ca1274 Short-circuit os fingerprint matching if accuracy cannot be achieved 2022-11-16 15:55:55 +00:00
dmiller
56f59de131 Optimizations for IPv4 OS scan
Since the number, names, and preferred order of OS detection tests are
known, we can use fixed indices to put each test/value type in a
predictable location. Previously, we would insert the tests in an
arbitrary order, sort them, and then use strcmp() in each comparison to
ensure the sort order holds and any missing tests are skipped over.

Keeping test names in one location (MatchPoints) saves memory and keeps
the string pool small, which improves performance by reducing lookups
and making existing lookups faster.

Using a dedicated class (FingerPrintDef) for MatchPoints avoids calling
strtol() to obtain the points value for every comparison.
2022-11-11 18:44:19 +00:00
dmiller
e9f3b12e07 Move a useful function to nbase 2022-09-20 23:37:25 +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
dd690b3e0b Bump copyright date and update some links [ci skip] 2022-02-18 17:38:46 +00:00
fyodor
3aec3f3a07 Update to latest copyright templates. Main change is that Insecure.Com LLC is now Nmap Software LLC 2021-11-23 16:04:37 +00:00
dmiller
1fd272f8dd const all the things! 2021-04-23 20:37:41 +00:00
dmiller
ef2bafb09c Report system error message when fopen fails 2020-12-28 17:51:16 +00:00
dmiller
9faf70fc78 Remove always-true condition, but be clear that n does not change in this function 2020-10-15 18:10:14 +00:00
dmiller
ef8213a36c Reintegrate Nmap 7.90 release branch 2020-10-05 23:00:30 +00:00
dmiller
3635595b24 Do not search NMAPDATADIR on Windows as it is not defined. See #2051 2020-08-28 15:06:08 +00:00
dmiller
df1874cedd Reduce CPU usage of OS scan by 50%
expr_match was wasting cycles implementing syntax not used or documented
elsewhere (boolean AND, "+" to mean non-zero), copying and allocating new
strings. Replacement reduces number of comparisons and performs parsing
in-place on the const input expression.
2020-05-20 05:23:47 +00:00
dmiller
dd0ace6d4a Split string pool functions into separate file from osscan.cc 2020-01-16 19:12:57 +00:00
dmiller
4a1c9424d3 Replace localtime calls with thread-safe alternative. See #1834 2019-12-15 05:05:57 +00:00
dmiller
d639a53088 Bump copyright date in license headers 2019-05-28 21:36:04 +00:00
dmiller
ab79382f93 Additional header includes for time_t, gettimeofday, timeval, etc. See #1317, #1363 2019-05-22 15:27:13 +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
185db9db96 Correct a function name in a comment 2017-09-06 18:01:45 +00:00
dmiller
9c7ea727a7 Update license terms for 2017 2017-06-07 12:32:38 +00:00
dmiller
86edcb0e5b Remove some unused includes 2017-04-19 19:06:47 +00:00