@@ -1,4 +1,4 @@
-From 2a361989b5f84ec23ba7ccb6e527a5590ff55deb Mon Sep 17 00:00:00 2001
+From c634826b85bc4b67890a18379025d1bdd530efa0 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Sun, 20 Jan 2019 23:11:56 -0800
Subject: [PATCH] Fix building with libc++
@@ -6,15 +6,16 @@ Subject: [PATCH] Fix building with libc++
Upstream-Status: Pending
Signed-off-by: Khem Raj <raj.khem@gmail.com>
+Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
---
- nping/EchoServer.cc | 16 ++++++++--------
- 1 file changed, 8 insertions(+), 8 deletions(-)
+ nping/EchoServer.cc | 14 +++++++-------
+ 1 file changed, 7 insertions(+), 7 deletions(-)
diff --git a/nping/EchoServer.cc b/nping/EchoServer.cc
-index 40cd4d6..04433e1 100644
+index 41108fc67..d392039a6 100644
--- a/nping/EchoServer.cc
+++ b/nping/EchoServer.cc
-@@ -282,14 +282,14 @@ int EchoServer::nep_listen_socket(){
+@@ -212,14 +212,14 @@ int EchoServer::nep_listen_socket(){
server_addr6.sin6_len = sizeof(struct sockaddr_in6);
#endif
/* Bind to local address and the specified port */
@@ -32,7 +33,7 @@ index 40cd4d6..04433e1 100644
nping_print(VB_1, "Server bound to port %d", port);
}
}
-@@ -320,12 +320,12 @@ int EchoServer::nep_listen_socket(){
+@@ -250,12 +250,12 @@ int EchoServer::nep_listen_socket(){
#endif
/* Bind to local address and the specified port */
@@ -47,7 +48,7 @@ index 40cd4d6..04433e1 100644
nping_fatal(QT_3, "Could not bind to port %d (%s).", port, strerror(errno));
}else{
nping_print(VB_1, "Server bound to port %d", port);
-@@ -561,7 +561,7 @@ clientid_t EchoServer::nep_match_headers(IPv4Header *ip4, IPv6Header *ip6, TCPHe
+@@ -491,7 +491,7 @@ clientid_t EchoServer::nep_match_headers(IPv4Header *ip4, IPv6Header *ip6, TCPHe
nping_print(DBG_3, ";");
/* The payload magic may affect the score only between
* zero and 4 bytes. This is done to prevent long
@@ -56,16 +57,7 @@ index 40cd4d6..04433e1 100644
* increasing the score a lot and cause problems for
* the matching logic. */
current_score+= MIN(4, fspec->len)*FACTOR_PAYLOAD_MAGIC;
-@@ -571,7 +571,7 @@ clientid_t EchoServer::nep_match_headers(IPv4Header *ip4, IPv6Header *ip6, TCPHe
- default:
- nping_warning(QT_2, "Bogus field specifier found in client #%d context. Please report a bug", ctx->getIdentifier());
- break;
-- }
-+ }
- } /* End of field specifiers loop */
-
- nping_print(DBG_3, "%s() current_score=%.02f candidate_score=%.02f", __func__, current_score, candidate_score);
-@@ -650,7 +650,7 @@ clientid_t EchoServer::nep_match_packet(const u8 *pkt, size_t pktlen){
+@@ -581,7 +581,7 @@ clientid_t EchoServer::nep_match_packet(const u8 *pkt, size_t pktlen){
}else{
if( (tcplen=tcp.validate())==OP_FAILURE){
return CLIENT_NOT_FOUND;
@@ -74,3 +66,6 @@ index 40cd4d6..04433e1 100644
if( (int)pktlen > (iplen+tcplen) ){
if( payload.storeRecvData(pkt+iplen+tcplen, pktlen-iplen-tcplen)!=OP_FAILURE)
payload_included=true;
+--
+2.43.0
+
deleted file mode 100644
@@ -1,38 +0,0 @@
-From: Khem Raj <raj.khem@gmail.com>
-Date: Tue, 24 Jun 2026 00:00:00 +0000
-Subject: [PATCH] libdnet: fix PF_PACKET conftest nested function
-
-The bundled libdnet-stripped AC_DNET_LINUX_PF_PACKET check used
-"int foo() { return ETH_P_ALL; }" as the AC_TRY_COMPILE body, which the
-generated configure places inside main(). clang rejects nested function
-definitions ("function definition is not allowed here"), so the check
-fails and configure aborts with "Ethernet support not found". Use a plain
-expression statement that still references ETH_P_ALL. Patch both the macro
-source and the shipped configure.
-
-Upstream-Status: Pending
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
---- a/libdnet-stripped/m4/acinclude.m4
-+++ b/libdnet-stripped/m4/acinclude.m4
-@@ -149,7 +149,7 @@
- [AC_MSG_CHECKING(for Linux PF_PACKET sockets)
- AC_TRY_COMPILE([#include <netpacket/packet.h>
- #include <linux/if_ether.h>],
-- [int foo() { return ETH_P_ALL; }],
-+ [(void) ETH_P_ALL;],
- ac_cv_dnet_linux_pf_packet=yes,
- ac_cv_dnet_linux_pf_packet=no)
- AC_MSG_RESULT($ac_cv_dnet_linux_pf_packet)
---- a/libdnet-stripped/configure
-+++ b/libdnet-stripped/configure
-@@ -15219,7 +15219,7 @@
- int
- main (void)
- {
--int foo() { return ETH_P_ALL; }
-+(void) ETH_P_ALL;
- ;
- return 0;
- }
similarity index 94%
rename from meta-oe/recipes-security/nmap/nmap_7.99.bb
rename to meta-oe/recipes-security/nmap/nmap_7.991.bb
@@ -10,9 +10,8 @@ SRC_URI = "http://nmap.org/dist/${BP}.tar.bz2 \
file://0001-Include-time.h-header-to-pass-clang-compilation.patch \
file://0002-Fix-building-with-libc.patch \
file://0001-fix-racing-between-build-ncat-and-build-lua.patch \
- file://0004-libdnet-fix-PF_PACKET-conftest-nested-function.patch \
"
-SRC_URI[sha256sum] = "df512492ffd108e53a27a06f26d8635bbe89e0e569455dc8ffef058c035d51b2"
+SRC_URI[sha256sum] = "a5d507f29437bef3bedd4771ff9aaa8fc1c2a109ddba1f5b1cf12027456929be"
UPSTREAM_CHECK_REGEX = "nmap-(?P<pver>\d+(\.\d+)+)\.tar"
@@ -70,3 +69,5 @@ do_install:append() {
FILES:${PN} += "${PYTHON_SITEPACKAGES_DIR} ${datadir}/ncat"
RDEPENDS:${PN} += "${@bb.utils.contains('PACKAGECONFIG', 'ndiff', 'python3-difflib python3-asyncio python3-xml', '', d)}"
+
+OEQA_BUILDPATHS_SKIP = "${HOME}"
Upgrade to release 7.991: - Upgraded included OpenSSL t- version 3.0.21 on all platforms. - Fixed a memory-consumption hang in Ncat's HTTP proxy code that affected both connect and listen modes, reported by kumama_nui. - Patched our included libssh2 source with upstream fixes for CVE-2025-15661, CVE-2026-7598, CVE-2026-55199, CVE-2026-55200, CVE-2026-58050, and CVE-2026-58051. The version number has been annotated as 1.11.1_NMAP1 - [Zenmap][GH#3347] Fixed several issues leading t- crashes when parsing, editing, or saving command profiles containing '%' characters. - [NSE][GH#2272] smb-enum-shares failed t- produce output for valid shares when an error was encountered on one share. - [GH#3410] Fixed an issue where DNS resolution would incorrectly fail t- match the same name in a different case. - [NSE][GH#1066] Added service names for SSL-protected services like amt-soap-https t- portrules for several scripts, ensuring they run on these as well as the standard unencrypted services. - Audited and converted most instances of strcat, strcpy, and sprintf t- use bounded functions instead. - [NSE][GH#2221] mysql-dump-hashes now uses the correct column name for MySQL 5.7+ - [NSE][GH#2238] http-referer-checker was incorrectly fetching off-host URLs. Now only URLs on the target are fetched. - [GH#2122] When an interface is specified with -e, als- bind t- the IP address for that device s- that it works for non-Linux systems and non-root users. - [Nsock][GH#1939] When nsock_iod_set_localaddr() is used, nsock_connect_*() will now treat errors in bind(2) as connection failure. - [GH#2732] Fix a potential crash on 32-bit platforms in debug mode due to incorrect format specifier for 64-bit integer type. [Christopher Chavez] - [GH#3201][GH#3367] Increase line length limit for nmap-service-probes and correctly handle lines that are to- long. [@liquidpele, Ashutosh Kumar Singh] - [GH#3414] Avoid out-of-bounds read when parsing PTR domain names. [@toor11 (Juri)] - [GH#2245] Ensure variables updated by signal handlers are volatile sig_atomic_t. - [Ncat][GH#1410] Fix an assertion failure (count <= INT_MAX) in ncat -lk in some cases where stdin or a listening socket produces an error. - [NSE][GH#1946] Fix a cryptic error in smb-enum-services, "Server returned less data than needed for header" when smb.start_smb() failed. - Fixed an issue with parsing nmap-service-probes that could cause a corrupted file t- crash Nmap. Reported by Muhammed Hussein. - [NSE][GH#2016] Removed hostmap-bfk.nse, since the service it used shut down. - Fixed several issues reported by Himanshu Anand: infinite loop in TCP options parsing and out-of-bounds memory read in IPv4 OS detection; integer underflow in IPv6 extension header processing; and undefined behavior in DNS label parsing. - [GH#2721] Added checks for returned pointers from OpenSSL allocation functions. - [GH#1546] Fix an incorrect assertion "timeout / 1000 <= (long) o.scan_delay" in traceroute which failed for timeouts greater than 1 second when there was n- scan delay. - [GH#3175] The --stats-every option can now be used in conjunction with --noninteractive. Previously, n- stats messages were printed if a TTY was not attached. - [GH#3375] Nmap can now be built with OpenSSL 4.0 - [Nping][GH#1751] The --rate option will not accept a rate higher than 1000 packets per second, since Nsock timers have millisecond resolution. Use --delay 0 for unlimited rate. - [Nping] Fixed several issues with Nping in IPv6 mode including: + [GH#1261] Incorrect BPF generated leading t- "expression rejects all packets" + [GH#3215] Incorrect constant used t- check for IP version in Ech- Server - [NSE][GH#3368] Fixed an out-of-memory issue in packet.lua when parsing a zero-length TCP header option. [Maxim Suhanov] - Fixed an issue where Nmap OS scan trusts a packet's ip_len t- size a CRC32 computation over TCP RST payload data, which may result in reading arbitrary heap data. Reported by Michael Bommarito. - [Ncat][GH#3005] Correctly report listening port number. `ncat -l -p 0` will cause Ncat t- listen on an ephemeral port, but it was reporting itself as listening on port 0. - [Ncat][GH#1672] Fixed an issue where Ncat in server mode would quit without printing the last received data on a connection, particularly affecting SCTP. - [Ncat][GH#2827] Fixed an issue where Ncat in --send-only mode would ignore disconnects and crash when it tries t- send data t- a disconnected client. - [Ncat][GH#3291] Fixed an issue where Ncat on Windows would quit after 2 minutes due t- an OS-enforced timeout on the half-open TCP socket used to emulate STDIN. - [Nping][GH#564] Allow Nping t- fall back t- TCP Connect mode on Windows when Npcap is not installed. - [Ncat] Fixed several issues reported by Muhammed Hussein involving crashes in Ncat's server-mode HTTP proxy, as well as one code-quality issue with its Telnet negotiation code. - [Nsock][GH#2595] Fix an issue where Nsock's SOCKS4 proxy code would send additional null bytes on Windows and other platforms where the compiler does not understand __attribute__((packed)). [Daniel Miller] - The --release-memory option is now a no-op. Nmap will always run finalization routines that release allocated memory before closing. - Fixed an integer underflow in service_scan.cc that would cause little-endian integers extracted from the beginning of a service banner t- be interpreted as 0. Discovered with AFL++ by Malek Althubiany. - [Nsock][GH#583] Use OpenSSL security levels and callbacks t- prevent errors connecting t- certain insecure targets when using NSOCK_SSL_MAX_SPEED. The default, as used in Ncat, now uses stricter-than-default security level. - [GH#410] If a target times out due t- --host-timeout, d- not perform traceroute. - [Nping][GH#380] Disallow combining Ethernet-related options like --dest-mac with --send-ip - [NSE][GH#3250][GH#3206] Fix assertion failures in cases where connect or send returns immediately with a status other than ERROR, e.g. TIMEOUT or CANCELED. [Daniel Miller] - [Ncat][GH#290] Enable ncat -l --ssl t- use DHE and ECDHE cipher suites for perfect forward secrecy. - Fix a crash when writing long CPE strings t- output. Reported by Harshit Gupta. [Daniel Miller] - [Ncat] Fix several cases where Ncat's SOCKS5 client could interpret uninitialized data as protocol data, triggered by a malicious SOCKS5 proxy server. N- code execution or application crash is possible. Reported by Govind Pratap Singh. [Daniel Miller] - [Nping] Fix a out-of-bounds access in Nping Ech- client allowing a malicious Nping EchoServer t- zer- 32 bytes of memory outside the packet buffer. Reported by Harshit Gupta. [Daniel Miller] - Fix a 1-byte overrun (read) while reading certain crafted DNS labels, reported by Peter Parker. [Daniel Miller] - [NSE][GH#3317] Function url.build_path was mangling special characters in URL path segments. [nnposter] Drop 0004-libdnet-fix-PF_PACKET-conftest-nested-function.patch because the check for PF_PACKET that failed with clang has been fixed with commit 33c39cd38 in the upstream of nmap. Set OEQA_BUILDPATHS_SKIP to ignore upstream HOME path match and avoid buildpaths QA error. Signed-off-by: Leon Anavi <leon.anavi@konsulko.com> --- .../files/0002-Fix-building-with-libc.patch | 29 ++++++-------- ...x-PF_PACKET-conftest-nested-function.patch | 38 ------------------- .../nmap/{nmap_7.99.bb => nmap_7.991.bb} | 5 ++- 3 files changed, 15 insertions(+), 57 deletions(-) delete mode 100644 meta-oe/recipes-security/nmap/files/0004-libdnet-fix-PF_PACKET-conftest-nested-function.patch rename meta-oe/recipes-security/nmap/{nmap_7.99.bb => nmap_7.991.bb} (94%)