1
0
mirror of https://github.com/nmap/nmap.git synced 2025-12-25 00:49:01 +00:00
Commit Graph

112 Commits

Author SHA1 Message Date
jay
9de9c77d91 Make Zenmap use SIGTERM (instead of SIGKILL) for "Cancel Scan" so that Nmap has a chance to shutdown cleanly.
However, if Nmap is still running after 5 seconds, send a SIGKILL.
2014-06-28 09:59:00 +00:00
dmiller
ec9074f718 Correct "it's" to "its" where necessary
it's = it is
its = belonging to it
2014-06-19 04:58:46 +00:00
jay
f29a494d2b Modifying r32985 based on Henri Doreau's comment
"For sequences, (strings, lists, tuples), use the fact that empty
sequences are false." PEP-0008 says[1].

[1] http://legacy.python.org/dev/peps/pep-0008/
2014-06-10 09:15:20 +00:00
jay
2274fa2461 Updated some code in zenmap/zenmapGUI/DiffCompare.py and zenmap/zenmapGUI/ScanNmapOutputPage.py to work properly with the code from r32983 2014-06-10 08:21:57 +00:00
jay
5e948636cd Speedup Zenmap a little further by using cStringIO in zenmap/zenmapCore/NmapParser.py whenever possible (using StringIO as fallback). 2014-06-09 13:35:34 +00:00
jay
28ab4a621d Rewrote some code in zenmap/zenmapCore/NmapParser.py to speed up opening of scans. Large scans open in seconds instead of hours now. 2014-06-09 06:29:20 +00:00
jay
381bf2fd23 Correct a bug in the code for NmapOutputViewer.go_to_host that was put in revision 32936.
The following steps caused the bug with the r32936 code:
    1. Start a scan (say Quick Scan for simplicity) for a certain target (say A)
    2. Wait for scan to complete
    3. Start a scan for a different target (say B).
    4. Wait for scan to complete
    5. Click on host A in the Hosts list on the left (while scan B is still visible on the right)
    6. BOOM!
2014-06-04 11:41:29 +00:00
dmiller
f51de3bc0e Make NmapOutputViewer.go_to_host more efficient
Instead of loading the entire output into a new string with
gtk.TextBuffer.get_text, we use the gtk.TextIter.forward_search method.
This works because we don't need to use regular expressions to find a
static string.
2014-06-03 17:22:20 +00:00
dmiller
2f23d996bd Prevent PyXML from importing, causing crashes
http://seclists.org/nmap-dev/2014/q2/318

Essentially, we import the xml name, then override its search path,
stripping out the _xmlplus paths that PyXML uses. This leaves only the
Python 2 standard library path, which is what Zenmap was written for.
2014-05-21 03:53:58 +00:00
dmiller
b09926a241 Fix crash in Zenmap DiffViewer
http://seclists.org/nmap-dev/2014/q2/185
2014-04-23 12:10:49 +00:00
fyodor
b23000e08e Update Nmap version number from 6.45 to 6.46 and regen docs 2014-04-18 04:36:33 +00:00
dmiller
d2009ab250 Prevent zenmapCore.NmapParser from looking up remote/system XML entities 2014-04-16 20:37:52 +00:00
david
3f3fafbbec Update MacPorts-ports.diff to remove pkgconfig dependency on libiconv. 2014-04-11 05:36:00 +00:00
fyodor
6bf513b42a Update Nmap version number from 6.41SVN to 6.45 and rebuild docs 2014-04-11 02:59:07 +00:00
dmiller
d39efbb2d8 Fix a DeprecationWarning in zenmap with python -3
DeprecationWarning: reduce() not supported in 3.x; use
functools.reduce()

functools.reduce was added in Python 2.6
2014-03-04 21:15:52 +00:00
dmiller
a72faf3906 Spellcheck on all Python files 2014-02-20 21:22:30 +00:00
dmiller
8a07146936 Define in-use-but-undefined ScriptDBSyntaxError
Subclassed SyntaxError to provide some useful info when this happens. It
was happening with unittest.nse because it wasn't part of any category.
Previously, this would crash Zenmap because ScriptDBSyntaxError was
undefined. Now it crashes because there's really a syntax error (fixed
in previous revision)
2014-01-21 22:17:16 +00:00
dmiller
55c7fb605f Improve performance of StringPool.unique
This saves a function call by using subclassing dict instead of using a
real dict. When a cache hit occurs, there is no overhead beyond a
standard dict lookup, which in most implementations is very fast. Cache
miss is similar performance to previous.

