22250614 Upgrade nmap to version 7
authorRich Burridge <rich.burridge@oracle.com>
Fri, 15 Apr 2016 10:20:27 -0700
changeset 5791 08bbb1f1f01f
parent 5790 9ae20789c796
child 5792 a1fd0a72acdb
22250614 Upgrade nmap to version 7
components/nmap/Makefile
components/nmap/nmap.license
components/nmap/nmap.p5m
components/nmap/patches/nmap-6.25-cve-2013-4885.patch
components/nmap/patches/nmap-6.25-parfait.patch
--- a/components/nmap/Makefile	Fri Apr 15 10:18:28 2016 -0700
+++ b/components/nmap/Makefile	Fri Apr 15 10:20:27 2016 -0700
@@ -29,14 +29,14 @@
 include ../../make-rules/shared-macros.mk
 
 COMPONENT_NAME=         nmap
-COMPONENT_VERSION=      6.25
+COMPONENT_VERSION=      7.11
 COMPONENT_PROJECT_URL=	http://nmap.org/
 COMPONENT_ARCHIVE=      $(COMPONENT_SRC).tgz
 COMPONENT_ARCHIVE_HASH= \
-    sha256:42c54fd5cc5f05e5df909757d62307102a8ff1dfaf5c2626b1cb5f2ecd009e57
+    sha256:dfc95db3a8ee4c56650dbaa5a1a1e989b2963de8faea2531c21e6fd6e0bccc2a
 COMPONENT_ARCHIVE_URL=  $(COMPONENT_PROJECT_URL)dist/$(COMPONENT_ARCHIVE)
 
-TPNO=			9217
+TPNO=			27577
 
 TEST_TARGET= $(NO_TESTS)
 include $(WS_MAKE_RULES)/common.mk
--- a/components/nmap/nmap.license	Fri Apr 15 10:18:28 2016 -0700
+++ b/components/nmap/nmap.license	Fri Apr 15 10:20:27 2016 -0700
@@ -1,75 +1,105 @@
 /***************************************************************************
- * COPYING -- Describes the terms under which Nmap is distributed.  A copy *
- * of the GNU GPL is appended to this file.                                *
+ * COPYING -- Describes the terms under which Nmap is distributed.         *
  *                                                                         *
  ***********************IMPORTANT NMAP LICENSE TERMS************************
  *                                                                         *
- * The Nmap Security Scanner is (C) 1996-2012 Insecure.Com LLC. Nmap is    *
+ * The Nmap Security Scanner is (C) 1996-2015 Insecure.Com LLC. Nmap is    *
  * also a registered trademark of Insecure.Com LLC.  This program is free  *
  * software; you may redistribute and/or modify it under the terms of the  *
  * GNU General Public License as published by the Free Software            *
- * Foundation; Version 2 with the clarifications and exceptions described  *
- * below.  This guarantees your right to use, modify, and redistribute     *
- * this software under certain conditions.  If you wish to embed Nmap      *
- * technology into proprietary software, we sell alternative licenses      *
- * (contact [email protected]).  Dozens of software vendors already       *
- * license Nmap technology such as host discovery, port scanning, OS       *
- * detection, version detection, and the Nmap Scripting Engine.            *
+ * Foundation; Version 2 ("GPL"), BUT ONLY WITH ALL OF THE CLARIFICATIONS  *
+ * AND EXCEPTIONS DESCRIBED HEREIN.  This guarantees your right to use,    *
+ * modify, and redistribute this software under certain conditions.  If    *
+ * you wish to embed Nmap technology into proprietary software, we sell    *
+ * alternative licenses (contact [email protected]).  Dozens of software      *
+ * vendors already license Nmap technology such as host discovery, port    *
+ * scanning, OS detection, version detection, and the Nmap Scripting       *
+ * Engine.                                                                 *
  *                                                                         *
- * Note that the GPL places important restrictions on "derived works", yet *
- * it does not provide a detailed definition of that term.  To avoid       *
+ * Note that the GPL places important restrictions on "derivative works",  *
+ * yet it does not provide a detailed definition of that term.  To avoid   *
  * misunderstandings, we interpret that term as broadly as copyright law   *
  * allows.  For example, we consider an application to constitute a        *
- * "derivative work" for the purpose of this license if it does any of the *
- * following:                                                              *
- * o Integrates source code from Nmap                                      *
- * o Reads or includes Nmap copyrighted data files, such as                *
- *   nmap-os-db or nmap-service-probes.                                    *
- * o Executes Nmap and parses the results (as opposed to typical shell or  *
- *   execution-menu apps, which simply display raw Nmap output and so are  *
- *   not derivative works.)                                                *
- * o Integrates/includes/aggregates Nmap into a proprietary executable     *
- *   installer, such as those produced by InstallShield.                   *
- * o Links to a library or executes a program that does any of the above   *
+ * derivative work for the purpose of this license if it does any of the   *
+ * following with any software or content covered by this license          *
+ * ("Covered Software"):                                                   *
+ *                                                                         *
+ * o Integrates source code from Covered Software.                         *
+ *                                                                         *
+ * o Reads or includes copyrighted data files, such as Nmap's nmap-os-db   *
+ * or nmap-service-probes.                                                 *
+ *                                                                         *
+ * o Is designed specifically to execute Covered Software and parse the    *
+ * results (as opposed to typical shell or execution-menu apps, which will *
+ * execute anything you tell them to).                                     *
+ *                                                                         *
+ * o Includes Covered Software in a proprietary executable installer.  The *
+ * installers produced by InstallShield are an example of this.  Including *
+ * Nmap with other software in compressed or archival form does not        *
+ * trigger this provision, provided appropriate open source decompression  *
+ * or de-archiving software is widely available for no charge.  For the    *
+ * purposes of this license, an installer is considered to include Covered *
+ * Software even if it actually retrieves a copy of Covered Software from  *
+ * another source during runtime (such as by downloading it from the       *
+ * Internet).                                                              *
+ *                                                                         *
+ * o Links (statically or dynamically) to a library which does any of the  *
+ * above.                                                                  *
+ *                                                                         *
+ * o Executes a helper program, module, or script to do any of the above.  *
  *                                                                         *
- * The term "Nmap" should be taken to also include any portions or derived *
- * works of Nmap, as well as other software we distribute under this       *
- * license such as Zenmap, Ncat, and Nping.  This list is not exclusive,   *
- * but is meant to clarify our interpretation of derived works with some   *
- * common examples.  Our interpretation applies only to Nmap--we don't     *
- * speak for other people's GPL works.                                     *
+ * This list is not exclusive, but is meant to clarify our interpretation  *
+ * of derived works with some common examples.  Other people may interpret *
+ * the plain GPL differently, so we consider this a special exception to   *
+ * the GPL that we apply to Covered Software.  Works which meet any of     *
+ * these conditions must conform to all of the terms of this license,      *
+ * particularly including the GPL Section 3 requirements of providing      *
+ * source code and allowing free redistribution of the work as a whole.    *
+ *                                                                         *
+ * As another special exception to the GPL terms, Insecure.Com LLC grants  *
+ * permission to link the code of this program with any version of the     *
+ * OpenSSL library which is distributed under a license identical to that  *
+ * listed in the included docs/licenses/OpenSSL.txt file, and distribute   *
+ * linked combinations including the two.                                  *
  *                                                                         *
- * If you have any questions about the GPL licensing restrictions on using *
- * Nmap in non-GPL works, we would be happy to help.  As mentioned above,  *
- * we also offer alternative license to integrate Nmap into proprietary    *
+ * Any redistribution of Covered Software, including any derived works,    *
+ * must obey and carry forward all of the terms of this license, including *
+ * obeying all GPL rules and restrictions.  For example, source code of    *
+ * the whole work must be provided and free redistribution must be         *
+ * allowed.  All GPL references to "this License", are to be treated as    *
+ * including the terms and conditions of this license text as well.        *
+ *                                                                         *
+ * Because this license imposes special exceptions to the GPL, Covered     *
+ * Work may not be combined (even as part of a larger work) with plain GPL *
+ * software.  The terms, conditions, and exceptions of this license must   *
+ * be included as well.  This license is incompatible with some other open *
+ * source licenses as well.  In some cases we can relicense portions of    *
+ * Nmap or grant special permissions to use it in other open source        *
+ * software.  Please contact [email protected] with any such requests.       *
+ * Similarly, we don't incorporate incompatible open source software into  *
+ * Covered Software without special permission from the copyright holders. *
+ *                                                                         *
+ * If you have any questions about the licensing restrictions on using     *
+ * Nmap in other works, are happy to help.  As mentioned above, we also    *
+ * offer alternative license to integrate Nmap into proprietary            *
  * applications and appliances.  These contracts have been sold to dozens  *
  * of software vendors, and generally include a perpetual license as well  *
  * as providing for priority support and updates.  They also fund the      *
- * continued development of Nmap.  Please email [email protected] for     *
- * further information.                                                    *
+ * continued development of Nmap.  Please email [email protected] for further *
+ * information.                                                            *
  *                                                                         *
- * As a special exception to the GPL terms, Insecure.Com LLC grants        *
- * permission to link the code of this program with any version of the     *
- * OpenSSL library which is distributed under a license identical to that  *
- * listed in the included docs/licenses/OpenSSL.txt file, and distribute   *
- * linked combinations including the two. You must obey the GNU GPL in all *
- * respects for all of the code used other than OpenSSL.  If you modify    *
- * this file, you may extend this exception to your version of the file,   *
- * but you are not obligated to do so.                                     *
- *                                                                         *
- * If you received these files with a written license agreement or         *
- * contract stating terms other than the terms above, then that            *
- * alternative license agreement takes precedence over these comments.     *
+ * If you have received a written license agreement or contract for        *
+ * Covered Software stating terms other than these, you may choose to use  *
+ * and redistribute Covered Software under those terms instead of these.   *
  *                                                                         *
  * Source is provided to this software because we believe users have a     *
  * right to know exactly what a program is going to do before they run it. *
- * This also allows you to audit the software for security holes (none     *
- * have been found so far).                                                *
+ * This also allows you to audit the software for security holes.          *
  *                                                                         *
  * Source code also allows you to port Nmap to new platforms, fix bugs,    *
  * and add new features.  You are highly encouraged to send your changes   *
- * to [email protected] for possible incorporation into the main       *
- * distribution.  By sending these changes to Fyodor or one of the         *
+ * to the [email protected] mailing list for possible incorporation into the    *
+ * main distribution.  By sending these changes to Fyodor or one of the    *
  * Insecure.Org development mailing lists, or checking them into the Nmap  *
  * source code repository, it is understood (unless you specify otherwise) *
  * that you are offering the Nmap Project (Insecure.Com LLC) the           *
@@ -83,10 +113,9 @@
  *                                                                         *
  * This program is distributed in the hope that it will be useful, but     *
  * WITHOUT ANY WARRANTY; without even the implied warranty of              *
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU       *
- * General Public License v2.0 for more details at                         *
- * http://www.gnu.org/licenses/gpl-2.0.html , or in the COPYING file       *
- * included with Nmap.                                                     *
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the Nmap      *
+ * license file for more details (it's in a COPYING file included with     *
+ * Nmap, and also available from https://svn.nmap.org/nmap/COPYING)        *
  *                                                                         *
  ***************************************************************************/
 
