|
@@ -0,0 +1,79 @@
|
|
|
+--- openssh-5.2p1.orig/auth2-jpake.c 2008-11-11 06:33:03.000000000 +0100
|
|
|
++++ openssh-5.2p1/auth2-jpake.c 2009-09-18 12:28:10.000000000 +0200
|
|
|
+@@ -172,7 +172,7 @@ derive_rawsalt(const char *username, u_c
|
|
|
+ fatal("%s: not enough bytes for rawsalt (want %u have %u)",
|
|
|
+ __func__, len, digest_len);
|
|
|
+ memcpy(rawsalt, digest, len);
|
|
|
+- bzero(digest, digest_len);
|
|
|
++ memset(digest, 0, digest_len);
|
|
|
+ xfree(digest);
|
|
|
+ }
|
|
|
+
|
|
|
+@@ -197,10 +197,10 @@ makesalt(u_int want, const char *user)
|
|
|
+ fatal("%s: want %u", __func__, want);
|
|
|
+
|
|
|
+ derive_rawsalt(user, rawsalt, sizeof(rawsalt));
|
|
|
+- bzero(ret, sizeof(ret));
|
|
|
++ memset(ret, 0, sizeof(ret));
|
|
|
+ for (i = 0; i < want; i++)
|
|
|
+ ret[i] = pw_encode64(rawsalt[i]);
|
|
|
+- bzero(rawsalt, sizeof(rawsalt));
|
|
|
++ memset(rawsalt, 0, sizeof(rawsalt));
|
|
|
+
|
|
|
+ return ret;
|
|
|
+ }
|
|
|
+@@ -354,7 +354,7 @@ auth2_jpake_get_pwdata(Authctxt *authctx
|
|
|
+ debug3("%s: scheme = %s", __func__, *hash_scheme);
|
|
|
+ JPAKE_DEBUG_BN((*s, "%s: s = ", __func__));
|
|
|
+ #endif
|
|
|
+- bzero(secret, secret_len);
|
|
|
++ memset(secret, 0, secret_len);
|
|
|
+ xfree(secret);
|
|
|
+ }
|
|
|
+
|
|
|
+@@ -395,12 +395,12 @@ auth2_jpake_start(Authctxt *authctxt)
|
|
|
+ packet_send();
|
|
|
+ packet_write_wait();
|
|
|
+
|
|
|
+- bzero(hash_scheme, strlen(hash_scheme));
|
|
|
+- bzero(salt, strlen(salt));
|
|
|
++ memset(hash_scheme, 0, strlen(hash_scheme));
|
|
|
++ memset(salt, 0, strlen(salt));
|
|
|
+ xfree(hash_scheme);
|
|
|
+ xfree(salt);
|
|
|
+- bzero(x3_proof, x3_proof_len);
|
|
|
+- bzero(x4_proof, x4_proof_len);
|
|
|
++ memset(x3_proof, 0, x3_proof_len);
|
|
|
++ memset(x4_proof, 0, x4_proof_len);
|
|
|
+ xfree(x3_proof);
|
|
|
+ xfree(x4_proof);
|
|
|
+
|
|
|
+@@ -447,8 +447,8 @@ input_userauth_jpake_client_step1(int ty
|
|
|
+ &pctx->b,
|
|
|
+ &x4_s_proof, &x4_s_proof_len));
|
|
|
+
|
|
|
+- bzero(x1_proof, x1_proof_len);
|
|
|
+- bzero(x2_proof, x2_proof_len);
|
|
|
++ memset(x1_proof, 0, x1_proof_len);
|
|
|
++ memset(x2_proof, 0, x2_proof_len);
|
|
|
+ xfree(x1_proof);
|
|
|
+ xfree(x2_proof);
|
|
|
+
|
|
|
+@@ -462,7 +462,7 @@ input_userauth_jpake_client_step1(int ty
|
|
|
+ packet_send();
|
|
|
+ packet_write_wait();
|
|
|
+
|
|
|
+- bzero(x4_s_proof, x4_s_proof_len);
|
|
|
++ memset(x4_s_proof, 0, x4_s_proof_len);
|
|
|
+ xfree(x4_s_proof);
|
|
|
+
|
|
|
+ /* Expect step 2 packet from peer */
|
|
|
+@@ -503,7 +503,7 @@ input_userauth_jpake_client_step2(int ty
|
|
|
+ &pctx->k,
|
|
|
+ &pctx->h_k_sid_sessid, &pctx->h_k_sid_sessid_len));
|
|
|
+
|
|
|
+- bzero(x2_s_proof, x2_s_proof_len);
|
|
|
++ memset(x2_s_proof, 0, x2_s_proof_len);
|
|
|
+ xfree(x2_s_proof);
|
|
|
+
|
|
|
+ if (!use_privsep)
|