internal/

directory
v0.0.0-...-5402c12 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 22, 2026 License: MIT

Directories

Path Synopsis
internal/accesspolicy/marks.go
internal/accesspolicy/marks.go
internal/api/awg_outbounds.go
internal/api/awg_outbounds.go
Package auth provides authentication via Keenetic RCI API.
Package auth provides authentication via Keenetic RCI API.
shadowcrypt
Package shadowcrypt verifies passwords against crypt(3)-style hashes as found in /etc/shadow.
Package shadowcrypt verifies passwords against crypt(3)-style hashes as found in /etc/shadow.
Package cleanup orchestrates complete removal of all awg-manager resources.
Package cleanup orchestrates complete removal of all awg-manager resources.
internal/deviceproxy/ndms_adapter.go
internal/deviceproxy/ndms_adapter.go
Package freeturn manages the FreeTurn TURN-tunnel client and server as child processes: persisting their configuration, building CLI arguments from it, and tracking process lifecycle (start/stop/status).
Package freeturn manages the FreeTurn TURN-tunnel client and server as child processes: persisting their configuration, building CLI arguments from it, and tracking process lifecycle (start/stop/status).
Package icmpprobe sends a single ICMP echo through a tunnel interface.
Package icmpprobe sends a single ICMP echo through a tunnel interface.
Package logbuf provides a generic, time-bounded, size-capped in-memory log buffer with a background cleanup goroutine.
Package logbuf provides a generic, time-bounded, size-capped in-memory log buffer with a background cleanup goroutine.
Package monitoring provides observability-only multi-target probes through running tunnels.
Package monitoring provides observability-only multi-target probes through running tunnels.
Package ndms is the NDMS RCI integration layer for awg-manager.
Package ndms is the NDMS RCI integration layer for awg-manager.
cache
Package cache provides generic primitives used by the NDMS Query Stores.
Package cache provides generic primitives used by the NDMS Query Stores.
command
Package command is the write side of the NDMS integration layer.
Package command is the write side of the NDMS integration layer.
events
Package events is the NDMS hook consumer — the push-side counterpart to the query-side Stores.
Package events is the NDMS hook consumer — the push-side counterpart to the query-side Stores.
metrics
Package metrics runs a single ticker that publishes per-interface WireGuard peer metrics over SSE.
Package metrics runs a single ticker that publishes per-interface WireGuard peer metrics over SSE.
payloads
Package payloads holds stateless command builders for NDMS RCI POST requests.
Package payloads holds stateless command builders for NDMS RCI POST requests.
query
Package query is the read side of the NDMS CQRS layer.
Package query is the read side of the NDMS CQRS layer.
transport
Package transport is the low-level NDMS HTTP client for awg-manager.
Package transport is the low-level NDMS HTTP client for awg-manager.
types
Package types holds the raw NDMS RCI response shapes — used by callers that need to parse JSON directly (e.g.
Package types holds the raw NDMS RCI response shapes — used by callers that need to parse JSON directly (e.g.
internal/routing/catalog.go
internal/routing/catalog.go
Package signature captures real QUIC and TLS handshake packets from a domain and returns them in AWG CPS <b 0x...> format for use as I1-I5 signature fields.
Package signature captures real QUIC and TLS handshake packets from a domain and returns them in AWG CPS <b 0x...> format for use as I1-I5 signature fields.
internal/singbox/config.go
internal/singbox/config.go
awgoutbounds
internal/singbox/awgoutbounds/catalog.go
internal/singbox/awgoutbounds/catalog.go
configmerge
Package configmerge mirrors sing-box's behavior when started with `-C config.d/`: read all *.json files in the directory in lexicographic order, concatenate the well-known top-level arrays (inbounds, outbounds, dns.servers, dns.rules, route.rules, route.rule_set), resolve conflicting scalar sub-keys of `dns` and `route` FIRST-FILE-WINS (matching sing-box), and last-writer-wins everything else.
Package configmerge mirrors sing-box's behavior when started with `-C config.d/`: read all *.json files in the directory in lexicographic order, concatenate the well-known top-level arrays (inbounds, outbounds, dns.servers, dns.rules, route.rules, route.rule_set), resolve conflicting scalar sub-keys of `dns` and `route` FIRST-FILE-WINS (matching sing-box), and last-writer-wins everything else.
heavyop
Package heavyop serializes memory-heavy sing-box work (ipset rebuild, config apply).
Package heavyop serializes memory-heavy sing-box work (ipset rebuild, config apply).
installer
Code generated by scripts/regen-embedded.sh and scripts/build-singbox.sh; DO NOT EDIT.
Code generated by scripts/regen-embedded.sh and scripts/build-singbox.sh; DO NOT EDIT.
orchestrator
Package orchestrator owns the sing-box config.d/ directory: it is the single writer for per-domain JSON files, the only place that toggles a domain on/off (via rename-marker), and the only place that triggers a sing-box reload.
Package orchestrator owns the sing-box config.d/ directory: it is the single writer for per-domain JSON files, the only place that toggles a domain on/off (via rename-marker), and the only place that triggers a sing-box reload.
router/selective
Package selective implements the selective-bypass feature for the sing-box TProxy router: only traffic whose destination IP is listed in the AWGM-SELECTIVE ipset reaches sing-box; all other traffic bypasses it entirely (RETURN → WAN).
Package selective implements the selective-bypass feature for the sing-box TProxy router: only traffic whose destination IP is listed in the AWGM-SELECTIVE ipset reaches sing-box; all other traffic bypasses it entirely (RETURN → WAN).
vlink
Package vlink: Clash / mihomo YAML subscription support.
Package vlink: Clash / mihomo YAML subscription support.
internal/storage/types_patch.go
internal/storage/types_patch.go
sys
env
Package env provides typed env-var helpers with safe defaults.
Package env provides typed env-var helpers with safe defaults.
exec
Package exec provides command execution with timeout support.
Package exec provides command execution with timeout support.
httpclient
Package httpclient provides a lightweight HTTP client with interface binding, proxy support, and precise timing metrics.
Package httpclient provides a lightweight HTTP client with interface binding, proxy support, and precise timing metrics.
httpdownload
Package httpdownload provides shared utilities for streaming HTTP downloads with throttled progress reporting.
Package httpdownload provides shared utilities for streaming HTTP downloads with throttled progress reporting.
kmod
Package kmod provides kernel module loading functionality.
Package kmod provides kernel module loading functionality.
lock
Package lock provides mkdir-based file locking compatible with BusyBox/Entware.
Package lock provides mkdir-based file locking compatible with BusyBox/Entware.
ndmsinfo
Package ndmsinfo provides cached NDMS system information backed by the query.SystemInfoStore.
Package ndmsinfo provides cached NDMS system information backed by the query.SystemInfoStore.
netif
Package netif provides small network-interface helpers shared across the daemon, replacing several copy-pasted getBr0IP/getInterfaceIP functions.
Package netif provides small network-interface helpers shared across the daemon, replacing several copy-pasted getBr0IP/getInterfaceIP functions.
osdetect
Package osdetect provides Keenetic OS version detection from cached NDMS info.
Package osdetect provides Keenetic OS version detection from cached NDMS info.
perftrace
Package perftrace — helper для performance diagnostics.
Package perftrace — helper для performance diagnostics.
semver
Package semver provides minimal semantic-version comparison for dotted-numeric version strings like "2.3.10" or "1.4".
Package semver provides minimal semantic-version comparison for dotted-numeric version strings like "2.3.10" or "1.4".
Package testing provides tunnel testing operations.
Package testing provides tunnel testing operations.
Package traffic provides in-memory traffic rate history for tunnels.
Package traffic provides in-memory traffic rate history for tunnels.
Package tunnel provides tunnel management with clean architecture.
Package tunnel provides tunnel management with clean architecture.
backend
Package backend provides abstraction for tunnel process management.
Package backend provides abstraction for tunnel process management.
config
Package config provides WireGuard configuration parsing and generation.
Package config provides WireGuard configuration parsing and generation.
external
Package external provides functionality for working with external (unmanaged) tunnels.
Package external provides functionality for working with external (unmanaged) tunnels.
firewall
Package firewall provides an interface for iptables firewall management.
Package firewall provides an interface for iptables firewall management.
nwg
Package nwg provides OperatorNativeWG — manages tunnels via Keenetic's native WireGuard interface + awg_proxy.ko kernel module for obfuscation.
Package nwg provides OperatorNativeWG — manages tunnels via Keenetic's native WireGuard interface + awg_proxy.ko kernel module for obfuscation.
ops
Package ops provides tunnel operations (create, start, stop, delete, recover).
Package ops provides tunnel operations (create, start, stop, delete, recover).
service
internal/tunnel/service/refs.go
internal/tunnel/service/refs.go
state
Package state provides the single source of truth for tunnel state.
Package state provides the single source of truth for tunnel state.
sysinfo
Package sysinfo provides system-level information about tunnel interfaces.
Package sysinfo provides system-level information about tunnel interfaces.
systemtunnel
Package systemtunnel provides read-only access to Keenetic native WireGuard tunnels with editable AWG obfuscation (ASC) parameters.
Package systemtunnel provides read-only access to Keenetic native WireGuard tunnels with editable AWG obfuscation (ASC) parameters.
wan
Package wan provides a unified WAN interface state model.
Package wan provides a unified WAN interface state model.
wg
Package wg provides an interface for WireGuard/AmneziaWG operations.
Package wg provides an interface for WireGuard/AmneziaWG operations.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL