diff options
Diffstat (limited to 'key.c')
-rw-r--r-- | key.c | 5 |
1 files changed, 4 insertions, 1 deletions
@@ -32,7 +32,7 @@ | |||
32 | * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | 32 | * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
33 | */ | 33 | */ |
34 | #include "includes.h" | 34 | #include "includes.h" |
35 | RCSID("$OpenBSD: key.c,v 1.25 2001/04/17 10:53:24 markus Exp $"); | 35 | RCSID("$OpenBSD: key.c,v 1.26 2001/06/23 05:26:02 markus Exp $"); |
36 | 36 | ||
37 | #include <openssl/evp.h> | 37 | #include <openssl/evp.h> |
38 | 38 | ||
@@ -768,6 +768,9 @@ key_verify( | |||
768 | u_char *signature, int signaturelen, | 768 | u_char *signature, int signaturelen, |
769 | u_char *data, int datalen) | 769 | u_char *data, int datalen) |
770 | { | 770 | { |
771 | if (signaturelen == 0) | ||
772 | return -1; | ||
773 | |||
771 | switch(key->type){ | 774 | switch(key->type){ |
772 | case KEY_DSA: | 775 | case KEY_DSA: |
773 | return ssh_dss_verify(key, signature, signaturelen, data, datalen); | 776 | return ssh_dss_verify(key, signature, signaturelen, data, datalen); |