summaryrefslogtreecommitdiffstats
path: root/libssh/kex.c
diff options
context:
space:
mode:
authorAndreas Schneider <mail@cynapses.org>2009-04-01 21:24:16 +0000
committerAndreas Schneider <mail@cynapses.org>2009-04-01 21:24:16 +0000
commit891539af6cbdbdfabb8d37fb491f7f8cadf9823c (patch)
tree1699cb47cd68dc35a972f8b5e1d834946c48d944 /libssh/kex.c
parent1b627b386763e22a7b8f7a7c8de9610c1da56cd2 (diff)
downloadlibssh-891539af6cbdbdfabb8d37fb491f7f8cadf9823c.tar.gz
libssh-891539af6cbdbdfabb8d37fb491f7f8cadf9823c.tar.xz
libssh-891539af6cbdbdfabb8d37fb491f7f8cadf9823c.zip
Add memory error checks for crypto wrapper functions.
git-svn-id: svn+ssh://svn.berlios.de/svnroot/repos/libssh/trunk@330 7dcaeef0-15fb-0310-b436-a5af3365683c
Diffstat (limited to 'libssh/kex.c')
-rw-r--r--libssh/kex.c10
1 files changed, 9 insertions, 1 deletions
diff --git a/libssh/kex.c b/libssh/kex.c
index db86c8c..e325aed 100644
--- a/libssh/kex.c
+++ b/libssh/kex.c
@@ -353,9 +353,17 @@ static STRING *make_rsa1_string(STRING *e, STRING *n){
return ret;
}
+/* TODO FIXME add return value and error checking in callers */
static void build_session_id1(SSH_SESSION *session, STRING *servern,
STRING *hostn){
- MD5CTX md5=md5_init();
+ MD5CTX md5;
+
+ md5 = md5_init();
+ if (md5 == NULL) {
+ return;
+ }
+
+
#ifdef DEBUG_CRYPTO
ssh_print_hexa("host modulus",hostn->string,string_len(hostn));
ssh_print_hexa("server modulus",servern->string,string_len(servern));