Documentation
ΒΆ
There is no documentation for this package.
Directories
ΒΆ
| Path | Synopsis |
|---|---|
|
internal
|
|
|
alerthist
Package alerthist keeps a small on-disk record of what the alert watcher has fired: the conditions active right now and the most recent messages.
|
Package alerthist keeps a small on-disk record of what the alert watcher has fired: the conditions active right now and the most recent messages. |
|
app
Package app holds shared constants and paths used across the Hashem Tunnel management layer (menu, manage, telegram, schedule, optimize).
|
Package app holds shared constants and paths used across the Hashem Tunnel management layer (menu, manage, telegram, schedule, optimize). |
|
debugserver
Package debugserver hosts the opt-in profiling endpoint.
|
Package debugserver hosts the opt-in profiling endpoint. |
|
deps
Package deps manages the system-level dependencies for Hashem, ensuring that required tools like iproute2 (for GRE) and FRP binaries are automatically installed without requiring manual intervention from the user.
|
Package deps manages the system-level dependencies for Hashem, ensuring that required tools like iproute2 (for GRE) and FRP binaries are automatically installed without requiring manual intervention from the user. |
|
e2e/testpanel
command
Command testpanel runs one real Hashem panel for the black-box e2e suite.
|
Command testpanel runs one real Hashem panel for the black-box e2e suite. |
|
geo
Package geo resolves an IP address to a country, city and network operator.
|
Package geo resolves an IP address to a country, city and network operator. |
|
localproxy
Package localproxy runs a built-in proxy on the tunnel's exit side, so a node can be its own backend: instead of forwarding to a separate service (xray, a panel, β¦) that has to be installed and kept running, the tunnel forwards to a proxy this binary serves itself.
|
Package localproxy runs a built-in proxy on the tunnel's exit side, so a node can be its own backend: instead of forwarding to a separate service (xray, a panel, β¦) that has to be installed and kept running, the tunnel forwards to a proxy this binary serves itself. |
|
menu
Package menu implements the interactive hashem CLI shown when the binary is run without a config file.
|
Package menu implements the interactive hashem CLI shown when the binary is run without a config file. |
|
metrics
Package metrics records what a running tunnel is actually doing β how much it carried, how much had to be sent twice, and how much was repaired by error correction β and leaves a snapshot on disk for the CLI to read.
|
Package metrics records what a running tunnel is actually doing β how much it carried, how much had to be sent twice, and how much was repaired by error correction β and leaves a snapshot on disk for the CLI to read. |
|
monitor
Package monitor runs everything that has to keep working whether or not anybody is looking: the watchdog that restarts dropped tunnels, the Telegram bot, and the alerts.
|
Package monitor runs everything that has to keep working whether or not anybody is looking: the watchdog that restarts dropped tunnels, the Telegram bot, and the alerts. |
|
node
Package node lets one panel configure tunnels on servers it manages.
|
Package node lets one panel configure tunnels on servers it manages. |
|
optimize
Package optimize applies kernel/network tuning for high-throughput, low-latency tunnels.
|
Package optimize applies kernel/network tuning for high-throughput, low-latency tunnels. |
|
schedule
Package schedule manages recurring hashem jobs via the system crontab (auto-refresh of tunnels and periodic Telegram reports).
|
Package schedule manages recurring hashem jobs via the system crontab (auto-refresh of tunnels and periodic Telegram reports). |
|
socks
Package socks implements a minimal SOCKS5 CONNECT proxy (server + client) with username/password auth and no third-party dependencies.
|
Package socks implements a minimal SOCKS5 CONNECT proxy (server + client) with username/password auth and no third-party dependencies. |
|
spooftest
Package spooftest discovers which forged source IPs actually traverse the network, in each direction, so an operator can pick spoof addresses that work rather than guessing.
|
Package spooftest discovers which forged source IPs actually traverse the network, in each direction, so an operator can pick spoof addresses that work rather than guessing. |
|
sysstat
Package sysstat reads the handful of machine-level numbers that both the web panel and the Telegram bot report on: processor, memory, swap, disk, load and uptime.
|
Package sysstat reads the handful of machine-level numbers that both the web panel and the Telegram bot report on: processor, memory, swap, disk, load and uptime. |
|
telegram
Package telegram sends periodic tunnel status reports to a Telegram admin and runs an interactive bot with Status / Web UI / Support buttons.
|
Package telegram sends periodic tunnel status reports to a Telegram admin and runs an interactive bot with Status / Web UI / Support buttons. |
|
testport
Package testport hands out loopback ports for tests to bind.
|
Package testport hands out loopback ports for tests to bind. |
|
tui
Package tui provides small terminal helpers (colors, prompts, banners) used by the interactive hashem menu.
|
Package tui provides small terminal helpers (colors, prompts, banners) used by the interactive hashem menu. |
|
tunhist
Package tunhist keeps the long view of every tunnel: traffic and up/down state, sampled on a timer and kept for a month.
|
Package tunhist keeps the long view of every tunnel: traffic and up/down state, sampled on a timer and kept for a month. |
|
tunnel/direct
Package direct forwards ports with the tunnel dialled the other way round.
|
Package direct forwards ports with the tunnel dialled the other way round. |
|
tunnel/fullport
Package fullport forwards every port a machine receives to the other end of the tunnel.
|
Package fullport forwards every port a machine receives to the other end of the tunnel. |
|
tunnel/l3
Package l3 carries whole IP packets between two hosts.
|
Package l3 carries whole IP packets between two hosts. |
|
tunnel/limits
Package limits caps what one tunnel may use.
|
Package limits caps what one tunnel may use. |
|
tunnel/mssclamp
Package mssclamp caps the TCP segment size of connections crossing a tunnel interface.
|
Package mssclamp caps the TCP segment size of connections crossing a tunnel interface. |
|
tunnel/portmap
Package portmap parses the forwarded-port syntax the tunnels share.
|
Package portmap parses the forwarded-port syntax the tunnels share. |
|
tunnelprovider
Package tunnelprovider defines a common interface for managing different tunnel types (GRE, FRP, etc.) as first-class extensions alongside the existing Hashem engine tunnels.
|
Package tunnelprovider defines a common interface for managing different tunnel types (GRE, FRP, etc.) as first-class extensions alongside the existing Hashem engine tunnels. |
|
tunnelprovider/gost
Package gost implements the GOST direct tunnel provider for Hashem Tunnel.
|
Package gost implements the GOST direct tunnel provider for Hashem Tunnel. |
|
utils/acceptloop
Package acceptloop keeps a failing accept loop from burning a core.
|
Package acceptloop keeps a failing accept loop from burning a core. |
|
webui
Package webui serves an authenticated, dark-themed web dashboard on port 7777 showing live system metrics, tunnels and their logs.
|
Package webui serves an authenticated, dark-themed web dashboard on port 7777 showing live system metrics, tunnels and their logs. |
|
tools
|
|
|
releasekey
command
Command releasekey generates the Ed25519 pair that release signatures use.
|
Command releasekey generates the Ed25519 pair that release signatures use. |
|
signsums
command
Command signsums signs a release's SHA256SUMS, for the release workflow.
|
Command signsums signs a release's SHA256SUMS, for the release workflow. |
Click to show internal directories.
Click to hide internal directories.