@@ -436,128 +465,3 @@
 consider it more useful to permit linking proprietary applications with the
 library. If this is what you want to do, use the GNU Library General Public
 License instead of this License.
-
-  LICENSE ISSUES
-  ==============
-
-  The OpenSSL toolkit stays under a dual license, i.e. both the conditions of
-  the OpenSSL License and the original SSLeay license apply to the toolkit.
-  See below for the actual license texts. Actually both licenses are BSD-style
-  Open Source licenses. In case of any license issues related to OpenSSL
-  please contact [email protected]
-
-  OpenSSL License
-  ---------------
-
-/* ====================================================================
- * Copyright (c) 1998-2004 The OpenSSL Project.  All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *
- * 1. Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer. 
- *
- * 2. Redistributions in binary form must reproduce the above copyright
- *    notice, this list of conditions and the following disclaimer in
- *    the documentation and/or other materials provided with the
- *    distribution.
- *
- * 3. All advertising materials mentioning features or use of this
- *    software must display the following acknowledgment:
- *    "This product includes software developed by the OpenSSL Project
- *    for use in the OpenSSL Toolkit. (http://www.openssl.org/)"
- *
- * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to
- *    endorse or promote products derived from this software without
- *    prior written permission. For written permission, please contact
- *    [email protected]
- *
- * 5. Products derived from this software may not be called "OpenSSL"
- *    nor may "OpenSSL" appear in their names without prior written
- *    permission of the OpenSSL Project.
- *
- * 6. Redistributions of any form whatsoever must retain the following
- *    acknowledgment:
- *    "This product includes software developed by the OpenSSL Project
- *    for use in the OpenSSL Toolkit (http://www.openssl.org/)"
- *
- * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY
- * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE OpenSSL PROJECT OR
- * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
- * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
- * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
- * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
- * OF THE POSSIBILITY OF SUCH DAMAGE.
- * ====================================================================
- *
- * This product includes cryptographic software written by Eric Young
- * ([email protected]).  This product includes software written by Tim
- * Hudson ([email protected]).
- *
- */
-
- Original SSLeay License
- -----------------------
-
-/* Copyright (C) 1995-1998 Eric Young ([email protected])
- * All rights reserved.
- *
- * This package is an SSL implementation written
- * by Eric Young ([email protected]).
- * The implementation was written so as to conform with Netscapes SSL.
- * 
- * This library is free for commercial and non-commercial use as long as
- * the following conditions are aheared to.  The following conditions
- * apply to all code found in this distribution, be it the RC4, RSA,
- * lhash, DES, etc., code; not just the SSL code.  The SSL documentation
- * included with this distribution is covered by the same copyright terms
- * except that the holder is Tim Hudson ([email protected]).
- * 
- * Copyright remains Eric Young's, and as such any Copyright notices in
- * the code are not to be removed.
- * If this package is used in a product, Eric Young should be given attribution
- * as the author of the parts of the library used.
- * This can be in the form of a textual message at program startup or
- * in documentation (online or textual) provided with the package.
- * 
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the copyright
- *    notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- *    notice, this list of conditions and the following disclaimer in the
- *    documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- *    must display the following acknowledgement:
- *    "This product includes cryptographic software written by
- *     Eric Young ([email protected])"
- *    The word 'cryptographic' can be left out if the rouines from the library
- *    being used are not cryptographic related :-).
- * 4. If you include any Windows specific code (or a derivative thereof) from 
- *    the apps directory (application code) you must include an acknowledgement:
- *    "This product includes software written by Tim Hudson ([email protected])"
- * 
- * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- * 
- * The licence and distribution terms for any publically available version or
- * derivative of this code cannot be changed.  i.e. this code cannot simply be
- * copied and put under another distribution licence
- * [including the GNU Public Licence.]
--- a/components/nmap/nmap.p5m	Fri Apr 15 10:18:28 2016 -0700
+++ b/components/nmap/nmap.p5m	Fri Apr 15 10:20:27 2016 -0700
@@ -18,7 +18,7 @@
 #
 # CDDL HEADER END
 #
-# Copyright (c) 2011, 2015, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2011, 2016, Oracle and/or its affiliates. All rights reserved.
 #
 
 <transform file path=usr.*/man/.+ -> default mangler.man.stability volatile>
@@ -49,6 +49,7 @@
 file path=usr/bin/uninstall_zenmap
 link path=usr/bin/xnmap target=zenmap
 file path=usr/bin/zenmap
+file path=usr/lib/python$(PYVER)/vendor-packages/ndiff.py
 file path=usr/lib/python$(PYVER)/vendor-packages/radialnet/__init__.py
 file path=usr/lib/python$(PYVER)/vendor-packages/radialnet/bestwidgets/__init__.py
 file path=usr/lib/python$(PYVER)/vendor-packages/radialnet/bestwidgets/boxes.py
@@ -84,6 +85,7 @@
 file path=usr/lib/python$(PYVER)/vendor-packages/radialnet/util/misc.py
 file path=usr/lib/python$(PYVER)/vendor-packages/zenmap-$(COMPONENT_VERSION)-py$(PYVER).egg-info
 file path=usr/lib/python$(PYVER)/vendor-packages/zenmapCore/BasePaths.py
+file path=usr/lib/python$(PYVER)/vendor-packages/zenmapCore/DelayedObject.py
 file path=usr/lib/python$(PYVER)/vendor-packages/zenmapCore/Diff.py
 file path=usr/lib/python$(PYVER)/vendor-packages/zenmapCore/I18N.py
 file path=usr/lib/python$(PYVER)/vendor-packages/zenmapCore/NSEDocParser.py
@@ -165,6 +167,13 @@
 file path=usr/lib/python$(PYVER)/vendor-packages/zenmapGUI/higwidgets/utils.py
 file path=usr/share/applications/zenmap-root.desktop
 file path=usr/share/applications/zenmap.desktop
+file path=usr/share/man/de/man1/nmap.1
+file path=usr/share/man/es/man1/nmap.1
+file path=usr/share/man/fr/man1/nmap.1
+file path=usr/share/man/hr/man1/nmap.1
+file path=usr/share/man/hu/man1/nmap.1
+file path=usr/share/man/it/man1/nmap.1
+file path=usr/share/man/ja/man1/nmap.1
 file path=usr/share/man/man1/ncat.1
 file path=usr/share/man/man1/ndiff.1
 file path=usr/share/man/man1/nmap.1
@@ -172,6 +181,13 @@
 file path=usr/share/man/man1/nping.1
 link path=usr/share/man/man1/xnmap.1 target=zenmap.1
 file path=usr/share/man/man1/zenmap.1
+file path=usr/share/man/pl/man1/nmap.1
+file path=usr/share/man/pt_BR/man1/nmap.1
+file path=usr/share/man/pt_PT/man1/nmap.1
+file path=usr/share/man/ro/man1/nmap.1
+file path=usr/share/man/ru/man1/nmap.1
+file path=usr/share/man/sk/man1/nmap.1
+file path=usr/share/man/zh/man1/nmap.1
 file path=usr/share/ncat/ca-bundle.crt
 file path=usr/share/nmap/nmap-mac-prefixes
 file path=usr/share/nmap/nmap-os-db
@@ -186,9 +202,12 @@
 file path=usr/share/nmap/nselib/afp.lua
 file path=usr/share/nmap/nselib/ajp.lua
 file path=usr/share/nmap/nselib/amqp.lua
+file path=usr/share/nmap/nselib/anyconnect.lua
 file path=usr/share/nmap/nselib/asn1.lua
 file path=usr/share/nmap/nselib/base32.lua
 file path=usr/share/nmap/nselib/base64.lua
+file path=usr/share/nmap/nselib/bin.luadoc
+file path=usr/share/nmap/nselib/bit.luadoc
 file path=usr/share/nmap/nselib/bitcoin.lua
 file path=usr/share/nmap/nselib/bittorrent.lua
 file path=usr/share/nmap/nselib/bjnp.lua
@@ -207,12 +226,14 @@
 file path=usr/share/nmap/nselib/drda.lua
 file path=usr/share/nmap/nselib/eap.lua
 file path=usr/share/nmap/nselib/eigrp.lua
+file path=usr/share/nmap/nselib/formulas.lua
 file path=usr/share/nmap/nselib/ftp.lua
 file path=usr/share/nmap/nselib/giop.lua
 file path=usr/share/nmap/nselib/gps.lua
 file path=usr/share/nmap/nselib/http.lua
 file path=usr/share/nmap/nselib/httpspider.lua
 file path=usr/share/nmap/nselib/iax2.lua
+file path=usr/share/nmap/nselib/ike.lua
 file path=usr/share/nmap/nselib/imap.lua
 file path=usr/share/nmap/nselib/informix.lua
 file path=usr/share/nmap/nselib/ipOps.lua
@@ -222,7 +243,11 @@
 file path=usr/share/nmap/nselib/jdwp.lua
 file path=usr/share/nmap/nselib/json.lua
 file path=usr/share/nmap/nselib/ldap.lua
+file path=usr/share/nmap/nselib/lfs.luadoc
 file path=usr/share/nmap/nselib/listop.lua
+file path=usr/share/nmap/nselib/lpeg-utility.lua
+file path=usr/share/nmap/nselib/lpeg.luadoc
+file path=usr/share/nmap/nselib/ls.lua
 file path=usr/share/nmap/nselib/match.lua
 file path=usr/share/nmap/nselib/membase.lua
 file path=usr/share/nmap/nselib/mobileme.lua
@@ -231,21 +256,26 @@
 file path=usr/share/nmap/nselib/msrpcperformance.lua
 file path=usr/share/nmap/nselib/msrpctypes.lua
 file path=usr/share/nmap/nselib/mssql.lua
+file path=usr/share/nmap/nselib/multicast.lua
 file path=usr/share/nmap/nselib/mysql.lua
 file path=usr/share/nmap/nselib/natpmp.lua
 file path=usr/share/nmap/nselib/ncp.lua
 file path=usr/share/nmap/nselib/ndmp.lua
 file path=usr/share/nmap/nselib/netbios.lua
+file path=usr/share/nmap/nselib/nmap.luadoc
 file path=usr/share/nmap/nselib/nrpc.lua
 file path=usr/share/nmap/nselib/nsedebug.lua
 file path=usr/share/nmap/nselib/omp2.lua
+file path=usr/share/nmap/nselib/openssl.luadoc
 file path=usr/share/nmap/nselib/ospf.lua
 file path=usr/share/nmap/nselib/packet.lua
+file path=usr/share/nmap/nselib/pcre.luadoc
 file path=usr/share/nmap/nselib/pgsql.lua
 file path=usr/share/nmap/nselib/pop3.lua
 file path=usr/share/nmap/nselib/pppoe.lua
 file path=usr/share/nmap/nselib/proxy.lua
 file path=usr/share/nmap/nselib/rdp.lua
+file path=usr/share/nmap/nselib/re.lua
 file path=usr/share/nmap/nselib/redis.lua
 file path=usr/share/nmap/nselib/rmi.lua
 file path=usr/share/nmap/nselib/rpc.lua
@@ -255,6 +285,7 @@
 file path=usr/share/nmap/nselib/sasl.lua
 file path=usr/share/nmap/nselib/shortport.lua
 file path=usr/share/nmap/nselib/sip.lua
+file path=usr/share/nmap/nselib/slaxml.lua
 file path=usr/share/nmap/nselib/smb.lua
 file path=usr/share/nmap/nselib/smbauth.lua
 file path=usr/share/nmap/nselib/smtp.lua
@@ -271,7 +302,10 @@
 file path=usr/share/nmap/nselib/tab.lua
 file path=usr/share/nmap/nselib/target.lua
 file path=usr/share/nmap/nselib/tftp.lua
+file path=usr/share/nmap/nselib/tls.lua
 file path=usr/share/nmap/nselib/tns.lua
+file path=usr/share/nmap/nselib/unicode.lua
+file path=usr/share/nmap/nselib/unittest.lua
 file path=usr/share/nmap/nselib/unpwdb.lua
 file path=usr/share/nmap/nselib/upnp.lua
 file path=usr/share/nmap/nselib/url.lua
@@ -294,12 +328,14 @@
 file path=usr/share/nmap/scripts/ajp-headers.nse
 file path=usr/share/nmap/scripts/ajp-methods.nse
 file path=usr/share/nmap/scripts/ajp-request.nse
+file path=usr/share/nmap/scripts/allseeingeye-info.nse
 file path=usr/share/nmap/scripts/amqp-info.nse
 file path=usr/share/nmap/scripts/asn-query.nse
 file path=usr/share/nmap/scripts/auth-owners.nse
 file path=usr/share/nmap/scripts/auth-spoof.nse
 file path=usr/share/nmap/scripts/backorifice-brute.nse
 file path=usr/share/nmap/scripts/backorifice-info.nse
+file path=usr/share/nmap/scripts/bacnet-info.nse
 file path=usr/share/nmap/scripts/banner.nse
 file path=usr/share/nmap/scripts/bitcoin-getaddr.nse
 file path=usr/share/nmap/scripts/bitcoin-info.nse
@@ -328,6 +364,7 @@
 file path=usr/share/nmap/scripts/broadcast-pppoe-discover.nse
 file path=usr/share/nmap/scripts/broadcast-rip-discover.nse
 file path=usr/share/nmap/scripts/broadcast-ripng-discover.nse
+file path=usr/share/nmap/scripts/broadcast-sonicwall-discover.nse
 file path=usr/share/nmap/scripts/broadcast-sybase-asa-discover.nse
 file path=usr/share/nmap/scripts/broadcast-tellstick-discover.nse
 file path=usr/share/nmap/scripts/broadcast-upnp-info.nse
@@ -354,7 +391,6 @@
 file path=usr/share/nmap/scripts/daap-get-library.nse
 file path=usr/share/nmap/scripts/daytime.nse
 file path=usr/share/nmap/scripts/db2-das-info.nse
-file path=usr/share/nmap/scripts/db2-discover.nse
 file path=usr/share/nmap/scripts/dhcp-discover.nse
 file path=usr/share/nmap/scripts/dict-info.nse
 file path=usr/share/nmap/scripts/distcc-cve2004-2687.nse
@@ -376,6 +412,7 @@
 file path=usr/share/nmap/scripts/dns-update.nse
 file path=usr/share/nmap/scripts/dns-zeustracker.nse
 file path=usr/share/nmap/scripts/dns-zone-transfer.nse
+file path=usr/share/nmap/scripts/docker-version.nse
 file path=usr/share/nmap/scripts/domcon-brute.nse
 file path=usr/share/nmap/scripts/domcon-cmd.nse
 file path=usr/share/nmap/scripts/domino-enum-users.nse
@@ -384,12 +421,15 @@
 file path=usr/share/nmap/scripts/drda-info.nse
 file path=usr/share/nmap/scripts/duplicates.nse
 file path=usr/share/nmap/scripts/eap-info.nse
+file path=usr/share/nmap/scripts/enip-info.nse
 file path=usr/share/nmap/scripts/epmd-info.nse
 file path=usr/share/nmap/scripts/eppc-enum-processes.nse
+file path=usr/share/nmap/scripts/fcrdns.nse
 file path=usr/share/nmap/scripts/finger.nse
 file path=usr/share/nmap/scripts/firewalk.nse
 file path=usr/share/nmap/scripts/firewall-bypass.nse
 file path=usr/share/nmap/scripts/flume-master-info.nse
+file path=usr/share/nmap/scripts/freelancer-info.nse
 file path=usr/share/nmap/scripts/ftp-anon.nse
 file path=usr/share/nmap/scripts/ftp-bounce.nse
 file path=usr/share/nmap/scripts/ftp-brute.nse
@@ -410,12 +450,17 @@
 file path=usr/share/nmap/scripts/hbase-master-info.nse
 file path=usr/share/nmap/scripts/hbase-region-info.nse
 file path=usr/share/nmap/scripts/hddtemp-info.nse
+file path=usr/share/nmap/scripts/hnap-info.nse
 file path=usr/share/nmap/scripts/hostmap-bfk.nse
+file path=usr/share/nmap/scripts/hostmap-ip2hosts.nse
 file path=usr/share/nmap/scripts/hostmap-robtex.nse
+file path=usr/share/nmap/scripts/http-adobe-coldfusion-apsa1301.nse
 file path=usr/share/nmap/scripts/http-affiliate-id.nse
 file path=usr/share/nmap/scripts/http-apache-negotiation.nse
+file path=usr/share/nmap/scripts/http-apache-server-status.nse
 file path=usr/share/nmap/scripts/http-auth-finder.nse
 file path=usr/share/nmap/scripts/http-auth.nse
+file path=usr/share/nmap/scripts/http-avaya-ipoffice-users.nse
 file path=usr/share/nmap/scripts/http-awstatstotals-exec.nse
 file path=usr/share/nmap/scripts/http-axis2-dir-traversal.nse
 file path=usr/share/nmap/scripts/http-backup-finder.nse
@@ -423,17 +468,28 @@
 file path=usr/share/nmap/scripts/http-brute.nse
 file path=usr/share/nmap/scripts/http-cakephp-version.nse
 file path=usr/share/nmap/scripts/http-chrono.nse
+file path=usr/share/nmap/scripts/http-cisco-anyconnect.nse
+file path=usr/share/nmap/scripts/http-coldfusion-subzero.nse
+file path=usr/share/nmap/scripts/http-comments-displayer.nse
 file path=usr/share/nmap/scripts/http-config-backup.nse
 file path=usr/share/nmap/scripts/http-cors.nse
+file path=usr/share/nmap/scripts/http-cross-domain-policy.nse
+file path=usr/share/nmap/scripts/http-csrf.nse
 file path=usr/share/nmap/scripts/http-date.nse
 file path=usr/share/nmap/scripts/http-default-accounts.nse
