diff --git a/sshconnect.h b/sshconnect.h
index 7200046..4e16f2d 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,
