/*
* Connect to specified host and port.
* Returns an error message, or NULL on success.
- * Also places the canonical host name into `realhost'.
+ * Also places the canonical host name into `realhost'. It must be
+ * freed by the caller.
*/
static char *connect_to_host(char *host, int port, char **realhost)
{
return err;
#ifdef FWHACK
- *realhost = FWhost;
+ *realhost = strdup(FWhost);
#endif
/*
* because one was supplied on the command line
* which has already failed to work). Terminate.
*/
- logevent("No more passwords to try");
+ send_packet(SSH1_MSG_DISCONNECT,
+ PKT_STR, "No more passwords available to try",
+ PKT_END);
+ connection_fatal("Unable to authenticate");
ssh_state = SSH_STATE_CLOSED;
crReturn(1);
}
* command line which has already failed to
* work). Terminate.
*/
- logevent("No more passwords to try");
+ ssh2_pkt_init(SSH2_MSG_DISCONNECT);
+ ssh2_pkt_adduint32(SSH2_DISCONNECT_BY_APPLICATION);
+ ssh2_pkt_addstring
+ ("No more passwords available to try");
+ ssh2_pkt_addstring("en"); /* language tag */
+ ssh2_pkt_send();
+ connection_fatal("Unable to authenticate");
ssh_state = SSH_STATE_CLOSED;
crReturnV;
}