summaryrefslogtreecommitdiffhomepage
Commit message (Collapse)AuthorAgeFilesLines
...
* build: decouple target `install' with `build'dilluti0n2025-09-071-3/+4
| | | | | | When installing, build should not happen both inside of release tarball and repository (cargo build with root user is kinda complexed).
* Add `--locked' option for cargo for reproducible builddilluti0n2025-09-071-1/+1
|
* Fix sha256sum path issue (dist/ is prefixed inside sha256 file)dilluti0n2025-09-071-2/+2
|
* scripts: remove obsolate release scriptdilluti0n2025-09-071-75/+0
|
* Implement makeing release tarball on Makefiledilluti0n2025-09-072-4/+62
|
* Add Makefile for instalation on Linuxdilluti0n2025-09-071-0/+48
|
* scripts: exclude debuginfo file from tarballdilluti0n2025-09-071-10/+7
|
* log: add splash! macro and centralize no-splash handlingdilluti0n2025-09-074-30/+39
| | | | | | | | | | | | | * Introduce: `splash!` macro in `log.rs` to print startup messages conditionally, based on `--no-splash` flag. * Move: `NO_SPLASH` management into `log.rs` with helper functions: (`set_no_splash`, `no_splash`). * Remove: old `splash()` function in `main.rs` and replace with `splash!` macro usage. * Set: default `LogLevel` according to build profile (Debug → Debug, Release → Warning). * Print: unified startup messages across Linux and Windows, including `MESSAGE_AT_RUN`.
* docs: refine wording in README.mddilluti0n2025-09-071-7/+8
|
* docs: expand bugs-to section with more detailed explainationdilluti0n2025-09-073-17/+37
|
* manual: update package descriptiondilluti0n2025-09-072-2/+2
|
* README.md: add many sectionsdilluti0n2025-09-071-3/+72
|
* Add changelogdilluti0n2025-09-071-0/+3
|
* Add markdown version of manual rendered with pandoc from dpibreak.1dilluti0n2025-09-071-0/+111
| | | | pandoc -f man -t gfm --shift-heading-level-by=1 dpibreak.1 -o dpibreak.1.md
* Add manual pagedilluti0n2025-09-071-0/+131
|
* scripts: set target to x86_64-unknown-linux-musl on releasedilluti0n2025-09-071-9/+46
| | | | | The binary size is about 3MB before stripping anyway, so whether it’s built with musl or glibc doesn’t really make a difference.
* Update package descriptiondilluti0n2025-09-072-3/+3
|
* scripts: implement release script for linuxdilluti0n2025-09-052-0/+43
|
* res: update icondilluti0n2025-09-051-0/+0
|
* Update copyright notices to notice email instead of github linkdilluti0n2025-09-0511-13/+12
|
* main: fix typo on splash message.dilluti0n2025-09-051-1/+1
|
* README.md: update copyright noticedilluti0n2025-09-051-14/+3
|
* Update version and metadatas on Cargo.tomldilluti0n2025-09-054-6/+17
| | | | * Use: Cargo.toml inside on program
* README.md: add disclaimerdilluti0n2025-09-051-0/+6
|
* Add windows program icons and embed with it build.rsdilluti0n2025-09-057-0/+1
|
* Add license document and copyright notice headersdilluti0n2025-09-0514-0/+866
|
* Implement add-header.sh to add license headerdilluti0n2025-09-051-0/+56
|
* Add help message for flag --no-splashdilluti0n2025-09-051-0/+1
|
* log: update error messagedilluti0n2025-09-051-1/+1
|
* Add splash message and option --no-splashdilluti0n2025-09-051-1/+18
|
* Add flag --loglevel to set loglevel on runtimedilluti0n2025-09-032-10/+51
| | | | | | | | | | | | | | | * Introduce: `DEFAULT_LOG_LEVEL` and `LOG_LEVEL_OVERRIDE` (OnceLock) in log.rs. * Add: `set_log_level()` and `current_log_level()`; gate defaults by `debug_assertions`. * Implement: `FromStr` for `LogLevel` with a proper error type (`ParseLogLevelError`). * Update: `log_println!` to respect `current_log_level()` and use `format_args!`. * Extend: CLI: `--loglevel <debug|info|warning|error>` and reflect it in `usage()`. * Replace: ad-hoc prints with `log_println!` and plumb parsed level into `set_log_level`.
* Tidy up LogLevel enum definitiondilluti0n2025-09-034-21/+21
| | | | | | * Remove: unused `Fatal` variant from `LogLevel`. * Update: comment on `Error` to indicate it represents unrecoverable errors.
* Use log.rs for conditional logging and centralized error reportingdilluti0n2025-09-032-3/+8
| | | | | | | | | * Set: `LOG_LEVEL` to `Debug` in debug builds and `Warning` in release builds via `#[cfg(debug_assertions)]`. * Replace: direct `println!` calls with `log_println!` for packet handling, warning messages, and argument parsing errors. * Ensures: consistent log formatting and respects the global log level configuration across the codebase.
* Refactor main to ensure cleanup via RAII guarddilluti0n2025-09-031-2/+31
| | | | | | | | | Introduce `EnsureCleanup` struct with a `Drop` implementation that calls `platform::cleanup()`. This guarantees cleanup is always performed after a successful bootstrap, regardless of how execution exits. Error handling is centralized in `main()`, where errors are logged once with their cause chain, and the process exits with the appropriate status code.
* Refactor prefixed logs to using log.rs, leaving Errors untoucheddilluti0n2025-09-033-10/+13
|
* Implement log.rs; log level handlingdilluti0n2025-09-031-0/+34
|
* Add prefix [INFO] or [WARNNING] on log messagesdilluti0n2025-08-312-10/+10
|
* platform: windows: log WinDivert handle creationdilluti0n2025-08-311-5/+7
| | | | | | Define the TCP:443 outbound filter as a constant and reuse it in WinDivert::network. Add a log message when the handle is successfully constructed for better visibility during runtime.
* platform: linux: add verbose messages on bootstrapdilluti0n2025-08-311-3/+19
|
* platform: linux: unhardcode chain name DPIBREAKdilluti0n2025-08-311-7/+11
|
* Move is_client_hello to tls module for better readabilityDilluti0n2025-08-262-31/+29
|
* Fix typo on split_packet error messageDilluti0n2025-08-261-1/+1
|
* Decouple once_cell by replacing it with standard libDilluti0n2025-08-233-11/+2
|
* platform: linux: decouple once_cellDilluti0n2025-08-231-6/+3
| | | | * Replace once_cell::Lazy with plain AtomicBool
* platform: linux: use standard library instead of once_cell on socketDilluti0n2025-08-231-3/+4
|
* platform: linux: make iptables helpers privateDilluti0n2025-08-231-5/+5
|
* Make platform and TLS imports explicitDilluti0n2025-08-231-8/+8
| | | | | | | | * Remove: wildcard import from platform and top-level TLSMsg import. * Add: local use of TLSMsg inside is_client_hello(). * Add: local use of send_to_raw() inside handle_packet(). * Qualify: IS_U32_SUPPORTED, QUEUE_NUM, bootstrap(), run(), and cleanup() with platform::.
* Clean up is_client_hello() for clarityDilluti0n2025-08-231-12/+11
| | | | | | * Remove nested TLSMsg::new() invocation. * Introduce fragment variable for readability. * Simplify control flow by flattening record parsing.
* Simplify signal handling with global AtomicBoolDilluti0n2025-08-233-17/+18
| | | | | | | * Remove Arc<AtomicBool> indirection and introduce global RUNNING. * Rename plant_handler() to trap_exit() for clarity. * Update run() implementations on Linux and Windows to use RUNNING directly. * Drop unused imports in main.rs, linux.rs, and windows.rs.
* Wrap planting handler to plant_handlerdilluti0n2025-08-231-9/+12
|