Also added a unittest for this functionality.
2014-01-15 15:37:25 +00:00
dmiller
2b2edabc80 Fix typo in Nmap XML parsing in zenmap 2014-01-14 23:18:30 +00:00
dmiller
8b70dfa0a4 Replace exception-as-flow-control pattern
In general, it's better to use explicit flow control than to throw
and/or catch generic exceptions. Example:

try:
    thing = d["key"]
except:
    pass

This 1. catches an inspecific exception (probably KeyError), 2. can be
replaced with a check for ("key" is in d), and 3. can often be replaced
with d.get("key", some_default_value).
2014-01-13 15:37:39 +00:00
dmiller
098d3b9b1a Restore missing import of zenmapCore.I18N
This was causing make check to fail because _() was not defined
2014-01-10 16:26:38 +00:00
dmiller
4d5c493e8e PEP 8 style issues: space after comma, blank lines between defs 2014-01-09 22:33:29 +00:00
dmiller
314a519dfc Delay loading modules and objects until gettext is loaded
This was resulting in strings not getting translated, especially when
the calls to gettext came at the lowest indent level of the module.
2014-01-09 22:27:15 +00:00
dmiller
bc47cb3d97 Replace explicit X == True/False with X/not X 2014-01-09 16:47:24 +00:00
dmiller
51b143353b Replace == and != with is and is not for comparisons with None 2014-01-09 16:47:20 +00:00
dmiller
3c9eeb3608 Remove some unneeded imports of re, and compile one pattern 2014-01-08 23:09:32 +00:00
dmiller
b254234118 Replace key existence tests with dict.get()
Replaced instances of this pattern:

if 'key' in somedict:
    var = somedict['key']
else:
    var = ""

...with this much simpler pattern:

var = somedict.get('key', "")

