Extend owned-fleet control with scheduled tasks, audit log, file browser, HTTPS beacon when WS drops, protocol tunnels, registry/autostart forge options, KEV exposure in full sys check with Telegram alerts, and UI/tests.
40 lines
1.4 KiB
Go
40 lines
1.4 KiB
Go
//go:build !windows
|
|
|
|
package client
|
|
|
|
// WGSetupResult is the cross-platform type returned by WGSetupJSON.
|
|
type WGSetupResult struct {
|
|
PublicKey string `json:"public_key"`
|
|
ExternalIP string `json:"external_ip"`
|
|
ExternalPort int `json:"external_port"`
|
|
UPnPOK bool `json:"upnp_ok"`
|
|
Error string `json:"error,omitempty"`
|
|
}
|
|
|
|
// WGPeerEntry describes one WireGuard peer.
|
|
type WGPeerEntry struct {
|
|
PublicKey string `json:"public_key"`
|
|
Endpoint string `json:"endpoint"`
|
|
AllowedIPs string `json:"allowed_ips"`
|
|
PersistentKeepalive int `json:"persistent_keepalive"`
|
|
}
|
|
|
|
// WGConfigPayload is sent server→agent to configure the tunnel.
|
|
type WGConfigPayload struct {
|
|
SessionID string `json:"session_id"`
|
|
PrivateKey string `json:"private_key"`
|
|
LocalAddress string `json:"local_address"`
|
|
ListenPort int `json:"listen_port"`
|
|
Peers []WGPeerEntry `json:"peers"`
|
|
EnableIPForwarding bool `json:"enable_ip_forwarding"`
|
|
}
|
|
|
|
func WGSetupJSON() string {
|
|
return `{"error":"WireGuard Path Tracer is Windows-only in this build"}`
|
|
}
|
|
|
|
func WGConfigure(_ WGConfigPayload) error { return nil }
|
|
func WGTeardown() {}
|
|
func WGIsActive() bool { return false }
|
|
func WGStatus() string { return "not supported on this platform" }
|