Age | Commit message (Collapse) | Author |
|
* Support build for target_os android
The target_os `android` is quite similar to `linux` but must be
mentioned in the guards explicitly. Tested for target
`aarch64-linux-android`.
* Add target aarch64-linux-android to ci
Use `cross` for building target `aarch64-linux-android`. In the `ci`
workflow the matrix branch of `os` `ubuntu-latest` is used because the
matrix organization is host os centric instead of target.
Releases are build with `cross` for target `aarch64-linux-android`.
Install `cross` if needed for a run. At the time of writing the latest
release of `cross` can't build binaries for target
`aarch64-linux-android` and it's common sense that the latest git tag or
`master` shall be used [1].
[1] https://github.com/cross-rs/cross/issues/1222
* Add android related readme section
|
|
* Fix IPv6 socket detect logic
* Write changelog
|
|
* Revert 89e1140
- simplelog is already thread safe
- see https://github.com/Drakulix/simplelog.rs/issues/146
* Write changelog
* Fix import for MacOS
|
|
* feat: add `PID` column to `Process` table
* fix(tests): populate fake data with the correct `ProcessInfo` type
* test: update snapshots
* refactor: use more idiomatic rust
* refactor: rename function from `get_proc_name` to `get_proc_info`
* refactor: only display PID when width available is highest
ref: https://github.com/imsnif/bandwhich/pull/165#issuecomment-620852892
* tests: update snapshots
* chore: update CHANGELOG
* fix: clippy warnings
* Revert "fix: clippy warnings"
This reverts commit e5f06cba1943d60b43a19957c42e3178c6916f69.
We will do this separately for the sake of keeping a clean history
* refactor: use `u32` for PID
* refactor: more idiomatic rust
---------
Co-authored-by: cyqsimon <28627918+cyqsimon@users.noreply.github.com>
|
|
|
|
|
|
* Refactor `OsInputOutput` (combine interfaces & frames into single Vec)
* Add note on handling a separate failure case
* Reduce code duplication
|
|
* Make logging race-free using a global lock & macro
* Fix clippy complaint
* Fix import for MacOS
* Make `mt_log` expand to an expression
|
|
* Ignore connections that fail parsing instead of panicking on BSD
- Tentative fix for #217
* Log when a connection fails parsing
- I actually love unreadable code
* Fix clippy complaint
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
- Binary build is fixed, but `packet_builder` crate seems to have some issues
|
|
|
|
* feat(dns): allow custom dns server as cli flag
* fix(style): remove commented debugging line (oops)
|
|
re-connect) (#191)
* Panic on non-Timeout errors in packet Sniffer
* Attempt to Re-establish interface channels after disconnect
Sniffer::next() now returns an io::Result so the thread in main can determine between no packets & a sniffing error
- Matching on EtherType to remove duplicate code determining IP Version
Added Sniffer::reset_channel to allow main to poll a previously connected interface
* Error handling & timeout delay performed in Sniffer::next
* Removing no longer needed Ether layer in test packet builder
|
|
Event::Resize (#186)
|
|
crate (#184)
* Show the error cause if initializing a DNS resolver fails
* Manually bump `resolv-conf` to `master` at rev `83c0f25`
This fixes the parsing of `/etc/resolv.conf` with `options trust-ad`
which is e.g. used in `systemd-resolved-v246`[1].
Refs #166
[1] https://github.com/systemd/systemd/commit/a742f9828ea73d9c2c9bafe701c10fe60f058012
|
|
* Remove connections vector from OpenSockets, use common OpenSockets implementation based on sysinfo and netstat2.
* Replace termion backend with crossterm, which works on Windows as well.
* More fixes for windows build.
* Remove tui default-features (termion), update unit tests for crossterm.
* Windows compilation fixes.
* Remove unused get_open_sockets implementations for linux and mac. Fix formatting.
* Add build.rs for windows to download and extract Packet.lib from npcap SDK.
* Resolve Cargo.lock after merging main.
* fix(tests): adjust snapshots new location of the dns resolution
* style(clippy): clippy
* style(clippy): remove dead code
* style(clippy): use write_all in build.rs
* style(clippy): remove unused import added by Intellij
* style(review): use String instead of str
* fix(build): run build.rs only once
* fix(regression): skip iface_is_up() filter only for Windows
* fix(review): restore per os implementation of get_open_sockets()
* fix(cargo): add missing os specific packages
* fix: conditional compilation of windows module
* fix: compilation errors
* fix: missing Protocol::from_str() implementation
* style(clippy): remove unused methods
Co-authored-by: Aram Drevekenin <aram@poor.dev>
|
|
* Replace termion backend with crossterm, which works on Windows as well.
* Remove tui default-features (termion), update unit tests for crossterm.
* Fix formatting.
|
|
packet_builder releases
|
|
|
|
* Initial
* Add errors file
* Update
* Add error message
* Update
* Add kind method
* Update error kind
* Update get_datalink_channel
* Update unused var
* Initial
* Add errors file
* Update
* Add error message
* Update
* Add kind method
* Update error kind
* Update error message
* Update error name
* Update error messages
* Update message
* Update
* Update error message
* format
* format2
* update
* Update error checking
* format
* refactor
* reduce message
* remove unused code
* fix lint
* wip
* add multiline
* add handle_errors
* update fold
* update
* clippy
* Update
* spaces
* fix(error-handling): display interface names in errors
* style(format): rustfmt
Co-authored-by: Aram Drevekenin <aram@poor.dev>
|
|
|
|
Support Ipv6
|
|
|
|
Tested in Linux. When offline, /etc/resolve.conf is a broken symlink,
so opening it yields an IO error. It should work similarly in other OSs as the
resolver is OS-agnostic.
Before, the message was simply: Error: io error. After this change, a more
informative message is shown.
|
|
|
|
|
|
|
|
|
|
This commit will add support for operating systems
that have the lsof tool, initially it will only work
on MacOS and FreeBSD, but more operating systems
may be added at a later time.
Signed-off-by: Valdemar Erk <valdemar@erk.io>
|
|
This is already mentioned in the README, but I figured that it might be
helpful to point linux-users to this if they try to run `bandwhich`
right after installing it and encountering this kind of error.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Fix bug that non-connected Udp sockets aren't displayed
|
|
|
|
|
|
|
|
* chore(packages): use pnet fork until they fix the pselect bug
* fix(deps): undo accidental dep change
|
|
|