+file path=usr/share/nmap/scripts/http-devframework.nse
+file path=usr/share/nmap/scripts/http-dlink-backdoor.nse
+file path=usr/share/nmap/scripts/http-dombased-xss.nse
 file path=usr/share/nmap/scripts/http-domino-enum-passwords.nse
 file path=usr/share/nmap/scripts/http-drupal-enum-users.nse
-file path=usr/share/nmap/scripts/http-drupal-modules.nse
-file path=usr/share/nmap/scripts/http-email-harvest.nse
+file path=usr/share/nmap/scripts/http-drupal-enum.nse
 file path=usr/share/nmap/scripts/http-enum.nse
+file path=usr/share/nmap/scripts/http-errors.nse
 file path=usr/share/nmap/scripts/http-exif-spider.nse
 file path=usr/share/nmap/scripts/http-favicon.nse
+file path=usr/share/nmap/scripts/http-feed.nse
+file path=usr/share/nmap/scripts/http-fetch.nse
+file path=usr/share/nmap/scripts/http-fileupload-exploiter.nse
 file path=usr/share/nmap/scripts/http-form-brute.nse
 file path=usr/share/nmap/scripts/http-form-fuzzer.nse
 file path=usr/share/nmap/scripts/http-frontpage-login.nse
@@ -446,55 +502,85 @@
 file path=usr/share/nmap/scripts/http-huawei-hg5xx-vuln.nse
 file path=usr/share/nmap/scripts/http-icloud-findmyiphone.nse
 file path=usr/share/nmap/scripts/http-icloud-sendmsg.nse
+file path=usr/share/nmap/scripts/http-iis-short-name-brute.nse
 file path=usr/share/nmap/scripts/http-iis-webdav-vuln.nse
 file path=usr/share/nmap/scripts/http-joomla-brute.nse
 file path=usr/share/nmap/scripts/http-litespeed-sourcecode-download.nse
+file path=usr/share/nmap/scripts/http-ls.nse
 file path=usr/share/nmap/scripts/http-majordomo2-dir-traversal.nse
 file path=usr/share/nmap/scripts/http-malware-host.nse
 file path=usr/share/nmap/scripts/http-method-tamper.nse
 file path=usr/share/nmap/scripts/http-methods.nse
+file path=usr/share/nmap/scripts/http-mobileversion-checker.nse
+file path=usr/share/nmap/scripts/http-ntlm-info.nse
 file path=usr/share/nmap/scripts/http-open-proxy.nse
 file path=usr/share/nmap/scripts/http-open-redirect.nse
 file path=usr/share/nmap/scripts/http-passwd.nse
 file path=usr/share/nmap/scripts/http-php-version.nse
+file path=usr/share/nmap/scripts/http-phpmyadmin-dir-traversal.nse
 file path=usr/share/nmap/scripts/http-phpself-xss.nse
 file path=usr/share/nmap/scripts/http-proxy-brute.nse
 file path=usr/share/nmap/scripts/http-put.nse
 file path=usr/share/nmap/scripts/http-qnap-nas-info.nse
+file path=usr/share/nmap/scripts/http-referer-checker.nse
 file path=usr/share/nmap/scripts/http-rfi-spider.nse
 file path=usr/share/nmap/scripts/http-robots.txt.nse
 file path=usr/share/nmap/scripts/http-robtex-reverse-ip.nse
 file path=usr/share/nmap/scripts/http-robtex-shared-ns.nse
+file path=usr/share/nmap/scripts/http-server-header.nse
+file path=usr/share/nmap/scripts/http-shellshock.nse
 file path=usr/share/nmap/scripts/http-sitemap-generator.nse
 file path=usr/share/nmap/scripts/http-slowloris-check.nse
 file path=usr/share/nmap/scripts/http-slowloris.nse
 file path=usr/share/nmap/scripts/http-sql-injection.nse
+file path=usr/share/nmap/scripts/http-stored-xss.nse
+file path=usr/share/nmap/scripts/http-svn-enum.nse
+file path=usr/share/nmap/scripts/http-svn-info.nse
 file path=usr/share/nmap/scripts/http-title.nse
 file path=usr/share/nmap/scripts/http-tplink-dir-traversal.nse
 file path=usr/share/nmap/scripts/http-trace.nse
 file path=usr/share/nmap/scripts/http-traceroute.nse
 file path=usr/share/nmap/scripts/http-unsafe-output-escaping.nse
+file path=usr/share/nmap/scripts/http-useragent-tester.nse
 file path=usr/share/nmap/scripts/http-userdir-enum.nse
 file path=usr/share/nmap/scripts/http-vhosts.nse
 file path=usr/share/nmap/scripts/http-virustotal.nse
 file path=usr/share/nmap/scripts/http-vlcstreamer-ls.nse
 file path=usr/share/nmap/scripts/http-vmware-path-vuln.nse
+file path=usr/share/nmap/scripts/http-vuln-cve2006-3392.nse
 file path=usr/share/nmap/scripts/http-vuln-cve2009-3960.nse
 file path=usr/share/nmap/scripts/http-vuln-cve2010-0738.nse
 file path=usr/share/nmap/scripts/http-vuln-cve2010-2861.nse
 file path=usr/share/nmap/scripts/http-vuln-cve2011-3192.nse
 file path=usr/share/nmap/scripts/http-vuln-cve2011-3368.nse
 file path=usr/share/nmap/scripts/http-vuln-cve2012-1823.nse
+file path=usr/share/nmap/scripts/http-vuln-cve2013-0156.nse
+file path=usr/share/nmap/scripts/http-vuln-cve2013-6786.nse
+file path=usr/share/nmap/scripts/http-vuln-cve2013-7091.nse
+file path=usr/share/nmap/scripts/http-vuln-cve2014-2126.nse
+file path=usr/share/nmap/scripts/http-vuln-cve2014-2127.nse
+file path=usr/share/nmap/scripts/http-vuln-cve2014-2128.nse
+file path=usr/share/nmap/scripts/http-vuln-cve2014-2129.nse
+file path=usr/share/nmap/scripts/http-vuln-cve2014-3704.nse
+file path=usr/share/nmap/scripts/http-vuln-cve2014-8877.nse
+file path=usr/share/nmap/scripts/http-vuln-cve2015-1427.nse
+file path=usr/share/nmap/scripts/http-vuln-cve2015-1635.nse
+file path=usr/share/nmap/scripts/http-vuln-misfortune-cookie.nse
+file path=usr/share/nmap/scripts/http-vuln-wnr1000-creds.nse
 file path=usr/share/nmap/scripts/http-waf-detect.nse
 file path=usr/share/nmap/scripts/http-waf-fingerprint.nse
+file path=usr/share/nmap/scripts/http-webdav-scan.nse
 file path=usr/share/nmap/scripts/http-wordpress-brute.nse
 file path=usr/share/nmap/scripts/http-wordpress-enum.nse
-file path=usr/share/nmap/scripts/http-wordpress-plugins.nse
+file path=usr/share/nmap/scripts/http-wordpress-users.nse
+file path=usr/share/nmap/scripts/http-xssed.nse
 file path=usr/share/nmap/scripts/iax2-brute.nse
 file path=usr/share/nmap/scripts/iax2-version.nse
 file path=usr/share/nmap/scripts/icap-info.nse
+file path=usr/share/nmap/scripts/ike-version.nse
 file path=usr/share/nmap/scripts/imap-brute.nse
 file path=usr/share/nmap/scripts/imap-capabilities.nse
+file path=usr/share/nmap/scripts/imap-ntlm-info.nse
 file path=usr/share/nmap/scripts/informix-brute.nse
 file path=usr/share/nmap/scripts/informix-query.nse
 file path=usr/share/nmap/scripts/informix-tables.nse
@@ -503,7 +589,9 @@
 file path=usr/share/nmap/scripts/ip-geolocation-geoplugin.nse
 file path=usr/share/nmap/scripts/ip-geolocation-ipinfodb.nse
 file path=usr/share/nmap/scripts/ip-geolocation-maxmind.nse
+file path=usr/share/nmap/scripts/ip-https-discover.nse
 file path=usr/share/nmap/scripts/ipidseq.nse
+file path=usr/share/nmap/scripts/ipv6-multicast-mld-list.nse
 file path=usr/share/nmap/scripts/ipv6-node-info.nse
 file path=usr/share/nmap/scripts/ipv6-ra-flood.nse
 file path=usr/share/nmap/scripts/irc-botnet-channels.nse
@@ -518,6 +606,8 @@
 file path=usr/share/nmap/scripts/jdwp-info.nse
 file path=usr/share/nmap/scripts/jdwp-inject.nse
 file path=usr/share/nmap/scripts/jdwp-version.nse
+file path=usr/share/nmap/scripts/knx-gateway-discover.nse
+file path=usr/share/nmap/scripts/knx-gateway-info.nse
 file path=usr/share/nmap/scripts/krb5-enum-users.nse
 file path=usr/share/nmap/scripts/ldap-brute.nse
 file path=usr/share/nmap/scripts/ldap-novell-getpass.nse
@@ -534,6 +624,7 @@
 file path=usr/share/nmap/scripts/metasploit-info.nse
 file path=usr/share/nmap/scripts/metasploit-msgrpc-brute.nse
 file path=usr/share/nmap/scripts/metasploit-xmlrpc-brute.nse
+file path=usr/share/nmap/scripts/mikrotik-routeros-brute.nse
 file path=usr/share/nmap/scripts/mmouse-brute.nse
 file path=usr/share/nmap/scripts/mmouse-exec.nse
 file path=usr/share/nmap/scripts/modbus-discover.nse
@@ -548,16 +639,19 @@
 file path=usr/share/nmap/scripts/ms-sql-empty-password.nse
 file path=usr/share/nmap/scripts/ms-sql-hasdbaccess.nse
 file path=usr/share/nmap/scripts/ms-sql-info.nse
