summaryrefslogtreecommitdiffstats
path: root/crypto/openssh/ssh-dss.c
diff options
context:
space:
mode:
authordes <des@FreeBSD.org>2002-10-29 09:43:00 +0000
committerdes <des@FreeBSD.org>2002-10-29 09:43:00 +0000
commit099d1a58f7bc088a9f71af6d32542ca3949468a3 (patch)
tree49cef8938d7beb10016662d15546fa090865073d /crypto/openssh/ssh-dss.c
parent1ba793a7c09e24d920de3983a3223770cb37ebff (diff)
downloadFreeBSD-src-099d1a58f7bc088a9f71af6d32542ca3949468a3.zip
FreeBSD-src-099d1a58f7bc088a9f71af6d32542ca3949468a3.tar.gz
Vendor import of OpenSSH-portable 3.5p1.
Diffstat (limited to 'crypto/openssh/ssh-dss.c')
-rw-r--r--crypto/openssh/ssh-dss.c22
1 files changed, 11 insertions, 11 deletions
diff --git a/crypto/openssh/ssh-dss.c b/crypto/openssh/ssh-dss.c
index dbf8465..9ba2584 100644
--- a/crypto/openssh/ssh-dss.c
+++ b/crypto/openssh/ssh-dss.c
@@ -23,7 +23,7 @@
*/
#include "includes.h"
-RCSID("$OpenBSD: ssh-dss.c,v 1.15 2002/06/23 03:30:17 deraadt Exp $");
+RCSID("$OpenBSD: ssh-dss.c,v 1.17 2002/07/04 10:41:47 markus Exp $");
#include <openssl/bn.h>
#include <openssl/evp.h>
@@ -46,7 +46,7 @@ ssh_dss_sign(Key *key, u_char **sigp, u_int *lenp,
DSA_SIG *sig;
const EVP_MD *evp_md = EVP_sha1();
EVP_MD_CTX md;
- u_char *ret, digest[EVP_MAX_MD_SIZE], sigblob[SIGBLOB_LEN];
+ u_char digest[EVP_MAX_MD_SIZE], sigblob[SIGBLOB_LEN];
u_int rlen, slen, len, dlen;
Buffer b;
@@ -79,25 +79,25 @@ ssh_dss_sign(Key *key, u_char **sigp, u_int *lenp,
DSA_SIG_free(sig);
if (datafellows & SSH_BUG_SIGBLOB) {
- ret = xmalloc(SIGBLOB_LEN);
- memcpy(ret, sigblob, SIGBLOB_LEN);
if (lenp != NULL)
*lenp = SIGBLOB_LEN;
- if (sigp != NULL)
- *sigp = ret;
+ if (sigp != NULL) {
+ *sigp = xmalloc(SIGBLOB_LEN);
+ memcpy(*sigp, sigblob, SIGBLOB_LEN);
+ }
} else {
/* ietf-drafts */
buffer_init(&b);
buffer_put_cstring(&b, "ssh-dss");
buffer_put_string(&b, sigblob, SIGBLOB_LEN);
len = buffer_len(&b);
- ret = xmalloc(len);
- memcpy(ret, buffer_ptr(&b), len);
- buffer_free(&b);
if (lenp != NULL)
*lenp = len;
- if (sigp != NULL)
- *sigp = ret;
+ if (sigp != NULL) {
+ *sigp = xmalloc(len);
+ memcpy(*sigp, buffer_ptr(&b), len);
+ }
+ buffer_free(&b);
}
return 0;
}
OpenPOWER on IntegriCloud