Documentation
¶
Index ¶
Constants ¶
const ( TypeConnect = "tcp" Timeout = 20 * time.Second EnableMod = 1 ICRNLMod = 1 INLCRMod = 1 ISIGMod = 1 ISPEED = 115200 OSPEED = 115200 TypeTerm = "xterm-256color" HeightTerminal = 80 WidthTerminal = 40 )
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Connect ¶
type Connect struct {
// Alias is a user-defined name for the connection
Alias string `json:"alias"`
Login string `json:"login"`
Address string `json:"address"`
Password string `json:"password"`
CreatedAt string `json:"created_at"`
UpdatedAt string `json:"updated_at"`
// Type specifies the connection protocol (e.g., "ssh")
Type ConnectionType `json:"type"`
// SshOptions contains SSH-specific configuration options
SshOptions *SshOptions `json:"ssh_options,omitempty"`
}
Connect represents a single connection configuration
type ConnectionType ¶
type ConnectionType string
const TypeSSH ConnectionType = "ssh"
TypeSSH type for ssh connection
type Connections ¶
type Connections struct {
Connects []Connect `json:"connects"`
}
type Ssh ¶
type Ssh struct{}
func (*Ssh) Connect ¶
Connect starts an interactive shell session using the established SSH connection. It manages the session lifecycle including proper cleanup on exit. Returns error if shell startup or session wait fails.
func (*Ssh) Session ¶
Session establishes a new SSH session with the remote server. It handles the complete connection lifecycle including: - Authentication (password or private key) - Client creation - Terminal setup - Error handling and resource cleanup Returns an active SSH session or error if any step fails.
type SshOptions ¶
type SshOptions struct {
// Port specifies the SSH port (default is 22 if not specified)
Port int `json:"port"`
// PrivateKey contains the PEM-encoded private key for authentication
PrivateKey string `json:"private_key"`
}
SshOptions contains configuration options specific to SSH connections