Commit Graph

344 Commits

Author SHA1 Message Date
世界 9c8147f234 usbip: enforce broadcast invariant and clone-on-stale to close recurring races
- Route every reserved-state mutation through withInventoryWrite; the
  lease insert path now broadcasts so extended subscribers see the busy
  transition immediately instead of waiting for the next mutation. Folds
  cleanupExpiredLocked changes into the broadcast decision on every
  IssueLease early-reject path. Rename the field to inventory and force
  read/write/write-quiet sites through dedicated accessors so future
  callers cannot bypass the invariant.
- Mirror the linux clone-then-swap pattern in darwinExportHost.Reconcile
  via cloneDarwinExport, so the ledger's unlocked Snapshot / LeaseCheck
  reads never observe a half-mutated stale flag. Documented as
  docs/adr/0001-export-pointer-immutability.md and on the Export
  interface; both hosts now share the applyStaleClones helper.
- Rewrite 27 if (_, )?err := …; err != nil sites to assign-then-check
  per .claude/rules/go-syntax.md.
- Delete parse / builder / tautological tests forbidden by
  .claude/rules/code-test.md (option/usbip_test.go,
  iso_scheduler_test.go, usbhost_darwin_status_test.go).
- Tag nine more usbip files with linux || (darwin && cgo); fixes
  pre-existing windows / android lint failures because the protocol
  types were only consumed by tagged code.
2026-06-09 10:42:32 +08:00
世界 a438f6212b usbip: fix import-all, lease release broadcast, and Events contract
Drop the constructor guard so client import-all (Devices empty/omitted)
actually works, route ledger lease mutations through a new
mutateAndBroadcast helper so Unsubscribe-triggered release reaches all
subscribers, and tighten the Events contract: subscribe at Start so a
host failure aborts service start instead of silently disabling hotplug.
2026-06-09 10:42:32 +08:00
世界 09491ff209 Cleanup codes 2026-06-09 10:42:25 +08:00
世界 5e8c224be3 Add usbip tests and auto-load drivers 2026-06-09 10:42:20 +08:00
世界 ad5b1de82d Fix USBIP parsing and lifecycle handling 2026-06-09 10:42:20 +08:00
世界 bb1ab8080a Add Linux usbip client and server services 2026-06-09 10:42:19 +08:00
世界 b2a9c4990c tailscale: Add tailssh server 2026-06-08 08:51:51 +08:00
世界 45be67c977 hysteria2: Add gecko obfs 2026-06-08 08:51:51 +08:00
世界 701f165e30 tailscale: Revert dialer deprecation and remove control_http_client 2026-06-08 08:51:50 +08:00
世界 b19d4a92e2 Fix lint errors 2026-06-08 08:51:48 +08:00
世界 098fd90b5e Fix hysteria2 realm server 2026-06-08 08:51:48 +08:00
世界 aa290a6772 Update hysteria2 realm 2026-06-08 08:51:47 +08:00
世界 0662aa41ad Add hysteria2 realm service and support 2026-06-08 08:51:47 +08:00
macronut a130000741 Add more spoof method
Signed-off-by: macronut <4027187+macronut@users.noreply.github.com>
2026-06-08 08:51:47 +08:00
世界 61c4d2dd12 Allow customizing TUN DNS mode and hijack interface DNS by default 2026-06-08 08:51:47 +08:00
世界 b9c596f9e3 dns: Add mDNS server 2026-06-08 08:51:46 +08:00
世界 db08f3f699 dns: Add preferred_by rule item 2026-06-08 08:51:46 +08:00
世界 f842580f33 dns: Add neighbor-based hostname resolution to local server 2026-06-08 08:51:46 +08:00
世界 c8792e7fe6 dns: Add timeout configuration 2026-06-08 08:51:46 +08:00
世界 664db8929a ssh: Add cipher, MAC, and key exchange configuration 2026-06-08 08:51:45 +08:00
世界 cc238d20a2 Preserve comments between formatting 2026-06-08 08:51:45 +08:00
世界 12a462142a Add ACME profile support for IP address certificates 2026-06-08 08:51:44 +08:00
世界 8597592976 Add search domain support for Tailscale DNS 2026-06-08 08:51:43 +08:00
世界 2581c6c99c Fix legacy rule-set download_detour blocked by empty direct check 2026-06-08 08:51:41 +08:00
世界 44ee81ccb4 Add TLS spoof support 2026-06-08 08:51:41 +08:00
世界 ab2a90d5e7 Refactor: HTTP clients, unified HTTP2/QUIC options, Apple engines 2026-06-08 08:51:40 +08:00
世界 0525f6cb1c Add optimistic DNS cache 2026-06-08 08:51:40 +08:00
世界 d1ac250f4b Add cloudflared inbound 2026-06-08 08:51:38 +08:00
世界 d70d15f913 Add package_name_regex route, DNS and headless rule item 2026-06-08 08:51:38 +08:00
世界 5e02c705ff Un-deprecate ip_accept_any DNS rule item 2026-06-08 08:51:37 +08:00
nekohasekai 9a3dcca616 Add evaluate DNS rule action and related rule items 2026-06-08 08:51:34 +08:00
世界 d4cd859377 platform: Add OOM Report & Crash Report 2026-06-08 08:51:34 +08:00
世界 d37626ea25 Add BBR profile and hop interval randomization for Hysteria2 2026-06-08 08:51:34 +08:00
nekohasekai 2c01a637a6 Refactor ACME support to certificate provider 2026-06-08 08:51:34 +08:00
世界 179d0818a7 Add MAC and hostname rule items 2026-06-08 08:51:33 +08:00
世界 5e7fd7ad78 Fix lint errors 2026-05-13 23:39:27 +08:00
世界 6913b11e0a Reject removed legacy inbound fields instead of silently ignoring 2026-03-21 17:16:10 +08:00
世界 d2fa21d07b Deprecate Socksaddr.IsFqdn: do not reject potentially valid domain names 2026-03-16 09:37:59 +08:00
世界 8ae93a98e5 Remove overdue deprecated features 2026-03-01 12:30:43 +08:00
世界 11dc5bcbe1 Fixes in cronet-go 2026-02-27 19:39:52 +08:00
世界 65150f5cc3 platform: Improve OOM killer for iOS 2026-02-27 14:58:06 +08:00
世界 cf4791f1ad platform: Improve iOS OOM killer 2026-02-26 14:13:32 +08:00
世界 4c05d7b888 Add advertise tags support for Tailscale endpoint 2026-02-24 15:31:57 +08:00
世界 79bab39502 Fix auto_redirect fallback rule 2026-01-30 11:42:56 +08:00
Balthild 60a1e4c866 Add acmedns support 2026-01-17 20:52:43 +08:00
世界 8d88c6532f Add dial option bind_address_no_port 2026-01-17 05:49:56 +08:00
世界 f196b7a583 tailscale: Add system interface support 2026-01-17 05:49:24 +08:00
世界 6a750f4522 Fix missing relay support for Tailscale 2026-01-17 05:48:57 +08:00
世界 494990f914 Update bypass action behavior for auto redirect 2026-01-17 05:48:41 +08:00
世界 78b4eac974 Add pre-match support for auto redirect 2026-01-17 05:48:39 +08:00