diff options
Diffstat (limited to 'sshconnect.h')
-rw-r--r-- | sshconnect.h | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/sshconnect.h b/sshconnect.h index 72000467..4e16f2d8 100644 --- a/sshconnect.h +++ b/sshconnect.h @@ -23,6 +23,34 @@ */ #ifndef SSHCONNECT_H #define SSHCONNECT_H +/* + * Opens a TCP/IP connection to the remote server on the given host. If port + * is 0, the default port will be used. If anonymous is zero, a privileged + * port will be allocated to make the connection. This requires super-user + * privileges if anonymous is false. Connection_attempts specifies the + * maximum number of tries, one per second. This returns true on success, + * and zero on failure. If the connection is successful, this calls + * packet_set_connection for the connection. + */ +int +ssh_connect(const char *host, struct sockaddr_storage * hostaddr, + u_short port, int connection_attempts, + int anonymous, uid_t original_real_uid, + const char *proxy_command); + +/* + * Starts a dialog with the server, and authenticates the current user on the + * server. This does not need any extra privileges. The basic connection to + * the server must already have been established before this is called. If + * login fails, this function prints an error and never returns. This + * initializes the random state, and leaves it initialized (it will also have + * references from the packet module). + */ + +void +ssh_login(int host_key_valid, RSA * host_key, const char *host, + struct sockaddr * hostaddr, uid_t original_real_uid); + void check_host_key(char *host, struct sockaddr *hostaddr, Key *host_key, |