- (stevesk) [ssh-keygen.c] bug #231: always init/seed_rng().
diff --git a/ssh-keygen.c b/ssh-keygen.c
index 4273c11..3478e37 100644
--- a/ssh-keygen.c
+++ b/ssh-keygen.c
@@ -761,6 +761,8 @@
 	__progname = get_progname(av[0]);
 
 	SSLeay_add_all_algorithms();
+	init_rng();
+	seed_rng();
 
 	/* we need this for the home * directory.  */
 	pw = getpwuid(getuid());
@@ -855,10 +857,12 @@
 		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) {
@@ -872,13 +876,8 @@
 #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();