Documentation ¶
Index ¶
- Variables
- func BastionConnectFunc(bProto string, bAddr string, bConf *ssh.ClientConfig, proto string, ...) func() (net.Conn, error)
- func ConnectFunc(network, addr string) func() (net.Conn, error)
- func New(address string, config *Config) (result *comm, err error)
- func PasswordKeyboardInteractive(password string) ssh.KeyboardInteractiveChallenge
- type Config
Constants ¶
This section is empty.
Variables ¶
var ErrHandshakeTimeout = fmt.Errorf("Timeout during SSH handshake")
ErrHandshakeTimeout is returned from New() whenever we're unable to establish an ssh connection within a certain timeframe. By default the handshake time- out period is 1 minute. You can change it with Config.HandshakeTimeout.
Functions ¶
func BastionConnectFunc ¶
func BastionConnectFunc( bProto string, bAddr string, bConf *ssh.ClientConfig, proto string, addr string) func() (net.Conn, error)
BastionConnectFunc is a convenience method for returning a function that connects to a host over a bastion connection.
func ConnectFunc ¶
ConnectFunc is a convenience method for returning a function that just uses net.Dial to communicate with the remote end that is suitable for use with the SSH communicator configuration.
func New ¶
Creates a new packer.Communicator implementation over SSH. This takes an already existing TCP connection and SSH configuration.
func PasswordKeyboardInteractive ¶
func PasswordKeyboardInteractive(password string) ssh.KeyboardInteractiveChallenge
An implementation of ssh.KeyboardInteractiveChallenge that simply sends back the password for all questions. The questions are logged.
Types ¶
type Config ¶
type Config struct { // The configuration of the Go SSH connection SSHConfig *ssh.ClientConfig // Connection returns a new connection. The current connection // in use will be closed as part of the Close method, or in the // case an error occurs. Connection func() (net.Conn, error) // Pty, if true, will request a pty from the remote end. Pty bool // DisableAgent, if true, will not forward the SSH agent. DisableAgent bool // HandshakeTimeout limits the amount of time we'll wait to handshake before // saying the connection failed. HandshakeTimeout time.Duration }
Config is the structure used to configure the SSH communicator.