diff options
-rw-r--r-- | ChangeLog | 5 | ||||
-rw-r--r-- | ssh-dss.c | 12 | ||||
-rw-r--r-- | ssh-rsa.c | 6 |
3 files changed, 14 insertions, 9 deletions
@@ -30,6 +30,9 @@ | |||
30 | - markus@cvs.openbsd.org 2001/11/07 21:40:21 | 30 | - markus@cvs.openbsd.org 2001/11/07 21:40:21 |
31 | [ssh-rsa.c] | 31 | [ssh-rsa.c] |
32 | ssh_rsa_sign/verify: SSH_BUG_SIGBLOB not supported | 32 | ssh_rsa_sign/verify: SSH_BUG_SIGBLOB not supported |
33 | - markus@cvs.openbsd.org 2001/11/07 22:10:28 | ||
34 | [ssh-dss.c ssh-rsa.c] | ||
35 | missing free and sync dss/rsa code. | ||
33 | 36 | ||
34 | 20011109 | 37 | 20011109 |
35 | - (stevesk) auth-pam.c: use do_pam_authenticate(PAM_DISALLOW_NULL_AUTHTOK) | 38 | - (stevesk) auth-pam.c: use do_pam_authenticate(PAM_DISALLOW_NULL_AUTHTOK) |
@@ -6839,4 +6842,4 @@ | |||
6839 | - Wrote replacements for strlcpy and mkdtemp | 6842 | - Wrote replacements for strlcpy and mkdtemp |
6840 | - Released 1.0pre1 | 6843 | - Released 1.0pre1 |
6841 | 6844 | ||
6842 | $Id: ChangeLog,v 1.1643 2001/11/12 00:03:16 djm Exp $ | 6845 | $Id: ChangeLog,v 1.1644 2001/11/12 00:03:35 djm Exp $ |
@@ -23,7 +23,7 @@ | |||
23 | */ | 23 | */ |
24 | 24 | ||
25 | #include "includes.h" | 25 | #include "includes.h" |
26 | RCSID("$OpenBSD: ssh-dss.c,v 1.8 2001/09/17 19:27:15 stevesk Exp $"); | 26 | RCSID("$OpenBSD: ssh-dss.c,v 1.9 2001/11/07 22:10:28 markus Exp $"); |
27 | 27 | ||
28 | #include <openssl/bn.h> | 28 | #include <openssl/bn.h> |
29 | #include <openssl/evp.h> | 29 | #include <openssl/evp.h> |
@@ -138,17 +138,19 @@ ssh_dss_verify( | |||
138 | if (strcmp("ssh-dss", ktype) != 0) { | 138 | if (strcmp("ssh-dss", ktype) != 0) { |
139 | error("ssh_dss_verify: cannot handle type %s", ktype); | 139 | error("ssh_dss_verify: cannot handle type %s", ktype); |
140 | buffer_free(&b); | 140 | buffer_free(&b); |
141 | xfree(ktype); | ||
141 | return -1; | 142 | return -1; |
142 | } | 143 | } |
144 | xfree(ktype); | ||
143 | sigblob = buffer_get_string(&b, &len); | 145 | sigblob = buffer_get_string(&b, &len); |
144 | rlen = buffer_len(&b); | 146 | rlen = buffer_len(&b); |
147 | buffer_free(&b); | ||
145 | if(rlen != 0) { | 148 | if(rlen != 0) { |
146 | error("remaining bytes in signature %d", rlen); | 149 | error("ssh_dss_verify: " |
147 | buffer_free(&b); | 150 | "remaining bytes in signature %d", rlen); |
151 | xfree(sigblob); | ||
148 | return -1; | 152 | return -1; |
149 | } | 153 | } |
150 | buffer_free(&b); | ||
151 | xfree(ktype); | ||
152 | } | 154 | } |
153 | 155 | ||
154 | if (len != SIGBLOB_LEN) { | 156 | if (len != SIGBLOB_LEN) { |
@@ -23,7 +23,7 @@ | |||
23 | */ | 23 | */ |
24 | 24 | ||
25 | #include "includes.h" | 25 | #include "includes.h" |
26 | RCSID("$OpenBSD: ssh-rsa.c,v 1.11 2001/11/07 21:40:21 markus Exp $"); | 26 | RCSID("$OpenBSD: ssh-rsa.c,v 1.12 2001/11/07 22:10:28 markus Exp $"); |
27 | 27 | ||
28 | #include <openssl/evp.h> | 28 | #include <openssl/evp.h> |
29 | #include <openssl/err.h> | 29 | #include <openssl/err.h> |
@@ -151,14 +151,14 @@ ssh_rsa_verify( | |||
151 | rlen = buffer_len(&b); | 151 | rlen = buffer_len(&b); |
152 | buffer_free(&b); | 152 | buffer_free(&b); |
153 | if(rlen != 0) { | 153 | if(rlen != 0) { |
154 | xfree(sigblob); | ||
155 | error("ssh_rsa_verify: remaining bytes in signature %d", rlen); | 154 | error("ssh_rsa_verify: remaining bytes in signature %d", rlen); |
155 | xfree(sigblob); | ||
156 | return -1; | 156 | return -1; |
157 | } | 157 | } |
158 | nid = (datafellows & SSH_BUG_RSASIGMD5) ? NID_md5 : NID_sha1; | 158 | nid = (datafellows & SSH_BUG_RSASIGMD5) ? NID_md5 : NID_sha1; |
159 | if ((evp_md = EVP_get_digestbynid(nid)) == NULL) { | 159 | if ((evp_md = EVP_get_digestbynid(nid)) == NULL) { |
160 | xfree(sigblob); | ||
161 | error("ssh_rsa_verify: EVP_get_digestbynid %d failed", nid); | 160 | error("ssh_rsa_verify: EVP_get_digestbynid %d failed", nid); |
161 | xfree(sigblob); | ||
162 | return -1; | 162 | return -1; |
163 | } | 163 | } |
164 | dlen = evp_md->md_size; | 164 | dlen = evp_md->md_size; |