From 8e04bf0ef1c84e3c05551f640f8b8ac9b0dc9d50 Mon Sep 17 00:00:00 2001 From: Aris Adamantiadis Date: Tue, 4 Mar 2008 04:40:01 +0000 Subject: fixed a load of ssh_set_error(NULL,...) git-svn-id: svn+ssh://svn.berlios.de/svnroot/repos/libssh/trunk@139 7dcaeef0-15fb-0310-b436-a5af3365683c --- libssh/connect.c | 2 +- libssh/dh.c | 8 ++++---- libssh/kex.c | 10 +++++----- libssh/keyfiles.c | 2 +- libssh/keys.c | 34 +++++++++++++++++----------------- libssh/wrapper.c | 2 +- 6 files changed, 29 insertions(+), 29 deletions(-) (limited to 'libssh') diff --git a/libssh/connect.c b/libssh/connect.c index 59760900..ad8a4f30 100644 --- a/libssh/connect.c +++ b/libssh/connect.c @@ -213,7 +213,7 @@ int ssh_fd_poll(SSH_SESSION *session, int *write, int *except){ /* Make the call, and listen for errors */ if (select(fdmax, &rdes,&wdes,&edes, &sometime) < 0) { - ssh_set_error(NULL,SSH_FATAL, "select: %s", strerror(errno)); + ssh_set_error(session,SSH_FATAL, "select: %s", strerror(errno)); return -1; } if(!session->data_to_read) diff --git a/libssh/dh.c b/libssh/dh.c index fd602d2c..73e9e3aa 100644 --- a/libssh/dh.c +++ b/libssh/dh.c @@ -540,7 +540,7 @@ static int sig_verify(SSH_SESSION *session, PUBLIC_KEY *pubkey, SIGNATURE *signa if(valid==0) return 0; if (gcry_err_code(valid)!=GPG_ERR_BAD_SIGNATURE){ - ssh_set_error(NULL,SSH_FATAL,"DSA error : %s", gcry_strerror(valid)); + ssh_set_error(session,SSH_FATAL,"DSA error : %s", gcry_strerror(valid)); #elif defined HAVE_LIBCRYPTO valid=DSA_do_verify(hash+1,SHA_DIGEST_LEN,signature->dsa_sign, pubkey->dsa_pub); @@ -562,7 +562,7 @@ static int sig_verify(SSH_SESSION *session, PUBLIC_KEY *pubkey, SIGNATURE *signa if(valid==0) return 0; if(gcry_err_code(valid)!=GPG_ERR_BAD_SIGNATURE){ - ssh_set_error(NULL,SSH_FATAL,"RSA error : %s",gcry_strerror(valid)); + ssh_set_error(session,SSH_FATAL,"RSA error : %s",gcry_strerror(valid)); #elif defined HAVE_LIBCRYPTO valid=RSA_verify(NID_sha1,hash+1,SHA_DIGEST_LEN, signature->rsa_sign->string,string_len(signature->rsa_sign),pubkey->rsa_pub); @@ -590,7 +590,7 @@ int signature_verify(SSH_SESSION *session,STRING *signature){ ssh_say(1,"Host key wasn't verified\n"); return 0; } - pubkey=publickey_from_string(session->next_crypto->server_pubkey); + pubkey=publickey_from_string(session,session->next_crypto->server_pubkey); if(!pubkey) return -1; if(session->options->wanted_methods[SSH_HOSTKEYS]){ @@ -601,7 +601,7 @@ int signature_verify(SSH_SESSION *session,STRING *signature){ return -1; } } - sign=signature_from_string(signature,pubkey,pubkey->type); + sign=signature_from_string(session, signature,pubkey,pubkey->type); if(!sign){ ssh_set_error(session,SSH_FATAL,"Invalid signature blob"); publickey_free(pubkey); diff --git a/libssh/kex.c b/libssh/kex.c index 1d66f28b..21d920d3 100644 --- a/libssh/kex.c +++ b/libssh/kex.c @@ -408,7 +408,7 @@ int ssh_get_kex1(SSH_SESSION *session){ } ssh_say(3,"Got a SSH_SMSG_PUBLIC_KEY\n"); if(buffer_get_data(session->in_buffer,session->server_kex.cookie,8)!=8){ - ssh_set_error(NULL,SSH_FATAL,"Can't get cookie in buffer"); + ssh_set_error(session,SSH_FATAL,"Can't get cookie in buffer"); return -1; } buffer_get_u32(session->in_buffer,&server_bits); @@ -422,7 +422,7 @@ int ssh_get_kex1(SSH_SESSION *session){ ko=buffer_get_u32(session->in_buffer,&supported_authentications_mask); if((ko!=sizeof(u32)) || !host_mod || !host_exp || !server_mod || !server_exp){ ssh_say(2,"Invalid SSH_SMSG_PUBLIC_KEY packet\n"); - ssh_set_error(NULL,SSH_FATAL,"Invalid SSH_SMSG_PUBLIC_KEY packet"); + ssh_set_error(session,SSH_FATAL,"Invalid SSH_SMSG_PUBLIC_KEY packet"); if(host_mod) free(host_mod); if(host_exp) @@ -449,15 +449,15 @@ int ssh_get_kex1(SSH_SESSION *session){ free(server_mod); free(host_exp); free(host_mod); - svr=publickey_from_string(serverkey); - host=publickey_from_string(hostkey); + svr=publickey_from_string(session, serverkey); + host=publickey_from_string(session, hostkey); session->next_crypto->server_pubkey=string_copy(hostkey); session->next_crypto->server_pubkey_type="ssh-rsa1"; /* now, we must choose an encryption algo */ /* hardcode 3des */ if(!(supported_ciphers_mask & (1<type=TYPE_DSS; @@ -55,7 +55,7 @@ PUBLIC_KEY *publickey_make_dss(BUFFER *buffer){ pubkey=buffer_get_ssh_string(buffer); buffer_free(buffer); /* we don't need it anymore */ if(!p || !q || !g || !pubkey){ - ssh_set_error(NULL,SSH_FATAL,"Invalid DSA public key"); + ssh_set_error(session,SSH_FATAL,"Invalid DSA public key"); if(p) free(p); if(q) @@ -68,7 +68,7 @@ PUBLIC_KEY *publickey_make_dss(BUFFER *buffer){ return NULL; } #ifdef HAVE_LIBGCRYPT - gcry_sexp_build(&key->dsa_pub,NULL,"(public-key(dsa(p %b)(q %b)(g %b)(y %b)))",string_len(p),p->string,string_len(q),q->string,string_len(g),g->string,string_len(pubkey),pubkey->string); + gcry_sexp_build(&key->dsa_pub,session,"(public-key(dsa(p %b)(q %b)(g %b)(y %b)))",string_len(p),p->string,string_len(q),q->string,string_len(g),g->string,string_len(pubkey),pubkey->string); #elif defined HAVE_LIBCRYPTO key->dsa_pub=DSA_new(); key->dsa_pub->p=make_string_bn(p); @@ -83,7 +83,7 @@ PUBLIC_KEY *publickey_make_dss(BUFFER *buffer){ return key; } -PUBLIC_KEY *publickey_make_rsa(BUFFER *buffer, char *type){ +PUBLIC_KEY *publickey_make_rsa(SSH_SESSION *session, BUFFER *buffer, char *type){ STRING *e,*n; PUBLIC_KEY *key=malloc(sizeof(PUBLIC_KEY)); if(!strcmp(type,"ssh-rsa")) @@ -95,7 +95,7 @@ PUBLIC_KEY *publickey_make_rsa(BUFFER *buffer, char *type){ n=buffer_get_ssh_string(buffer); buffer_free(buffer); /* we don't need it anymore */ if(!e || !n){ - ssh_set_error(NULL,SSH_FATAL,"Invalid RSA public key"); + ssh_set_error(session,SSH_FATAL,"Invalid RSA public key"); if(e) free(e); if(n) @@ -144,7 +144,7 @@ void publickey_free(PUBLIC_KEY *key){ free(key); } -PUBLIC_KEY *publickey_from_string(STRING *pubkey_s){ +PUBLIC_KEY *publickey_from_string(SSH_SESSION *session, STRING *pubkey_s){ BUFFER *tmpbuf=buffer_new(); STRING *type_s; char *type; @@ -153,24 +153,24 @@ PUBLIC_KEY *publickey_from_string(STRING *pubkey_s){ type_s=buffer_get_ssh_string(tmpbuf); if(!type_s){ buffer_free(tmpbuf); - ssh_set_error(NULL,SSH_FATAL,"Invalid public key format"); + ssh_set_error(session,SSH_FATAL,"Invalid public key format"); return NULL; } type=string_to_char(type_s); free(type_s); if(!strcmp(type,"ssh-dss")){ free(type); - return publickey_make_dss(tmpbuf); + return publickey_make_dss(session, tmpbuf); } if(!strcmp(type,"ssh-rsa")){ free(type); - return publickey_make_rsa(tmpbuf,"ssh-rsa"); + return publickey_make_rsa(session, tmpbuf,"ssh-rsa"); } if(!strcmp(type,"ssh-rsa1")){ free(type); - return publickey_make_rsa(tmpbuf,"ssh-rsa1"); + return publickey_make_rsa(session, tmpbuf,"ssh-rsa1"); } - ssh_set_error(NULL,SSH_FATAL,"unknown public key protocol %s",type); + ssh_set_error(session,SSH_FATAL,"unknown public key protocol %s",type); buffer_free(tmpbuf); free(type); return NULL; @@ -428,7 +428,7 @@ STRING *signature_to_string(SIGNATURE *sign){ } /* TODO : split this function in two so it becomes smaller */ -SIGNATURE *signature_from_string(STRING *signature,PUBLIC_KEY *pubkey,int needed_type){ +SIGNATURE *signature_from_string(SSH_SESSION *session, STRING *signature,PUBLIC_KEY *pubkey,int needed_type){ #ifdef HAVE_LIBGCRYPT gcry_sexp_t sig; #elif defined HAVE_LIBCRYPTO @@ -444,7 +444,7 @@ SIGNATURE *signature_from_string(STRING *signature,PUBLIC_KEY *pubkey,int needed buffer_add_data(tmpbuf,signature->string,string_len(signature)); type_s=buffer_get_ssh_string(tmpbuf); if(!type_s){ - ssh_set_error(NULL,SSH_FATAL,"Invalid signature packet"); + ssh_set_error(session,SSH_FATAL,"Invalid signature packet"); buffer_free(tmpbuf); return NULL; } @@ -453,7 +453,7 @@ SIGNATURE *signature_from_string(STRING *signature,PUBLIC_KEY *pubkey,int needed switch(needed_type){ case TYPE_DSS: if(strcmp(type,"ssh-dss")){ - ssh_set_error(NULL,SSH_FATAL,"Invalid signature type : %s",type); + ssh_set_error(session,SSH_FATAL,"Invalid signature type : %s",type); buffer_free(tmpbuf); free(type); return NULL; @@ -461,14 +461,14 @@ SIGNATURE *signature_from_string(STRING *signature,PUBLIC_KEY *pubkey,int needed break; case TYPE_RSA: if(strcmp(type,"ssh-rsa")){ - ssh_set_error(NULL,SSH_FATAL,"Invalid signature type : %s",type); + ssh_set_error(session,SSH_FATAL,"Invalid signature type : %s",type); buffer_free(tmpbuf); free(type); return NULL; } break; default: - ssh_set_error(NULL,SSH_FATAL,"Invalid signature type : %s",type); + ssh_set_error(session,SSH_FATAL,"Invalid signature type : %s",type); free(type); buffer_free(tmpbuf); return NULL; @@ -520,7 +520,7 @@ SIGNATURE *signature_from_string(STRING *signature,PUBLIC_KEY *pubkey,int needed if(len>rsalen){ free(e); free(sign); - ssh_set_error(NULL,SSH_FATAL,"signature too big ! %d instead of %d",len,rsalen); + ssh_set_error(session,SSH_FATAL,"signature too big ! %d instead of %d",len,rsalen); return NULL; } if(lennext_crypto->out_cipher=cipher_new(i); -- cgit v1.2.3