Some variations, like returning None if the key is not found were also
replaced.
2014-01-08 20:28:12 +00:00
dmiller
5c662fffdc Apply PEP 8 style guidance to zenmap
Using the pep8 tool (https://pypi.python.org/pypi/pep8), fixed the
following style issues:

Count   Issue
11      E201 whitespace after '['
8       E203 whitespace before ','
41      E211 whitespace before '('
11      E221 multiple spaces before operator
61      E225 missing whitespace around operator
237     E231 missing whitespace after ':'
91      E251 no spaces around keyword / parameter equals
19      E261 at least two spaces before inline comment
41      E301 expected 1 blank line, found 0
200     E302 expected 2 blank lines, found 1
356     E303 too many blank lines (2)
563     E501 line too long (106 characters)
39      E701 multiple statements on one line (colon)
13      E702 multiple statements on one line (semicolon)
4       W291 trailing whitespace
2       W293 blank line contains whitespace
8       W391 blank line at end of file
21      W601 .has_key() is deprecated, use 'in'
2       W602 deprecated form of raising exception

The remaining issues are long lines due to very deep data structures. I
chose not to alter them, as it would involve backslash-continuation
where whitespace is not permitted:

./zenmapGUI/ScanInterface.py:323:80: E501 line too long (90 characters)
./zenmapGUI/ScanInterface.py:456:80: E501 line too long (84 characters)
./zenmapGUI/ScanInterface.py:464:80: E501 line too long (84 characters)
./zenmapGUI/ScanInterface.py:472:80: E501 line too long (122 characters)
./zenmapGUI/ScanInterface.py:479:80: E501 line too long (122 characters)
./zenmapGUI/ScanInterface.py:920:80: E501 line too long (94 characters)
./zenmapGUI/ScanInterface.py:923:80: E501 line too long (93 characters)
./zenmapGUI/MainWindow.py:575:80: E501 line too long (99 characters)
./zenmapGUI/MainWindow.py:906:80: E501 line too long (99 characters)
2014-01-08 19:50:22 +00:00
dmiller
7e521bcc4f Remove unecessary circular import from radialnet.util.misc 2014-01-07 20:03:46 +00:00
dmiller
0c995f95d8 Add missing make_graph_from_nmap_parser needed by some unittests 2014-01-07 20:03:44 +00:00
dmiller
dc0f5b592e Fix incorrect invocation of NmapParser in NetworkInventory.open_from_file 2013-12-20 22:13:28 +00:00
jah
66efa2840a Update zenmap/setup.py WINDOWS_SETUP_ARGS with the recently changed (in r32435)
path to ndiff/scripts/ndiff.
2013-11-27 23:17:30 +00:00
david
58e5885f17 Remove libxml2.2.dylib from the OS X application bundle.
This file is automatically copied into the bundle by py2app. It is
already present as a system library on OS X 10.6 and later. Shipping our
own caused a compatibility problem on OS X 10.9:

Could not import the zenmapGUI.App module: 'dlopen(/Applications/Zenmap.app/Contents/Resources/lib/python2.6/lib-dynload/glib/_glib.so, 2): Symbol not found: _xmlBufContent\n  Referenced from: /usr/lib/libxslt.1.dylib\n  Expected in: /Applications/Zenmap.app/Contents/Frameworks/libxml2.2.dylib\n in /usr/lib/libxslt.1.dylib'.

http://seclists.org/nmap-dev/2013/q4/85
2013-11-12 04:04:45 +00:00
dmiller
00798ff53b Remove deprecated BaseException.message in favor of unicode(e) 2013-10-28 18:49:53 +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
david
4035012050 Remove the "" entry from search_keywords.
Having this entry made it appear as if there was a search criterion
named for the empty string; i.e., a string like ":foobar" would be
parsed as an operator "" with an argument "foobar". There was no match
function defined for the empty string, which led to this crash:

Version: 6.25
Traceback (most recent call last):
  File "/usr/lib/python2.7/dist-packages/zenmapGUI/ScanInterface.py", line 247, in filter_hosts
    self.inventory.apply_filter(filter_string)
  File "/usr/lib/python2.7/dist-packages/zenmapCore/NetworkInventory.py", line 502, in apply_filter
    if not self._match_all_args(host, operator, args):
  File "/usr/lib/python2.7/dist-packages/zenmapCore/NetworkInventory.py", line 452, in _match_all_args
    if positive != self.__getattribute__("match_%s" % operator)(host, arg):
AttributeError: 'FilteredNetworkInventory' object has no attribute 'match_'

I did some quick tests and plain keyword searching (with no colon) seems
to still work. I'm not sure why the "" entry was ever present.

Reported by Kris Paernell.
http://seclists.org/nmap-dev/2013/q3/38
2013-07-31 21:12:51 +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
b01fd55cb6 Change version number to 6.41SVN and regenerate auto-generated files such as man page, script.db, etc. 2013-07-29 06:00:07 +00:00
david
5db8c41f9c Put ru.po Plural-Forms on a single line.
Having this on two lines apparently uncovers a bug in some versions of
Python gettext. A Zenmap crash was reported by Дмитрий Никитич.

http://seclists.org/nmap-dev/2013/q2/525

http://bugs.python.org/issue1448060
https://bugzilla.redhat.com/show_bug.cgi?id=252136
2013-07-27 01:59:21 +00:00
david
ec3536d31a Remove executable mode. 2013-06-21 23:13:51 +00:00
david
8ff10edd1c pl.po update from Jacek Wielemborek. 2013-05-17 15:08:47 +00:00
david
db621362cb Add pl .mo. 2013-05-14 18:11:46 +00:00
david
a5134555c6 Add Polish translation by Jacek Wielemborek.
http://seclists.org/nmap-dev/2013/q2/292
2013-05-14 18:11:44 +00:00
david
3f3bb4a546 Regen po files.
Recommitted after recovery from backup.
2013-04-12 17:29:35 +00:00
david
87bbbfa0e4 Regen zenmap.pot.
Recommitted after recovery from backup.
2013-04-12 17:29:33 +00:00
david
24f378acdb Regen it translation mo.
Recommitted after recovery from backup.
2013-04-12 17:29:31 +00:00
david
fac98776b7 Update Zenmap it.po translation.
By Giacomo.
http://seclists.org/nmap-dev/2013/q2/0

Recommitted after recovery from backup.
2013-04-12 17:29:29 +00:00
david
797689c920 Regenerate it.po with new msgmerge.
Recommitted after recovery from backup.
2013-04-12 17:29:13 +00:00
david
e85fceacce Update zenmap.pot.
Recommitted after recovery from backup.
2013-04-12 17:29:11 +00:00
dmiller
c4c197b213 Fix @arg nsedoc parsing in Zenmap
Zenmap was only showing the first line of @arg nsedoc entries, since it
was capturing the contents with a regular expression, which ends at the
first newline. Fixed by simply returning the entire contents with the
first word (the name of the arg) stripped off.
2013-03-29 20:44:33 +00:00