+file path=usr/share/nmap/scripts/ms-sql-ntlm-info.nse
 file path=usr/share/nmap/scripts/ms-sql-query.nse
 file path=usr/share/nmap/scripts/ms-sql-tables.nse
 file path=usr/share/nmap/scripts/ms-sql-xp-cmdshell.nse
 file path=usr/share/nmap/scripts/msrpc-enum.nse
 file path=usr/share/nmap/scripts/mtrace.nse
+file path=usr/share/nmap/scripts/murmur-version.nse
 file path=usr/share/nmap/scripts/mysql-audit.nse
 file path=usr/share/nmap/scripts/mysql-brute.nse
 file path=usr/share/nmap/scripts/mysql-databases.nse
 file path=usr/share/nmap/scripts/mysql-dump-hashes.nse
 file path=usr/share/nmap/scripts/mysql-empty-password.nse
+file path=usr/share/nmap/scripts/mysql-enum.nse
 file path=usr/share/nmap/scripts/mysql-info.nse
 file path=usr/share/nmap/scripts/mysql-query.nse
 file path=usr/share/nmap/scripts/mysql-users.nse
@@ -580,12 +674,15 @@
 file path=usr/share/nmap/scripts/nfs-ls.nse
 file path=usr/share/nmap/scripts/nfs-showmount.nse
 file path=usr/share/nmap/scripts/nfs-statfs.nse
+file path=usr/share/nmap/scripts/nje-node-brute.nse
+file path=usr/share/nmap/scripts/nntp-ntlm-info.nse
 file path=usr/share/nmap/scripts/nping-brute.nse
 file path=usr/share/nmap/scripts/nrpe-enum.nse
 file path=usr/share/nmap/scripts/ntp-info.nse
 file path=usr/share/nmap/scripts/ntp-monlist.nse
 file path=usr/share/nmap/scripts/omp2-brute.nse
 file path=usr/share/nmap/scripts/omp2-enum-targets.nse
+file path=usr/share/nmap/scripts/omron-info.nse
 file path=usr/share/nmap/scripts/openlookup-info.nse
 file path=usr/share/nmap/scripts/openvas-otp-brute.nse
 file path=usr/share/nmap/scripts/oracle-brute-stealth.nse
@@ -600,8 +697,11 @@
 file path=usr/share/nmap/scripts/pjl-ready-message.nse
 file path=usr/share/nmap/scripts/pop3-brute.nse
 file path=usr/share/nmap/scripts/pop3-capabilities.nse
+file path=usr/share/nmap/scripts/pop3-ntlm-info.nse
 file path=usr/share/nmap/scripts/pptp-version.nse
+file path=usr/share/nmap/scripts/qconn-exec.nse
 file path=usr/share/nmap/scripts/qscan.nse
+file path=usr/share/nmap/scripts/quake1-info.nse
 file path=usr/share/nmap/scripts/quake3-info.nse
 file path=usr/share/nmap/scripts/quake3-master-getservers.nse
 file path=usr/share/nmap/scripts/rdp-enum-encryption.nse
@@ -612,6 +712,7 @@
 file path=usr/share/nmap/scripts/resolveall.nse
 file path=usr/share/nmap/scripts/reverse-index.nse
 file path=usr/share/nmap/scripts/rexec-brute.nse
+file path=usr/share/nmap/scripts/rfc868-time.nse
 file path=usr/share/nmap/scripts/riak-http-info.nse
 file path=usr/share/nmap/scripts/rlogin-brute.nse
 file path=usr/share/nmap/scripts/rmi-dumpregistry.nse
@@ -624,16 +725,18 @@
 file path=usr/share/nmap/scripts/rsync-list-modules.nse
 file path=usr/share/nmap/scripts/rtsp-methods.nse
 file path=usr/share/nmap/scripts/rtsp-url-brute.nse
+file path=usr/share/nmap/scripts/rusers.nse
+file path=usr/share/nmap/scripts/s7-info.nse
 file path=usr/share/nmap/scripts/samba-vuln-cve-2012-1182.nse
 file path=usr/share/nmap/scripts/script.db
 file path=usr/share/nmap/scripts/servicetags.nse
+file path=usr/share/nmap/scripts/shodan-api.nse
 file path=usr/share/nmap/scripts/sip-brute.nse
 file path=usr/share/nmap/scripts/sip-call-spoof.nse
 file path=usr/share/nmap/scripts/sip-enum-users.nse
 file path=usr/share/nmap/scripts/sip-methods.nse
 file path=usr/share/nmap/scripts/skypev2-version.nse
 file path=usr/share/nmap/scripts/smb-brute.nse
-file path=usr/share/nmap/scripts/smb-check-vulns.nse
 file path=usr/share/nmap/scripts/smb-enum-domains.nse
 file path=usr/share/nmap/scripts/smb-enum-groups.nse
 file path=usr/share/nmap/scripts/smb-enum-processes.nse
@@ -649,12 +752,19 @@
 file path=usr/share/nmap/scripts/smb-security-mode.nse
 file path=usr/share/nmap/scripts/smb-server-stats.nse
 file path=usr/share/nmap/scripts/smb-system-info.nse
+file path=usr/share/nmap/scripts/smb-vuln-conficker.nse
+file path=usr/share/nmap/scripts/smb-vuln-cve2009-3103.nse
+file path=usr/share/nmap/scripts/smb-vuln-ms06-025.nse
+file path=usr/share/nmap/scripts/smb-vuln-ms07-029.nse
+file path=usr/share/nmap/scripts/smb-vuln-ms08-067.nse
 file path=usr/share/nmap/scripts/smb-vuln-ms10-054.nse
 file path=usr/share/nmap/scripts/smb-vuln-ms10-061.nse
+file path=usr/share/nmap/scripts/smb-vuln-regsvc-dos.nse
 file path=usr/share/nmap/scripts/smbv2-enabled.nse
 file path=usr/share/nmap/scripts/smtp-brute.nse
 file path=usr/share/nmap/scripts/smtp-commands.nse
 file path=usr/share/nmap/scripts/smtp-enum-users.nse
+file path=usr/share/nmap/scripts/smtp-ntlm-info.nse
 file path=usr/share/nmap/scripts/smtp-open-relay.nse
 file path=usr/share/nmap/scripts/smtp-strangeport.nse
 file path=usr/share/nmap/scripts/smtp-vuln-cve2010-4344.nse
@@ -663,6 +773,7 @@
 file path=usr/share/nmap/scripts/sniffer-detect.nse
 file path=usr/share/nmap/scripts/snmp-brute.nse
 file path=usr/share/nmap/scripts/snmp-hh3c-logins.nse
+file path=usr/share/nmap/scripts/snmp-info.nse
 file path=usr/share/nmap/scripts/snmp-interfaces.nse
 file path=usr/share/nmap/scripts/snmp-ios-config.nse
 file path=usr/share/nmap/scripts/snmp-netstat.nse
@@ -678,31 +789,45 @@
 file path=usr/share/nmap/scripts/ssh-hostkey.nse
 file path=usr/share/nmap/scripts/ssh2-enum-algos.nse
 file path=usr/share/nmap/scripts/sshv1.nse
+file path=usr/share/nmap/scripts/ssl-ccs-injection.nse
 file path=usr/share/nmap/scripts/ssl-cert.nse
 file path=usr/share/nmap/scripts/ssl-date.nse
+file path=usr/share/nmap/scripts/ssl-dh-params.nse
 file path=usr/share/nmap/scripts/ssl-enum-ciphers.nse
 file path=usr/share/nmap/scripts/ssl-google-cert-catalog.nse
+file path=usr/share/nmap/scripts/ssl-heartbleed.nse
 file path=usr/share/nmap/scripts/ssl-known-key.nse
+file path=usr/share/nmap/scripts/ssl-poodle.nse
 file path=usr/share/nmap/scripts/sslv2.nse
+file path=usr/share/nmap/scripts/sstp-discover.nse
 file path=usr/share/nmap/scripts/stun-info.nse
 file path=usr/share/nmap/scripts/stun-version.nse
 file path=usr/share/nmap/scripts/stuxnet-detect.nse
+file path=usr/share/nmap/scripts/supermicro-ipmi-conf.nse
 file path=usr/share/nmap/scripts/svn-brute.nse
 file path=usr/share/nmap/scripts/targets-asn.nse
+file path=usr/share/nmap/scripts/targets-ipv6-map4to6.nse
 file path=usr/share/nmap/scripts/targets-ipv6-multicast-echo.nse
 file path=usr/share/nmap/scripts/targets-ipv6-multicast-invalid-dst.nse
 file path=usr/share/nmap/scripts/targets-ipv6-multicast-mld.nse
 file path=usr/share/nmap/scripts/targets-ipv6-multicast-slaac.nse
+file path=usr/share/nmap/scripts/targets-ipv6-wordlist.nse
 file path=usr/share/nmap/scripts/targets-sniffer.nse
 file path=usr/share/nmap/scripts/targets-traceroute.nse
+file path=usr/share/nmap/scripts/targets-xml.nse
+file path=usr/share/nmap/scripts/teamspeak2-version.nse
 file path=usr/share/nmap/scripts/telnet-brute.nse
 file path=usr/share/nmap/scripts/telnet-encryption.nse
+file path=usr/share/nmap/scripts/telnet-ntlm-info.nse
 file path=usr/share/nmap/scripts/tftp-enum.nse
 file path=usr/share/nmap/scripts/tls-nextprotoneg.nse
+file path=usr/share/nmap/scripts/tor-consensus-checker.nse
 file path=usr/share/nmap/scripts/traceroute-geolocation.nse
+file path=usr/share/nmap/scripts/unittest.nse
 file path=usr/share/nmap/scripts/unusual-port.nse
 file path=usr/share/nmap/scripts/upnp-info.nse
 file path=usr/share/nmap/scripts/url-snarf.nse
