1
1
Thanks to Norbert Kiesel <nkiesel@tbdnetworks.com> for the patch.


git-svn-id: svn+ssh://svn.berlios.de/svnroot/repos/libssh/trunk@424 7dcaeef0-15fb-0310-b436-a5af3365683c
Этот коммит содержится в:
Andreas Schneider 2009-04-08 07:13:18 +00:00
родитель c4f65cb5dd
Коммит 38d86e7e17
5 изменённых файлов: 12 добавлений и 12 удалений

Просмотреть файл

@ -176,7 +176,7 @@ int ssh_userauth_none(SSH_SESSION *session, const char *username){
enter_function();
#ifdef HAVE_SSH1
if(session->version==1){
err = ssh_userauth1_none(session,username);
ssh_userauth1_none(session,username);
leave_function();
return rc;
}
@ -266,7 +266,7 @@ int ssh_userauth_offer_pubkey(SSH_SESSION *session, const char *username,int typ
enter_function();
#ifdef HAVE_SSH1
if(session->version==1){
err= ssh_userauth1_offer_pubkey(session,username,type,publickey);
ssh_userauth1_offer_pubkey(session,username,type,publickey);
leave_function();
return rc;
}

Просмотреть файл

@ -51,7 +51,7 @@ static int wait_auth1_status(SSH_SESSION *session){
"FAILURE, got %d",session->in_packet.type);
return SSH_AUTH_ERROR;
}
static int send_username(SSH_SESSION *session, char *username){
static int send_username(SSH_SESSION *session, const char *username){
STRING *user;
/* returns SSH_AUTH_SUCCESS or SSH_AUTH_DENIED */
if(session->auth_service_asked)
@ -74,7 +74,7 @@ static int send_username(SSH_SESSION *session, char *username){
/* use the "none" authentication question */
int ssh_userauth1_none(SSH_SESSION *session,char *username){
int ssh_userauth1_none(SSH_SESSION *session,const char *username){
return send_username(session,username);
}
@ -119,7 +119,7 @@ int ssh_userauth_offer_pubkey(SSH_SESSION *session, char *username,int type, STR
/** \internal
* \todo implement ssh1 public key
*/
int ssh_userauth1_offer_pubkey(SSH_SESSION *session, char *username, int type,
int ssh_userauth1_offer_pubkey(SSH_SESSION *session, const char *username, int type,
STRING *pubkey){
return SSH_AUTH_DENIED;
}
@ -171,7 +171,7 @@ int ssh_userauth_pubkey(SSH_SESSION *session, char *username, STRING *publickey,
}
*/
int ssh_userauth1_password(SSH_SESSION *session,char *username,char *password){
int ssh_userauth1_password(SSH_SESSION *session,const char *username,const char *password){
STRING *password_s;
int err;
err=send_username(session,username);
@ -183,7 +183,7 @@ int ssh_userauth1_password(SSH_SESSION *session,char *username,char *password){
*/
/* XXX fix me here ! */
/* cisco IOS doesn't like when a password is followed by zeroes and random pad. */
if(strlen(password)>=0){
if(1 || strlen(password)>=128){
/* not risky to disclose the size of such a big password .. */
password_s=string_from_char(password);
} else {

Просмотреть файл

@ -927,7 +927,7 @@ int channel_request_pty_size(CHANNEL *channel, const char *terminal,
enter_function();
#ifdef HAVE_SSH1
if (channel->version==1) {
err = channel_request_pty_size1(channel,terminal, col, row);
channel_request_pty_size1(channel,terminal, col, row);
leave_function();
return rc;
}

Просмотреть файл

@ -200,7 +200,7 @@ static int packet_read1(SSH_SESSION *session){
/* len is not encrypted */
len=ntohl(len);
if(len> MAX_PACKET_LEN){
ssh_set_error(session,SSH_FATAL,"read_packet(): Packet len too high(%uld %.8lx)",len,len);
ssh_set_error(session,SSH_FATAL,"read_packet(): Packet len too high(%u %.8x)",len,len);
leave_function();
return SSH_ERROR;
}
@ -265,8 +265,8 @@ static int packet_read1(SSH_SESSION *session){
len + padding - sizeof(u32));
#endif
ssh_log(session,SSH_LOG_RARE,"invalid crc32");
ssh_set_error(session,SSH_FATAL,"invalid crc32 : expected %.8lx, "
"got %.8lx",crc,
ssh_set_error(session,SSH_FATAL,"invalid crc32 : expected %.8x, "
"got %.8x",crc,
ssh_crc32(buffer_get_rest(session->in_buffer),len+padding-sizeof(u32)) );
leave_function();
return SSH_ERROR;

Просмотреть файл

@ -104,7 +104,6 @@ void ssh_cleanup(SSH_SESSION *session) {
crypto_free(session->current_crypto);
crypto_free(session->next_crypto);
ssh_socket_free(session->socket);
ssh_options_free(session->options);
/* delete all channels */
while (session->channels) {
channel_free(session->channels);
@ -130,6 +129,7 @@ void ssh_cleanup(SSH_SESSION *session) {
private_key_free(session->rsa_key);
ssh_message_free(session->ssh_message);
SAFE_FREE(session->ssh_message);
ssh_options_free(session->options);
/* burn connection, it could hang sensitive datas */
memset(session,'X',sizeof(SSH_SESSION));