Commit graph

304 commits

Author SHA1 Message Date
dmiller
4651a54b4b Assertions for TCP and IP header length field 2026-06-26 22:06:05 +00:00
dmiller
3fa8d201fa Add checks for ip_hl < 5 2026-06-26 22:06:04 +00:00
dmiller
bb6754e76b Fix extension header parsing. Credit: Himanshu Anand 2026-06-25 21:58:49 +00:00
dmiller
8769ab35f3 Correctly handle root domain label. Credit: Himanshu Anand 2026-06-25 21:58:48 +00:00
dmiller
22a5194e18 Replace yet another implementation of TCP option parsing with a standard function
Some checks are pending
nmap multiplatform autobuilds / build (arm64, gcc, ubuntu-latest-gcc-arm64, ubuntu-latest) (push) Waiting to run
nmap multiplatform autobuilds / build (clang, freebsd-15-clang, ubuntu-latest) (push) Waiting to run
nmap multiplatform autobuilds / build (clang, macos-15-clang, macos-15) (push) Waiting to run
nmap multiplatform autobuilds / build (clang, macos-26-clang, macos-26) (push) Waiting to run
nmap multiplatform autobuilds / build (clang, netbsd-10-clang, ubuntu-latest) (push) Waiting to run
nmap multiplatform autobuilds / build (clang, openbsd-7-clang, ubuntu-latest) (push) Waiting to run
nmap multiplatform autobuilds / build (clang, solaris-11-clang, ubuntu-latest) (push) Waiting to run
nmap multiplatform autobuilds / build (clang, ubuntu-latest-clang, ubuntu-latest) (push) Waiting to run
nmap multiplatform autobuilds / build (egcc, openbsd-7-gcc, ubuntu-latest) (push) Waiting to run
nmap multiplatform autobuilds / build (gcc, freebsd-15-gcc, ubuntu-latest) (push) Waiting to run
nmap multiplatform autobuilds / build (gcc, netbsd-10-gcc, ubuntu-latest) (push) Waiting to run
nmap multiplatform autobuilds / build (gcc, solaris-11-gcc, ubuntu-latest) (push) Waiting to run
nmap multiplatform autobuilds / build (gcc, ubuntu-latest-gcc, ubuntu-latest) (push) Waiting to run
nmap multiplatform autobuilds / build (msvc, windows-latest-msvc, windows-latest) (push) Waiting to run
2026-06-24 20:48:16 +00:00
dmiller
84b525f61d Use TCPOptions class for IPv6 vectorization 2026-06-24 20:21:57 +00:00
dmiller
c86a45ef6e Consolidate TCP option parsing
Some checks are pending
nmap multiplatform autobuilds / build (arm64, gcc, ubuntu-latest-gcc-arm64, ubuntu-latest) (push) Waiting to run
nmap multiplatform autobuilds / build (clang, freebsd-15-clang, ubuntu-latest) (push) Waiting to run
nmap multiplatform autobuilds / build (clang, macos-15-clang, macos-15) (push) Waiting to run
nmap multiplatform autobuilds / build (clang, macos-26-clang, macos-26) (push) Waiting to run
nmap multiplatform autobuilds / build (clang, netbsd-10-clang, ubuntu-latest) (push) Waiting to run
nmap multiplatform autobuilds / build (clang, openbsd-7-clang, ubuntu-latest) (push) Waiting to run
nmap multiplatform autobuilds / build (clang, solaris-11-clang, ubuntu-latest) (push) Waiting to run
nmap multiplatform autobuilds / build (clang, ubuntu-latest-clang, ubuntu-latest) (push) Waiting to run
nmap multiplatform autobuilds / build (egcc, openbsd-7-gcc, ubuntu-latest) (push) Waiting to run
nmap multiplatform autobuilds / build (gcc, freebsd-15-gcc, ubuntu-latest) (push) Waiting to run
nmap multiplatform autobuilds / build (gcc, netbsd-10-gcc, ubuntu-latest) (push) Waiting to run
nmap multiplatform autobuilds / build (gcc, solaris-11-gcc, ubuntu-latest) (push) Waiting to run
nmap multiplatform autobuilds / build (gcc, ubuntu-latest-gcc, ubuntu-latest) (push) Waiting to run
nmap multiplatform autobuilds / build (msvc, windows-latest-msvc, windows-latest) (push) Waiting to run
2026-06-24 14:47:12 +00:00
dmiller
5767158030 Reuse raw socket for IPv6 when possible
Some checks failed
nmap multiplatform autobuilds / build (arm64, gcc, ubuntu-latest-gcc-arm64, ubuntu-latest) (push) Has been cancelled
nmap multiplatform autobuilds / build (clang, freebsd-15-clang, ubuntu-latest) (push) Has been cancelled
nmap multiplatform autobuilds / build (clang, macos-15-clang, macos-15) (push) Has been cancelled
nmap multiplatform autobuilds / build (clang, macos-26-clang, macos-26) (push) Has been cancelled
nmap multiplatform autobuilds / build (clang, netbsd-10-clang, ubuntu-latest) (push) Has been cancelled
nmap multiplatform autobuilds / build (clang, openbsd-7-clang, ubuntu-latest) (push) Has been cancelled
nmap multiplatform autobuilds / build (clang, solaris-11-clang, ubuntu-latest) (push) Has been cancelled
nmap multiplatform autobuilds / build (clang, ubuntu-latest-clang, ubuntu-latest) (push) Has been cancelled
nmap multiplatform autobuilds / build (egcc, openbsd-7-gcc, ubuntu-latest) (push) Has been cancelled
nmap multiplatform autobuilds / build (gcc, freebsd-15-gcc, ubuntu-latest) (push) Has been cancelled
nmap multiplatform autobuilds / build (gcc, netbsd-10-gcc, ubuntu-latest) (push) Has been cancelled
nmap multiplatform autobuilds / build (gcc, solaris-11-gcc, ubuntu-latest) (push) Has been cancelled
nmap multiplatform autobuilds / build (gcc, ubuntu-latest-gcc, ubuntu-latest) (push) Has been cancelled
nmap multiplatform autobuilds / build (msvc, windows-latest-msvc, windows-latest) (push) Has been cancelled
2026-06-16 17:32:12 +00:00
dmiller
738455f46c Consolidate getNextHopMAC to libnetutil 2026-06-13 06:09:21 +00:00
dmiller
a36249fdda Fix a C++11-ism 2026-06-11 18:01:39 +00:00
dmiller
e8392e7cca Fix Windows build and silence some warnings 2026-06-11 17:56:27 +00:00
dmiller
2e47fa8746 Add nsock to include dirs for libnetutil on Windows
Some checks are pending
nmap multiplatform autobuilds / build (arm64, gcc, ubuntu-latest-gcc-arm64, ubuntu-latest) (push) Waiting to run
nmap multiplatform autobuilds / build (clang, freebsd-15-clang, ubuntu-latest) (push) Waiting to run
nmap multiplatform autobuilds / build (clang, macos-15-clang, macos-15) (push) Waiting to run
nmap multiplatform autobuilds / build (clang, macos-26-clang, macos-26) (push) Waiting to run
nmap multiplatform autobuilds / build (clang, netbsd-10-clang, ubuntu-latest) (push) Waiting to run
nmap multiplatform autobuilds / build (clang, openbsd-7-clang, ubuntu-latest) (push) Waiting to run
nmap multiplatform autobuilds / build (clang, solaris-11-clang, ubuntu-latest) (push) Waiting to run
nmap multiplatform autobuilds / build (clang, ubuntu-latest-clang, ubuntu-latest) (push) Waiting to run
nmap multiplatform autobuilds / build (egcc, openbsd-7-gcc, ubuntu-latest) (push) Waiting to run
nmap multiplatform autobuilds / build (gcc, freebsd-15-gcc, ubuntu-latest) (push) Waiting to run
nmap multiplatform autobuilds / build (gcc, netbsd-10-gcc, ubuntu-latest) (push) Waiting to run
nmap multiplatform autobuilds / build (gcc, solaris-11-gcc, ubuntu-latest) (push) Waiting to run
nmap multiplatform autobuilds / build (gcc, ubuntu-latest-gcc, ubuntu-latest) (push) Waiting to run
nmap multiplatform autobuilds / build (msvc, windows-latest-msvc, windows-latest) (push) Waiting to run
2026-06-10 22:51:39 +00:00
dmiller
b7e3657ec7 Make some more parameters const 2026-06-10 21:39:42 +00:00
dmiller
756d012567 massdns: ensure servers are set in Init so that isMassDnsOK works 2026-06-10 21:39:41 +00:00
dmiller
6a4c9d48b3 Move NetBlock classes from TargetGroup to libnetutil/NetBlock 2026-06-10 21:39:40 +00:00
dmiller
7ae3835fa5 Move mass_dns from nmap_dns to libnetutil/massdns 2026-06-10 21:39:39 +00:00
dmiller
c44b7b3f9b move resolve_all to libnetutil. Let resolve use AI_IDN 2026-06-10 21:39:38 +00:00
dmiller
3d71e96550 Make an argument const 2026-06-10 21:39:37 +00:00
dmiller
e7b196be83 Fix a few signed/unsigned comparison warnings 2026-05-28 20:21:17 +00:00
dmiller
2d46c6b86c Avoid static buffer for protocol hdrinfo functions 2026-05-12 18:09:00 +00:00
dmiller
4ea1c703de export various protocol header info functions 2026-05-12 14:35:30 +00:00
dmiller
013a93ce0a Use brackets around IPv6 addresses used with port numbers 2026-05-12 14:35:29 +00:00
dmiller
94099a2ba9 Combine cases and refactor 2026-05-12 14:35:28 +00:00
dmiller
9543f7cbdb refactor ippackethdrinfo, splitting out transports 2026-05-12 14:35:28 +00:00
dmiller
09793684cb Move packet detail print functions to packettrace.cc 2026-05-12 14:35:27 +00:00
dmiller
af821fa833 Mark a few functions static 2026-05-12 14:35:26 +00:00
dmiller
6d95d721e0 Simplify function: return const strings, not static buffer 2026-04-30 22:02:01 +00:00
dmiller
86b6473cbc Use aligned header structs in ippackethdrinfo() 2026-04-22 19:33:59 +00:00
dmiller
21557e7b2f Ensure packet buffers are long enough for headers 2026-04-22 16:13:10 +00:00
dmiller
c3140c4799 Avoid bad downcast 2026-04-22 16:13:07 +00:00
dmiller
36f0b76bdb More alignment fixes 2026-04-22 01:01:19 +00:00
dmiller
a98e14f4b6 Avoid casting PacketElement to ICMPHeader until type is known. 2026-04-22 01:01:18 +00:00
dmiller
8ef3ed1471 Avoid undefined behavior from unaligned accesses 2026-04-20 15:21:55 +00:00
dmiller
95d380b836 Bump copyright date to 2026 [skip ci] 2026-02-16 22:33:40 +00:00
dmiller
30f85c07c6 Only use get_srcaddr if SO_BINDTODEVICE is defined; otherwise use route address 2026-02-06 22:27:05 +00:00
dmiller
6eb24a058d Treat interfaces with Ethernet addresses as Ethernet. See #2711 2026-02-05 20:56:52 +00:00
dmiller
c1d16550dc Consolidate and improve error checks for missing source MAC. See #2711 2026-01-28 21:36:15 +00:00
dmiller
3a39ec6d9b Ignore RTN_UNSPEC, possible with -e and -S. Fixes #2955 2025-10-14 18:43:59 +00:00
dmiller
b4e536f371 Only use eth handle for Ethernet on non-Windows systems. 2025-09-03 17:04:48 +00:00
dmiller
99e396b4a0 Fix various fatal errors around --send-eth 2025-09-03 17:04:47 +00:00
dmiller
5bb82a2ad0 Fix crash in socket_bindtodevice: NULL device is permissible 2025-09-03 17:04:46 +00:00
dmiller
b6c3989259 Fix incorrect macro definition for eth_handle_close on Windows 2025-07-15 17:48:34 +00:00
dmiller
67a796844f Consolidate raw socket acquisition. 2025-06-30 19:24:32 +00:00
dmiller
3499025302 Wrap dnet eth functions for non-Ethernet links 2025-06-23 20:54:32 +00:00
dmiller
7637ce3674 Consolidate send_ip*_eth() functions 2025-06-23 20:54:31 +00:00
dmiller
3496617f8f Check return value of getinterfaces. Fixes #3032 2025-06-09 19:58:44 +00:00
dmiller
cb5f577848 Remove crashing, unused debug code 2025-04-16 05:40:42 +00:00
dmiller
40b5bda3ac Consistent Windows build parameters 2025-04-15 23:58:46 +00:00
dmiller
f4f5cba43d Avoid copying link-layer header; point instead 2025-04-11 21:45:17 +00:00
dmiller
21e5cc67b4 Windows build fixes for libdnet-stripped 2025-04-11 16:39:12 +00:00