* called by a name other than "ssh" or "Secure Shell".
*
*
- * Copyright (c) 2000 Markus Friedl. All rights reserved.
+ * Copyright (c) 2000, 2001 Markus Friedl. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
#include "includes.h"
-RCSID("$OpenBSD: key.c,v 1.25 2001/04/17 10:53:24 markus Exp $");
+RCSID("$OpenBSD: key.c,v 1.29 2001/06/26 20:14:10 markus Exp $");
#include <openssl/evp.h>
DSA *dsa;
k = xmalloc(sizeof(*k));
k->type = type;
+ k->flags = 0;
k->dsa = NULL;
k->rsa = NULL;
switch (k->type) {
return 0;
}
-u_char*
+static u_char*
key_fingerprint_raw(Key *k, enum fp_type dgst_type, size_t *dgst_raw_length)
{
EVP_MD *md = NULL;
return retval;
}
-char*
+static char*
key_fingerprint_hex(u_char* dgst_raw, size_t dgst_raw_len)
{
char *retval;
return retval;
}
-char*
+static char*
key_fingerprint_bubblebabble(u_char* dgst_raw, size_t dgst_raw_len)
{
char vowels[] = { 'a', 'e', 'i', 'o', 'u', 'y' };
* last processed (and maybe modified) character. Note that this may modify
* the buffer containing the number.
*/
-int
+static int
read_bignum(char **cpp, BIGNUM * value)
{
char *cp = *cpp;
*cpp = cp;
return 1;
}
-int
+static int
write_bignum(FILE *f, BIGNUM *num)
{
char *buf = BN_bn2dec(num);
return 0;
}
-RSA *
+static RSA *
rsa_generate_private_key(u_int bits)
{
RSA *private;
return private;
}
-DSA*
+static DSA*
dsa_generate_private_key(u_int bits)
{
DSA *private = DSA_generate_parameters(bits, NULL, 0, NULL, NULL, NULL, NULL);
u_char *signature, int signaturelen,
u_char *data, int datalen)
{
+ if (signaturelen == 0)
+ return -1;
+
switch(key->type){
case KEY_DSA:
return ssh_dss_verify(key, signature, signaturelen, data, datalen);