Commit Graph

32 Commits

Author SHA1 Message Date
Marco Cadetg
b0f2d01510 Remove AppImage packaging and add desktop integration to RPM
- Remove AppImage files (incompatible with capabilities/setcap)
- Add icon and desktop file to cargo-generate-rpm in Cargo.toml
- Add icon and desktop file to Fedora COPR spec file
- RPM packages now have proper desktop integration like DEB packages
2025-10-09 12:49:33 +02:00
Marco Cadetg
0229fa1079 chore: update build dependencies 2025-10-09 12:21:58 +02:00
Marco Cadetg
0d02b99b79 Bundle vmlinux.h files to eliminate network dependency during builds (#41)
* feat: bundle vmlinux.h files to eliminate network dependency during builds

- Add bundled vmlinux.h for x86, aarch64, and arm (~3MB total)
- Remove network download code from build.rs
- Remove ureq dependency and transitive deps
- Update Dockerfile to copy bundled headers
- Remove obsolete vmlinux_min.h
- Update documentation to reflect bundled approach

Fixes #38
2025-10-09 12:07:40 +02:00
Marco Cadetg
ed543746a0 Release v0.13.0
- Windows process identification via IP Helper API
- Privilege detection with platform-specific guidance
- Fix packet length calculation for large packets
2025-10-04 16:54:04 +02:00
Marco Cadetg
6a8e738a63 feat: implement Windows process identification via IP Helper API (#37)
- Add Windows process lookup using GetExtendedTcpTable/GetExtendedUdpTable
- Resolve process names via OpenProcess and QueryFullProcessImageNameW
- Support TCP/UDP IPv4 and IPv6 connections
- Implement time-based caching with 2-second TTL
- Fix port byte order conversion from network to host order
- Migrate from winapi to windows crate (v0.59)
- Add debug logging for process lookup operations
- Update documentation in ROADMAP.md and README.md

Closes #36
2025-10-04 16:32:08 +02:00
Marco Cadetg
7f7925b5e4 Release v0.12.1
- Improved crate metadata for crates.io publishing
2025-10-02 08:58:49 +02:00
Marco Cadetg
e22c95fec1 fix: remove vmlinux crate dep (#28)
* fix: remove vmlinux crate dep

* fix: download architecture-specific vmlinux.h at build time

Instead of using a git dependency (not allowed on crates.io), download the
architecture-specific vmlinux.h header at build time from the libbpf/vmlinux.h
repository. This approach:

- Removes git dependency from Cargo.toml (crates.io compatible)
- Downloads correct arch-specific header (x86, aarch64, arm)
- Caches downloaded headers in OUT_DIR (reuses between builds)
- Works with cargo install
- Supports cross-compilation for all architectures

The vmlinux.h file (~3-4MB per arch) is downloaded once per architecture
and cached, so subsequent builds are fast.

* fix: use ureq with rustls instead of http_req

http_req depends on native-tls/openssl-sys which requires OpenSSL to be
installed in the cross-compilation containers. Switch to ureq with the
rustls backend which has no system dependencies and works in all
cross-compilation environments.

* fix: follow symlink when downloading vmlinux.h

The vmlinux.h files in the libbpf/vmlinux.h repository are symlinks to
versioned files (e.g. vmlinux_6.14.h). When downloading via
raw.githubusercontent.com, we get the symlink content (just the target
filename) instead of the actual file.

Solution: Download the symlink first to get the target filename, then
download the actual versioned file. This ensures we get the full header
content instead of just the symlink text.

* add crate publish workflow
2025-10-02 08:49:20 +02:00
Marco Cadetg
df38754959 Release v0.12.0
### Added
- Vim-style navigation (g/G) for jumping to beginning/end of connection list
- Comprehensive table sorting functionality with visual indicators
- Port display toggle (p key) to switch between service names and port numbers
- Enhanced connection navigation with better cleanup indication
- Localhost filtering control with --show-localhost flag

### Fixed
- Windows double key event handling
- Windows MSI runtime dependency checks for Npcap/WinPcap
- Linux "any" interface selection
- Package dependencies cleanup (removed clang/llvm from RPM/DEB)
- Docker build stability (removed armv7)
2025-10-01 20:48:22 +02:00
Marco Cadetg
9ac3714ca4 fix: windows msi missing VC++ dist (#26)
- Add startup check that detects missing Npcap/WinPcap DLLs
- Display helpful error message with installation instructions
- Update README with note about runtime dependency checking
- Add winapi dependency for Windows DLL detection
2025-10-01 20:17:37 +02:00
Marco Cadetg
27a258abb8 fix: remove runtime deps clang, llvm from rpm, deb package 2025-09-30 21:56:23 +02:00
Marco Cadetg
8ade340a36 Release v0.11.0
- Docker support with eBPF for enhanced Linux performance
- Multi-architecture Docker builds (amd64, arm64, armv7)
- Cross-platform packaging and release automation
- Fixed RPM package dependencies and Windows MSI packaging
- Improved release workflow automation
2025-09-30 10:11:59 +02:00
Marco Cadetg
225ed42359 fix: libelf dep in rpm 2025-09-30 09:46:06 +02:00
Marco Cadetg
42db7f5614 fix: release workflow (#17)
* Remove musl targets to simplify Linux builds and fix cross-compilation issues
* Enable eBPF by default on Linux via linux-default feature for better packet capture
* Add macOS code signing and notarization support with graceful fallback for unsigned builds
* Fix Windows MSI packaging with improved WiX configuration and Npcap library linking
* Auto-extract changelog content from CHANGELOG.md into GitHub release notes
* Fix ARM cross-compilation (aarch64, armv7) with proper library paths and eBPF support
* Add comprehensive installation documentation for DMG, MSI, DEB, and RPM packages
* Allow re-running releases with --clobber flag for artifact uploads
2025-09-30 09:39:26 +02:00
Marco Cadetg
eca0e6000d feat: add cross-platform packaging and release automation
- Add GitHub Actions workflow for automated releases
- Create .deb, .rpm, AppImage, .dmg, and .msi packages
- Generate shell completions and manpages in build.rs
- Add platform-specific icons from rustnet3.svg
- Include eBPF dependencies for Linux packages
- Support Windows 32-bit and 64-bit builds
- Extract shared CLI module to prevent duplication
2025-09-29 11:56:55 +02:00
Marco Cadetg
6d451c39df RustNet version bump 0.10.0 2025-09-26 08:46:31 +02:00
Marco Cadetg
4f5d84620b add minimum rust version 2025-09-26 08:43:36 +02:00
Marco Cadetg
6e89440114 Release v0.9.0
- Experimental eBPF support for enhanced Linux socket tracking
- Windows platform support
2025-09-18 11:53:33 +02:00
Marco Cadetg
799d66cf86 feat: Add experimental eBPF support for enhanced socket tracking (#11)
* feat: Add experimental eBPF support for enhanced socket tracking

- Implement eBPF-based socket tracker for Linux with CO-RE support
- Add minimal vmlinux header (5.5KB) instead of full 3.4MB file
- Create graceful fallback mechanism to procfs when eBPF unavailable
- Add comprehensive eBPF build documentation
- Integrate libbpf-rs for eBPF program loading and management
- Support both IPv4 and IPv6 socket tracking
- Add capability checking for required permissions

The eBPF feature is optional and disabled by default. When enabled,
it provides faster and more accurate process-to-socket mapping on
Linux systems with appropriate permissions.
2025-09-18 11:46:03 +02:00
Marco Cadetg
54b2d77f7e update cargo crate information 2025-09-12 09:35:17 +02:00
Marco Cadetg
0489834461 Release v0.8.0
- Added SSH Deep Packet Inspection (DPI) with comprehensive protocol analysis
- Enhanced connection filtering with SSH-specific filters
- Improved CI/CD with path-based GitHub Actions triggers
- Updated documentation with SSH examples and state descriptions
2025-09-11 12:38:30 +02:00
Marco Cadetg
ad4e8ef3e6 Release v0.7.0
- Fixed SecureCRT backspace handling issue
2025-09-11 09:15:11 +02:00
Marco Cadetg
9946731f4b prepare release 0.6.0 2025-09-10 11:35:34 +02:00
Marco Cadetg
5c6cc660ae upgrade to version 0.5.0 2025-09-09 15:39:42 +02:00
Marco Cadetg
1851d20c46 release rustnet 0.4.0 2025-08-29 11:08:59 +02:00
Marco Cadetg
51dd7dcf24 release v.0.3.0 2025-08-28 15:44:42 +02:00
Marco Cadetg
f183417216 use pktab on mac to retrieve process information 2025-08-27 17:43:54 +02:00
Marco Cadetg
2b5daa95ac improve quic dissector 2025-08-06 18:28:45 +02:00
Marco Cadetg
0eee869a2b working code ;) 2025-06-30 14:15:40 +02:00
Marco Cadetg
2ae7f41f24 new way to load connections in separate thread 2025-06-26 15:45:55 +02:00
Marco Cadetg (aider)
866f52284e feat: Add arboard dependency for clipboard access 2025-05-09 17:17:45 +02:00
Marco Cadetg
f0125737b4 adding broken dns lookup 2025-04-29 20:01:35 +02:00
Marco Cadetg
f6a32d65cf initial rustnet app 2025-04-27 20:35:12 +02:00