Skip to content

Commit 08062d4

Browse files
chore(release): v1.2.13
1 parent ec5fc72 commit 08062d4

2 files changed

Lines changed: 22 additions & 1 deletion

File tree

Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[package]
22
name = "mhrv-rs"
3-
version = "1.2.12"
3+
version = "1.2.13"
44
edition = "2021"
55
description = "Rust port of MasterHttpRelayVPN -- DPI bypass via Google Apps Script relay with domain fronting"
66
license = "MIT"

docs/changelog/v1.2.13.md

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
<!-- see docs/changelog/v1.1.0.md for the file format: Persian, then `---`, then English. -->
2+
• دکمهٔ جدید ‫Remove CA‬ در ‫UI‬ و فلگ ‫`--remove-cert`‬ در ‫CLI‬ برای پاک‌سازی کامل گواهی ‫MITM‬: از ‫trust store‬ سیستم‌عامل حذف می‌کنه (‫macOS login+system keychains‬, ‫Linux anchor dirs‬, ‫Windows user+machine Trusted Root‬)، ‫NSS‬ مرورگرها رو ‫best-effort‬ پاک می‌کنه (‫Firefox profiles‬ + ‫Chrome/Chromium‬ روی لینوکس)، و پوشهٔ ‫`ca/`‬ رو از دیسک حذف می‌کنه. قبل از حذف فایل‌ها با ‫`is_ca_trusted_by_name()`‬ تأیید می‌کنیم که حذف از ‫trust store‬ واقعاً انجام شده — اگه نیاز به ادمین داشته و نداشتیم، ‫`ca/`‬ نگه داشته می‌شه و ‫NSS‬ دست‌نخورده می‌مونه تا ‫retry‬ تمیز انجام بشه. ‫config.json‬ و ‫deployment‬ آپس‌اسکریپت دست‌نخورده می‌مونن — نیازی به دیپلوی مجدد ‫Code.gs‬ نیست
3+
4+
• پشتیبانی ‫sudo‬ روی ‫Unix‬: وقتی با ‫sudo‬ اجرا بشه (تشخیص با ‫`geteuid() == 0`‬ + ‫`SUDO_USER`‬)، ‫HOME‬ به کاربر واقعی برمی‌گرده تا مسیرهای ‫user-scoped‬ (‫data dir‬, ‫Firefox profiles‬, ‫macOS login keychain‬) به‌جای ‫root‬ سر از کاربر واقعی در بیارن
5+
6+
• در ‫UI‬، دکمه‌های ‫Install CA‬ و ‫Remove CA‬ یک ‫lock‬ مشترک دارن که کلیک‌های پشت‌سرهم رو ‫serialize‬ می‌کنه، و ‫Remove CA‬ در زمان ‫start/run‬ پروکسی غیرفعاله چون ‫keypair‬ در حافظهٔ پردازهٔ فعاله
7+
8+
• در ‫Firefox‬، ‫pref‬ مربوط به ‫`enterprise_roots`‬ حالا با ‫marker comment‬ نوشته می‌شه، پس موقع ‫uninstall‬ فقط خطوطی که خودمون نوشتیم پاک می‌شن و ‫preference‬های دست‌ساز کاربر یا ‫corporate policy‬ دست‌نخورده می‌مونن
9+
10+
• فقط روی ‫Windows‬ ‫smoke-test‬ شده. کاربران ‫macOS‬ و ‫Linux‬ لطفاً اگه به مشکل برخوردید گزارش بدید
11+
12+
---
13+
• New **Remove CA** button in the UI and `--remove-cert` flag in the CLI for a verified clean-slate removal of the MITM CA: clears the OS trust store (macOS login+system keychains, Linux anchor dirs, Windows user+machine Trusted Root), best-effort NSS cleanup (Firefox profiles + Chrome/Chromium on Linux), and deletes the on-disk `ca/` directory. Before file deletion we verify with `is_ca_trusted_by_name()` that the OS-store removal actually landed — if it needed admin we didn't have, `ca/` is preserved and NSS is left alone so a retry is idempotent. `config.json` and your Apps Script deployment are untouched — no need to redeploy `Code.gs`.
14+
15+
• sudo-safe on Unix: when launched under sudo (detected via `geteuid() == 0` + `SUDO_USER`), `HOME` is re-rooted to the invoking user so user-scoped paths (data dir, Firefox profiles, macOS login keychain) target the real user rather than root.
16+
17+
• UI: Install CA and Remove CA share a single in-flight lock that serializes back-to-back clicks, and Remove CA is disabled while the proxy is starting or running (the CA keypair is live in memory).
18+
19+
• Firefox `enterprise_roots` pref is now written with a marker comment, so on uninstall only lines we wrote are stripped — user-authored or corporate-policy-managed prefs stay intact.
20+
21+
• Only smoke-tested on Windows so far. macOS and Linux users, please file an issue if you hit anything.

0 commit comments

Comments
 (0)