+file path=usr/share/nmap/scripts/ventrilo-info.nse
 file path=usr/share/nmap/scripts/versant-info.nse
 file path=usr/share/nmap/scripts/vmauthd-brute.nse
 file path=usr/share/nmap/scripts/vnc-brute.nse
@@ -710,10 +835,13 @@
 file path=usr/share/nmap/scripts/voldemort-info.nse
 file path=usr/share/nmap/scripts/vuze-dht-info.nse
 file path=usr/share/nmap/scripts/wdb-version.nse
-file path=usr/share/nmap/scripts/whois.nse
+file path=usr/share/nmap/scripts/weblogic-t3-info.nse
+file path=usr/share/nmap/scripts/whois-domain.nse
+file path=usr/share/nmap/scripts/whois-ip.nse
 file path=usr/share/nmap/scripts/wsdd-discover.nse
 file path=usr/share/nmap/scripts/x11-access.nse
 file path=usr/share/nmap/scripts/xdmcp-discover.nse
+file path=usr/share/nmap/scripts/xmlrpc-methods.nse
 file path=usr/share/nmap/scripts/xmpp-brute.nse
 file path=usr/share/nmap/scripts/xmpp-info.nse
 file path=usr/share/zenmap/config/scan_profile.usp
@@ -722,11 +850,14 @@
 file path=usr/share/zenmap/docs/help.html
 file path=usr/share/zenmap/locale/de/LC_MESSAGES/zenmap.mo
 file path=usr/share/zenmap/locale/fr/LC_MESSAGES/zenmap.mo
+file path=usr/share/zenmap/locale/hi/LC_MESSAGES/zenmap.mo
 file path=usr/share/zenmap/locale/hr/LC_MESSAGES/zenmap.mo
 file path=usr/share/zenmap/locale/it/LC_MESSAGES/zenmap.mo
 file path=usr/share/zenmap/locale/ja/LC_MESSAGES/zenmap.mo
+file path=usr/share/zenmap/locale/pl/LC_MESSAGES/zenmap.mo
 file path=usr/share/zenmap/locale/pt_BR/LC_MESSAGES/zenmap.mo
 file path=usr/share/zenmap/locale/ru/LC_MESSAGES/zenmap.mo
+file path=usr/share/zenmap/locale/zh/LC_MESSAGES/zenmap.mo
 file path=usr/share/zenmap/misc/profile_editor.xml
 file path=usr/share/zenmap/pixmaps/default_32.png
 file path=usr/share/zenmap/pixmaps/default_75.png
