protocol

package
v1.0.0 Latest Latest
Warning

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

Go to latest
Published: May 13, 2026 License: MIT Imports: 14 Imported by: 0

Documentation

Index

Constants

View Source
const (
	DefaultPort           = 8623
	CompressionMode       = websocket.CompressionContextTakeover
	SubProcessGracePeriod = 5 * time.Second
	BinaryFrameMaxSize    = 64 * 1024 // 64KB (matches typical kernel pipe buffer)
)

Variables

This section is empty.

Functions

func GenerateCA

func GenerateCA(refTime time.Time) (caDER []byte, caPriv crypto.PrivateKey, err error)

GenerateCA creates a new CA private key and self-signed certificate

func GenerateClient

func GenerateClient(refTime time.Time, caDER []byte, caPriv crypto.PrivateKey) (clientDER []byte, clientPriv crypto.PrivateKey, err error)

func GenerateServer

func GenerateServer(refTime time.Time, caDER []byte, caPriv crypto.PrivateKey) (serverDER []byte, serverPriv crypto.PrivateKey, err error)

func GetClientTLSConfig

func GetClientTLSConfig(caPath, certPath, keyPath string) (tlsConf *tls.Config, err error)

func GetServerTLSConfig

func GetServerTLSConfig(caPath, certPath, keyPath string) (tlsConf *tls.Config, err error)

Types

type OoBMessageProcessStderrPayload

type OoBMessageProcessStderrPayload struct {
	Line string `json:"line"` // the log line
}

func (OoBMessageProcessStderrPayload) SendWebSocketOoBMessage

func (m OoBMessageProcessStderrPayload) SendWebSocketOoBMessage(ctx context.Context, wsc *websocket.Conn) (err error)

type OoBMessageServerExitedPayload

type OoBMessageServerExitedPayload struct {
	ExitCode *int   `json:"exit_code"` // Present if exited normally, absent if killed or other errors
	Killed   bool   `json:"killed"`
	Error    string `json:"error"` // Present if error occurred
}

func (OoBMessageServerExitedPayload) SendWebSocketOoBMessage

func (m OoBMessageServerExitedPayload) SendWebSocketOoBMessage(ctx context.Context, wsc *websocket.Conn) (err error)

type OoBMessageShutdownPayload

type OoBMessageShutdownPayload struct{}

func (OoBMessageShutdownPayload) SendWebSocketOoBMessage

func (m OoBMessageShutdownPayload) SendWebSocketOoBMessage(ctx context.Context, wsc *websocket.Conn) (err error)

type OoBMessageStartErrPayload

type OoBMessageStartErrPayload struct {
	Error string `json:"error"`
}

func (OoBMessageStartErrPayload) SendWebSocketOoBMessage

func (m OoBMessageStartErrPayload) SendWebSocketOoBMessage(ctx context.Context, wsc *websocket.Conn) (err error)

type OoBMessageStartOKPayload

type OoBMessageStartOKPayload struct {
	PID int `json:"pid"`
}

func (OoBMessageStartOKPayload) SendWebSocketOoBMessage

func (m OoBMessageStartOKPayload) SendWebSocketOoBMessage(ctx context.Context, wsc *websocket.Conn) (err error)

type OoBPayload

type OoBPayload interface {
	SendWebSocketOoBMessage(ctx context.Context, wsc *websocket.Conn) (err error)
}

func ReadWebSocketOoBMessage

func ReadWebSocketOoBMessage(textMsg []byte) (payload OoBPayload, err error)

Directories

Path Synopsis
Package jsonrpcv2 provides minimal types for reading JSON-RPC 2.0 messages on the wire.
Package jsonrpcv2 provides minimal types for reading JSON-RPC 2.0 messages on the wire.

Jump to

Keyboard shortcuts

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