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
dmiller
77457d5f9b
Remove an unused include
2017-04-19 14:23:42 +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
6e33d6ac3c
Bump date in copyright headers
2016-04-04 15:38:44 +00:00
dmiller
f4619edece
Update http urls for nmap.org to https
2015-11-05 20:41:05 +00:00
dmiller
ea4096c681
Strip or relocate more includes from nmap.h
2015-07-01 21:25:39 +00:00
dmiller
5e47450bdc
Use forward-declaration of class FingerPrintResults in Target.h
2015-06-30 04:04:51 +00:00
dmiller
84d0e45641
Remove some unneeded includes of utils.h
2015-06-23 15:52:55 +00:00
dmiller
68409b2226
Update copyright date to 2015
2015-06-03 13:01:29 +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
david
fb27ac625f
DB cannot be NULL here.
...
I checked the history and it doesn't appear that DB was ever passed in
to this function, but always allocated locally.
Found using the STACK tool: http://css.csail.mit.edu/stack/ .
2013-10-08 21:50:47 +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