--- a/components/nmap/patches/nmap-6.25-cve-2013-4885.patch	Fri Apr 15 10:18:28 2016 -0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,161 +0,0 @@
-# http://bugs.debian.org/cgi-bin/bugreport.cgi?msg=14;bug=719289
-# Index: scripts/http-domino-enum-passwords.nse
-# ===================================================================
---- nmap-6.25/scripts/http-domino-enum-passwords.nse	(revision 31575)
-+++ nmap-6.25/scripts/http-domino-enum-passwords.nse	(revision 31576)
[email protected]@ -315,9 +315,10 @@
- 				http_response = http.get( vhost or host, port, u_details.idfile, { auth = { username = user, password = pass }, no_cache = true })	
- 
- 				if ( http_response.status == 200 ) then
--					local status, err = saveIDFile( ("%s/%s.id"):format(download_path, u_details.fullname), http_response.body )
-+					local filename = download_path .. "/" .. stdnse.filename_escape(u_details.fullname .. ".id")
-+					local status, err = saveIDFile( filename, http_response.body )
- 					if ( status ) then
--						table.insert( id_files, ("%s ID File has been downloaded (%s/%s.id)"):format(u_details.fullname, download_path, u_details.fullname) )
-+						table.insert( id_files, ("%s ID File has been downloaded (%s)"):format(u_details.fullname, filename) )
- 					else
- 						table.insert( id_files, ("%s ID File was not saved (error: %s)"):format(u_details.fullname, err ) )
- 					end
-# Index: scripts/stuxnet-detect.nse
-# ===================================================================
---- nmap-6.25/scripts/stuxnet-detect.nse	(revision 31575)
-+++ nmap-6.25/scripts/stuxnet-detect.nse	(revision 31576)
[email protected]@ -81,7 +81,7 @@
- 
- 		fmt = save:gsub("%%h", host.ip)
- 		fmt = fmt:gsub("%%v", version)
--		file = io.open(fmt, "w")
-+		file = io.open(stdnse.filename_escape(fmt), "w")
- 		if file then
- 			stdnse.print_debug(1, "Wrote %d bytes to file %s.", #result.arguments, fmt)
- 			file:write(result.arguments)
-# Index: scripts/http-config-backup.nse
-# ===================================================================
---- nmap-6.25/scripts/http-config-backup.nse	(revision 31575)
-+++ nmap-6.25/scripts/http-config-backup.nse	(revision 31576)
[email protected]@ -209,7 +209,7 @@
-       if (response.status == 200) then
-         -- check it if is valid before inserting
-         if cfg.check(response.body) then
--          local filename = ((host.targetname or host.ip) .. url_path):gsub("/", "-");
-+          local filename = stdnse.escape_filename((host.targetname or host.ip) .. url_path)
- 
-           -- save the content
-           if save then
-# Index: scripts/hostmap-bfk.nse
-# ===================================================================
---- nmap-6.25/scripts/hostmap-bfk.nse	(revision 31575)
-+++ nmap-6.25/scripts/hostmap-bfk.nse	(revision 31576)
[email protected]@ -68,7 +68,7 @@
- 
- local HOSTMAP_SERVER = "www.bfk.de"
- 
--local filename_escape, write_file
-+local write_file
- 
- hostrule = function(host)
-   return not ipOps.isPrivate(host.ip)
[email protected]@ -106,7 +106,7 @@
- 
-   local filename_prefix = stdnse.get_script_args("hostmap-bfk.prefix")
-   if filename_prefix then
--    local filename = filename_prefix .. filename_escape(host.targetname or host.ip)
-+    local filename = filename_prefix .. stdnse.filename_escape(host.targetname or host.ip)
-     local status, err = write_file(filename, hostnames_str .. "\n")
-     if status then
-       output_tab.filename = filename
[email protected]@ -118,13 +118,6 @@
-   return output_tab
- end
- 
---- Escape some potentially unsafe characters in a string meant to be a filename.
--function filename_escape(s)
--  return string.gsub(s, "[\0/=]", function(c)
--    return string.format("=%02X", string.byte(c))
--  end)
--end
--
- function write_file(filename, contents)
-   local f, err = io.open(filename, "w")
-   if not f then
-# Index: scripts/domino-enum-users.nse
-# ===================================================================
---- nmap-6.25/scripts/domino-enum-users.nse	(revision 31575)
-+++ nmap-6.25/scripts/domino-enum-users.nse	(revision 31576)
[email protected]@ -103,7 +103,7 @@
- 		helper:disconnect()
- 		
- 		if ( status and data and path ) then
--			local filename = ("%s/%s.id"):format(path, username )
-+			local filename = path .. "/" .. stdnse.filename_escape(u_details.fullname .. ".id")
- 			local status, err = saveIDFile( filename, data )
- 			
- 			if ( status ) then
-# Index: scripts/ms-sql-dump-hashes.nse
-# ===================================================================
---- nmap-6.25/scripts/ms-sql-dump-hashes.nse	(revision 31575)
-+++ nmap-6.25/scripts/ms-sql-dump-hashes.nse	(revision 31576)
[email protected]@ -119,7 +119,7 @@
- 				local filename
- 				if ( dir ) then
- 					local instance = instance:GetName():match("%\\+(.+)$") or instance:GetName()
--					filename = ("%s/%s_%s_ms-sql_hashes.txt"):format(dir, host.ip, instance)
-+					filename = dir .. "/" .. stdnse.filename_escape(("%s_%s_ms-sql_hashes.txt"):format(host.ip, instance))
- 					saveToFile(filename, instanceOutput[1])
- 				end				
- 			end
-# Index: scripts/snmp-ios-config.nse
-# ===================================================================
---- nmap-6.25/scripts/snmp-ios-config.nse	(revision 31575)
-+++ nmap-6.25/scripts/snmp-ios-config.nse	(revision 31576)
[email protected]@ -184,7 +184,7 @@
- 			result = ( infile and infile:getContent() )
- 			
- 			if ( tftproot ) then
--				local fname = tftproot .. host.ip .. "-config"
-+				local fname = tftproot .. stdnse.filename_escape(host.ip .. "-config")
- 				local file, err = io.open(fname, "w")
- 				if ( file ) then
- 					file:write(result)
-# Index: nselib/stdnse.lua
-# ===================================================================
---- nmap-6.25/nselib/stdnse.lua	(revision 31575)
-+++ nmap-6.25/nselib/stdnse.lua	(revision 31576)
[email protected]@ -1195,4 +1195,36 @@
-   return aux(obj, "")
- end
- 
-+-- This pattern must match the percent sign '%' since it is used in
-+-- escaping.
-+local FILESYSTEM_UNSAFE = "[^a-zA-Z0-9._-]"
-+---
-+-- Escape a string to remove bytes and strings that may have meaning to
-+-- a filesystem, such as slashes. All bytes are escaped, except for:
-+-- * alphabetic <code>a</code>-<code>z</code> and <code>A</code>-<code>Z</code>, digits 0-9, <code>.</code> <code>_</code> <code>-</code>
-+-- In addition, the strings <code>"."</code> and <code>".."</code> have
-+-- their characters escaped.
-+--
-+-- Bytes are escaped by a percent sign followed by the two-digit
-+-- hexadecimal representation of the byte value.
-+-- * <code>filename_escape("filename.ext") --> "filename.ext"</code>
-+-- * <code>filename_escape("input/output") --> "input%2foutput"</code>
-+-- * <code>filename_escape(".") --> "%2e"</code>
-+-- * <code>filename_escape("..") --> "%2e%2e"</code>
-+-- This escaping is somewhat like that of JavaScript
-+-- <code>encodeURIComponent</code>, except that fewer bytes are
-+-- whitelisted, and it works on bytes, not Unicode characters or UTF-16
-+-- code points.
-+function filename_escape(s)
-+  if s == "." then
-+    return "%2e"
-+  elseif s == ".." then
-+    return "%2e%2e"
-+  else
-+    return (string.gsub(s, FILESYSTEM_UNSAFE, function (c)
-+      return string.format("%%%02x", string.byte(c))
-+    end))
-+  end
-+end
-+
- return _ENV;
-
--- a/components/nmap/patches/nmap-6.25-parfait.patch	Fri Apr 15 10:18:28 2016 -0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,350 +0,0 @@
-As part of the update of nmap to version 6.25, a 3PSC form was created:
-http://psarc.us.oracle.com/arc/PSARC/2012/376/nmap_6.25_3PSC_20121218.txt
-
-To answer one of the questions, a Parfait code analysis of the nmap 6.25
-code was run. The results were reported upstream:
-http://seclists.org/nmap-dev/2012/q4/412
-
-The nmap maintainers analyzed these results and responded:
-http://seclists.org/nmap-dev/2012/q4/504
-
-This is the patch they generated, with just 'nmap-6.25/' prepended to
-the filenames on the "^--- " and "+++ " diff lines.
-
-
-
-From a632df5fbeecf6271aadbd3bcc1c927977a7ba2c Mon Sep 17 00:00:00 2001
-From: David Fifield <[email protected]>
-Date: Thu, 20 Dec 2012 22:22:49 -0800
-Subject: [PATCH 1/4] Add an ncat_assert macro.
-
-This is an assert that will remain even if NDEBUG is defined.
----
- ncat/util.h |    7 +++++++
- 1 file changed, 7 insertions(+)
-
-diff --git ncat/util.h ncat/util.h
-index bf9b42e..18de755 100644
---- nmap-6.25/ncat/util.h
-+++ nmap-6.25/ncat/util.h
[email protected]@ -127,6 +127,13 @@ void logdebug(const char *fmt, ...)
-      __attribute__ ((format (printf, 1, 2)));
- 
- /* handle errors */
-+
-+#define ncat_assert(expr) \
-+do { \
-+        if (!(expr)) \
-+                bye("assertion failed: %s", #expr); \
-+} while (0)
-+
- void die(char *);
- 
- void bye(const char *, ...)
--- 
-1.7.10.4
-
-From cf5b5e2f5fdd4f7744e91c097d0395736e0744ab Mon Sep 17 00:00:00 2001
-From: David Fifield <[email protected]>
-Date: Thu, 20 Dec 2012 22:32:03 -0800
-Subject: [PATCH 2/4] Assert that get_fdinfo doesn't return NULL.
-
-Resolves these Parfait reports
-(http://seclists.org/nmap-dev/2012/q4/412).
-
-Error: Null pointer dereference (CWE 476)
-    Read from null pointer 'fdn'
-         at line 328 of components/nmap/build/amd64/ncat/ncat_core.c in function 'blocking_fdinfo_send'.
-           Function 'get_fdinfo' may return constant 'NULL' at line 615, called at line 366 in function 'ncat_broadcast'.
-           Constant 'NULL' passed into function 'blocking_fdinfo_send', argument 'fdn', from call at line 367.
-           Null pointer introduced at line 615 of components/nmap/build/amd64/ncat/util.c in function 'get_fdinfo'.
-         at line 330 of components/nmap/build/amd64/ncat/ncat_core.c in function 'blocking_fdinfo_send'.
-           Function 'get_fdinfo' may return constant 'NULL' at line 615, called at line 366 in function 'ncat_broadcast'.
-           Constant 'NULL' passed into function 'blocking_fdinfo_send', argument 'fdn', from call at line 367.
-           Null pointer introduced at line 615 of components/nmap/build/amd64/ncat/util.c in function 'get_fdinfo'.
-Error: Null pointer dereference (CWE 476)
-    Read from null pointer 'fdn'
-         at line 946 of components/nmap/build/amd64/ncat/ncat_listen.c in function 'shutdown_sockets'.
-           Function 'get_fdinfo' may return constant 'NULL' at line 615, called at line 945.
-           Null pointer introduced at line 615 of components/nmap/build/amd64/ncat/util.c in function 'get_fdinfo'.
----
- ncat/ncat_core.c   |    1 +
- ncat/ncat_listen.c |    6 ++++--
- 2 files changed, 5 insertions(+), 2 deletions(-)
-
-diff --git ncat/ncat_core.c ncat/ncat_core.c
-index e6cb16c..42cf389 100644
---- nmap-6.25/ncat/ncat_core.c
-+++ nmap-6.25/ncat/ncat_core.c
[email protected]@ -364,6 +364,7 @@ int ncat_broadcast(fd_set *fds, const fd_list_t *fdlist, const char *msg, size_t
-             continue;
- 
-         fdn = get_fdinfo(fdlist, i);
-+        ncat_assert(fdn != NULL);
-         if (blocking_fdinfo_send(fdn, msg, size) <= 0) {
-             if (o.debug > 1)
-                 logdebug("Error sending to fd %d: %s.\n", i, socket_strerror(socket_errno()));
-diff --git ncat/ncat_listen.c ncat/ncat_listen.c
-index 5a0b502..3e0a104 100644
---- nmap-6.25/ncat/ncat_listen.c
-+++ nmap-6.25/ncat/ncat_listen.c
[email protected]@ -293,6 +293,7 @@ static int ncat_listen_stream(int proto)
-                 FD_CLR(i, &master_readfds);
-                 FD_CLR(i, &master_writefds);
-                 fdi = get_fdinfo(&client_fdlist, i);
-+                ncat_assert(fdi != NULL);
-                 switch (ssl_handshake(fdi)) {
-                 case NCAT_SSL_HANDSHAKE_COMPLETED:
-                     /* Clear from sslpending_fds once ssl is established */
[email protected]@ -535,7 +536,7 @@ int read_socket(int recv_fd)
-     int nbytes, pending;
- 
-     fdn = get_fdinfo(&client_fdlist, recv_fd);
--    assert(fdn != NULL);
-+    ncat_assert(fdn != NULL);
- 
-     nbytes = 0;
-     do {
[email protected]@ -838,7 +839,7 @@ static void read_and_broadcast(int recv_fd)
-     int pending;
- 
-     fdn = get_fdinfo(&client_fdlist, recv_fd);
--    assert(fdn);
-+    ncat_assert(fdn != NULL);
- 
-     /* Loop while ncat_recv indicates data is pending. */
-     do {
[email protected]@ -943,6 +944,7 @@ static void shutdown_sockets(int how)
-             continue;
- 
-         fdn = get_fdinfo(&broadcast_fdlist, i);
-+        ncat_assert(fdn != NULL);
-         shutdown(fdn->fd, how);
-     }
- }
--- 
-1.7.10.4
-
-From b7b822c8a0f4810d19d5b061c6fbaac0a2ad5723 Mon Sep 17 00:00:00 2001
-From: David Fifield <[email protected]>
-Date: Fri, 21 Dec 2012 12:22:30 -0800
-Subject: [PATCH 3/4] Make PortList::mapPort return void.
-
-Contrary to the doc comment, this function could never return false but
-only cause a fatal error.
-
-Resolves these Parfait reports
-(http://seclists.org/nmap-dev/2012/q4/412).
-
-Error: Null pointer dereference (CWE 476)
-    Read from null pointer 'port'
-         at line 344 of components/nmap/build/amd64/portlist.cc in function 'PortList::setServiceProbeResults(unsigned short, int, serviceprobestate, char const*, service_tunnel_type, char const*, char const*, char const*, char const*, char const*, char const*, std::vector<char const*, std::allocator<char const*> > const*, char const*)'.
-           Function 'PortList::createPort(unsigned short, unsigned char)' may return constant 'NULL' at line 671, called at line 343.
-           Null pointer introduced at line 671 in function 'PortList::createPort(unsigned short, unsigned char)'.
-Error: Null pointer dereference (CWE 476)
-    Write to null pointer 'current'
-         at line 520 of components/nmap/build/amd64/portlist.cc in function 'PortList::setPortState(unsigned short, unsigned char, int)'.
-           Function 'PortList::createPort(unsigned short, unsigned char)' may return constant 'NULL' at line 671, called at line 518.
-           Null pointer introduced at line 671 in function 'PortList::createPort(unsigned short, unsigned char)'.
-Error: Null pointer dereference (CWE 476)
-    Write to null pointer 'answer'
-         at line 880 of components/nmap/build/amd64/portlist.cc in function 'PortList::setStateReason(unsigned short, unsigned char, unsigned short, unsigned char, sockaddr_storage const*)'.
-           Function 'PortList::createPort(unsigned short, unsigned char)' may return constant 'NULL' at line 671, called at line 877.
-           Null pointer introduced at line 671 in function 'PortList::createPort(unsigned short, unsigned char)'.
-         at line 885 of components/nmap/build/amd64/portlist.cc in function 'PortList::setStateReason(unsigned short, unsigned char, unsigned short, unsigned char, sockaddr_storage const*)'.
-           Function 'PortList::createPort(unsigned short, unsigned char)' may return constant 'NULL' at line 671, called at line 877.
-           Null pointer introduced at line 671 in function 'PortList::createPort(unsigned short, unsigned char)'.
----
- portlist.cc |   17 +++++------------
- portlist.h  |    2 +-
- 2 files changed, 6 insertions(+), 13 deletions(-)
-
-diff --git portlist.cc portlist.cc
-index 0c8af80..cd40d04 100644
---- nmap-6.25/portlist.cc
-+++ nmap-6.25/portlist.cc
[email protected]@ -629,8 +629,8 @@ Port *PortList::nextPort(const Port *cur, Port *next,
- }
- 
- /* Convert portno and protocol into the internal indices used to index
--   port_list. Returns false on error, true otherwise. */
--bool PortList::mapPort(u16 *portno, u8 *protocol) const {
-+   port_list. */
-+void PortList::mapPort(u16 *portno, u8 *protocol) const {
-   int mapped_portno, mapped_protocol;
- 
-   mapped_protocol = INPROTO2PORTLISTPROTO(*protocol);
[email protected]@ -638,7 +638,6 @@ bool PortList::mapPort(u16 *portno, u8 *protocol) const {
-   if (*protocol == IPPROTO_IP)
-     assert(*portno < 256);
-   if(port_map[mapped_protocol]==NULL || port_list[mapped_protocol]==NULL) {
--    assert(0);
-     fatal("%s(%i,%i): you're trying to access uninitialized protocol", __func__, *portno, *protocol);
-   }
-   mapped_portno = port_map[mapped_protocol][*portno];
[email protected]@ -648,14 +647,10 @@ bool PortList::mapPort(u16 *portno, u8 *protocol) const {
- 
-   *portno = mapped_portno;
-   *protocol = mapped_protocol;
--
--  return true;
- }
- 
- const Port *PortList::lookupPort(u16 portno, u8 protocol) const {
--  if (!mapPort(&portno, &protocol))
--    return NULL;
--
-+  mapPort(&portno, &protocol);
-   return port_list[protocol][portno];
- }
- 
[email protected]@ -667,8 +662,7 @@ Port *PortList::createPort(u16 portno, u8 protocol) {
- 
-   mapped_portno = portno;
-   mapped_protocol = protocol;
--  if (!mapPort(&mapped_portno, &mapped_protocol))
--    return NULL;
-+  mapPort(&mapped_portno, &mapped_protocol);
- 
-   p = port_list[mapped_protocol][mapped_portno];
-   if (p == NULL) {
[email protected]@ -688,8 +682,7 @@ int PortList::forgetPort(u16 portno, u8 protocol) {
- 
-   log_write(LOG_PLAIN, "Removed %d\n", portno);
- 
--  if (!mapPort(&portno, &protocol))
--    return -1;
-+  mapPort(&portno, &protocol);
- 
-   answer = port_list[protocol][portno];
-   if (answer == NULL)
-diff --git portlist.h portlist.h
-index 8eaee1c..d7faf71 100644
---- nmap-6.25/portlist.h
-+++ nmap-6.25/portlist.h
[email protected]@ -290,7 +290,7 @@ class PortList {
-   bool hasOpenPorts() const;
- 
-  private:
--  bool mapPort(u16 *portno, u8 *protocol) const;
-+  void mapPort(u16 *portno, u8 *protocol) const;
-   /* Get Port structure from PortList structure.*/
-   const Port *lookupPort(u16 portno, u8 protocol) const;
-   Port *createPort(u16 portno, u8 protocol);
--- 
-1.7.10.4
-
-From 536eb67f24f9f101cd4aa1c82510ebbe8086923d Mon Sep 17 00:00:00 2001
-From: David Fifield <[email protected]>
-Date: Fri, 21 Dec 2012 13:09:56 -0800
-Subject: [PATCH 4/4] Make ServiceNFO::currentprobe_timemsleft take a probe
- argument.
-
-It seems that this function was usually called after having called
-currentProbe outside the call to currentprobe_timemsleft, with the call
-to currentProbe inside the function having the same result. This is a
-bit tenuous, so make the probe we're talking about explicit.
-
-Resolves these Parfait reports
-(http://seclists.org/nmap-dev/2012/q4/412).
-
-Error: Null pointer dereference (CWE 476)
-    Read from null pointer 'ServiceNFO::currentProbe(this)'
-         at line 1813 of components/nmap/build/amd64/service_scan.cc in function 'ServiceNFO::currentprobe_timemsleft(timeval const*)'.
-           Function 'ServiceNFO::currentProbe()' may return constant 'NULL' at line 1707, called at line 1813.
-           Null pointer introduced at line 1707 in function 'ServiceNFO::currentProbe()'.
----
- service_scan.cc |   25 ++++++++++++++-----------
- 1 file changed, 14 insertions(+), 11 deletions(-)
-
-diff --git service_scan.cc service_scan.cc
-index b800665..9428a9a 100644
---- nmap-6.25/service_scan.cc
-+++ nmap-6.25/service_scan.cc
[email protected]@ -191,7 +191,7 @@ public:
-   // Number of milliseconds left to complete the present probe, or 0 if
-   // the probe is already expired.  Timeval can omitted, it is just there 
-   // as an optimization in case you have it handy.
--  int currentprobe_timemsleft(const struct timeval *now = NULL);
-+  int probe_timemsleft(const ServiceProbe *probe, const struct timeval *now = NULL);
-   enum serviceprobestate probe_state; // defined in portlist.h
-   nsock_iod niod; // The IO Descriptor being used in this probe (or NULL)
-   u16 portno; // in host byte order
[email protected]@ -1799,7 +1799,7 @@ void ServiceNFO::resetProbes(bool freefp) {
- }
- 
- 
--int ServiceNFO::currentprobe_timemsleft(const struct timeval *now) {
-+int ServiceNFO::probe_timemsleft(const ServiceProbe *probe, const struct timeval *now) {
-   int timeused, timeleft;
- 
-   if (now)
[email protected]@ -1810,7 +1810,11 @@ int ServiceNFO::currentprobe_timemsleft(const struct timeval *now) {
-     timeused = TIMEVAL_MSEC_SUBTRACT(tv, currentprobe_exec_time);
-   }
- 
--  timeleft = currentProbe()->totalwaitms - timeused;
-+  // Historically this function was always called with the assumption that
-+  // probe == currentProbe(). Check that this remains the case.
-+  assert(probe == currentProbe());
-+
-+  timeleft = probe->totalwaitms - timeused;
-   return (timeleft < 0)? 0 : timeleft;
- }
- 
[email protected]@ -1941,7 +1945,7 @@ static void adjustPortStateIfNecessary(ServiceNFO *svc) {
-     probestring = probe->getProbeString(&probestringlen);
-     assert(probestringlen > 0);
-     // Now we write the string to the IOD
--    nsock_write(nsp, nsi, servicescan_write_handler, svc->currentprobe_timemsleft(), svc,
-+    nsock_write(nsp, nsi, servicescan_write_handler, svc->probe_timemsleft(probe), svc,
- 		(const char *) probestring, probestringlen);
-     return 0;
-   }
[email protected]@ -1967,7 +1971,7 @@ static void startNextProbe(nsock_pool nsp, nsock_iod nsi, ServiceGroup *SG,
-       svc->currentprobe_exec_time = *nsock_gettimeofday();
-       send_probe_text(nsp, nsi, svc, probe);
-       nsock_read(nsp, nsi, servicescan_read_handler, 
--		 svc->currentprobe_timemsleft(nsock_gettimeofday()), svc);
-+		 svc->probe_timemsleft(probe, nsock_gettimeofday()), svc);
-     } else {
-       // Should only happen if someone has a highly perverse nmap-service-probes
-       // file.  Null scan should generally never be the only probe.
[email protected]@ -2016,7 +2020,7 @@ static void startNextProbe(nsock_pool nsp, nsock_iod nsi, ServiceGroup *SG,
- 	send_probe_text(nsp, nsi, svc, probe);
- 	// Now let us read any results
- 	nsock_read(nsp, nsi, servicescan_read_handler, 
--		   svc->currentprobe_timemsleft(nsock_gettimeofday()), svc);
-+		   svc->probe_timemsleft(probe, nsock_gettimeofday()), svc);
-       }
-     } else {
-       // No more probes remaining!  Failed to match
[email protected]@ -2261,7 +2265,7 @@ static void servicescan_connect_handler(nsock_pool nsp, nsock_event nse, void *m
-     svc->currentprobe_exec_time = *nsock_gettimeofday();
-     send_probe_text(nsp, nsi, svc, probe);
-     // Now let us read any results
--    nsock_read(nsp, nsi, servicescan_read_handler, svc->currentprobe_timemsleft(nsock_gettimeofday()), svc);
-+    nsock_read(nsp, nsi, servicescan_read_handler, svc->probe_timemsleft(probe, nsock_gettimeofday()), svc);
-   } else if (status == NSE_STATUS_TIMEOUT || status == NSE_STATUS_ERROR) {
-       // This is not good.  The connect() really shouldn't generally
-       // be timing out like that.  We'll mark this svc as incomplete
[email protected]@ -2421,13 +2425,12 @@ static void servicescan_read_handler(nsock_pool nsp, nsock_event nse, void *myda
-       // to timeout.  For now I'll limit it to 4096 bytes just to
-       // avoid reading megs from services like chargen.  But better
-       // approach is needed.
--      if (svc->currentprobe_timemsleft() > 0 && readstrlen < 4096) { 
--	nsock_read(nsp, nsi, servicescan_read_handler, svc->currentprobe_timemsleft(), svc);
-+      if (svc->probe_timemsleft(probe) > 0 && readstrlen < 4096) { 
-+	nsock_read(nsp, nsi, servicescan_read_handler, svc->probe_timemsleft(probe), svc);
-       } else {
- 	// Failed -- lets go to the next probe.
- 	if (readstrlen > 0)
--	  svc->addToServiceFingerprint(svc->currentProbe()->getName(), readstr, 
--				       readstrlen);
-+	  svc->addToServiceFingerprint(probe->getName(), readstr, readstrlen);
- 	startNextProbe(nsp, nsi, SG, svc, false);
-       }
-     }
--- 
-1.7.10.4
-