*/
#include "includes.h"
-RCSID("$OpenBSD: ssh-keygen.c,v 1.98 2002/03/27 22:21:45 markus Exp $");
+RCSID("$OpenBSD: ssh-keygen.c,v 1.102 2002/11/26 00:45:03 wcobb Exp $");
#include <openssl/evp.h>
#include <openssl/pem.h>
snprintf(identity_file, sizeof(identity_file), "%s/%s", pw->pw_dir, name);
fprintf(stderr, "%s (%s): ", prompt, identity_file);
- fflush(stderr);
if (fgets(buf, sizeof(buf), stdin) == NULL)
exit(1);
if (strchr(buf, '\n'))
}
#define SSH_COM_PUBLIC_BEGIN "---- BEGIN SSH2 PUBLIC KEY ----"
-#define SSH_COM_PUBLIC_END "---- END SSH2 PUBLIC KEY ----"
+#define SSH_COM_PUBLIC_END "---- END SSH2 PUBLIC KEY ----"
#define SSH_COM_PRIVATE_BEGIN "---- BEGIN SSH2 ENCRYPTED PRIVATE KEY ----"
#define SSH_COM_PRIVATE_KEY_MAGIC 0x3f6ff9eb
}
fprintf(stdout, "%s\n", SSH_COM_PUBLIC_BEGIN);
fprintf(stdout,
- "Comment: \"%d-bit %s, converted from OpenSSH by %s@%s\"\n",
+ "Comment: \"%u-bit %s, converted from OpenSSH by %s@%s\"\n",
key_size(k), key_type(k),
pw->pw_name, hostname);
dump_base64(stdout, blob, len);
key_free(prv);
if (ret < 0)
exit(1);
- log("loading key done");
+ log("loading key done");
exit(0);
}
public = key_load_public(identity_file, &comment);
if (public != NULL) {
fp = key_fingerprint(public, fptype, rep);
- printf("%d %s %s\n", key_size(public), fp, comment);
+ printf("%u %s %s\n", key_size(public), fp, comment);
key_free(public);
xfree(comment);
xfree(fp);
if (i == 0 || ep == NULL || (*ep != ' ' && *ep != '\t')) {
int quoted = 0;
comment = cp;
- for (; *cp && (quoted || (*cp != ' ' && *cp != '\t')); cp++) {
+ for (; *cp && (quoted || (*cp != ' ' &&
+ *cp != '\t')); cp++) {
if (*cp == '\\' && cp[1] == '"')
cp++; /* Skip both */
else if (*cp == '"')
}
comment = *cp ? cp : comment;
fp = key_fingerprint(public, fptype, rep);
- printf("%d %s %s\n", key_size(public), fp,
+ printf("%u %s %s\n", key_size(public), fp,
comment ? comment : "no comment");
xfree(fp);
key_free(public);
__progname = get_progname(av[0]);
SSLeay_add_all_algorithms();
+ init_rng();
+ seed_rng();
/* we need this for the home * directory. */
pw = getpwuid(getuid());
do_fingerprint(pw);
if (change_passphrase)
do_change_passphrase(pw);
- if (convert_to_ssh2)
- do_convert_to_ssh2(pw);
if (change_comment)
do_change_comment(pw);
+ if (convert_to_ssh2)
+ do_convert_to_ssh2(pw);
+ if (convert_from_ssh2)
+ do_convert_from_ssh2(pw);
if (print_public)
do_print_public(pw);
if (reader_id != NULL) {
#endif /* SMARTCARD */
}
- init_rng();
- seed_rng();
arc4random_stir();
- if (convert_from_ssh2)
- do_convert_from_ssh2(pw);
-
if (key_type_name == NULL) {
printf("You must specify a key type (-t).\n");
usage();