diff --git a/ChangeLog b/ChangeLog
index e4ffad5..8703987 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -36,6 +36,9 @@
      ssize_t args use "%ld" and cast to (long)
      size_t args use "%lu" and cast to (u_long)
      ok markus@ and thanks millert@
+   - markus@cvs.openbsd.org 2002/03/25 21:04:02
+     [ssh.c]
+     simplify num_identity_files handling
 
 20020324
  - (stevesk) [session.c] disable LOGIN_NEEDS_TERM until we are sure
@@ -8050,4 +8053,4 @@
  - Wrote replacements for strlcpy and mkdtemp
  - Released 1.0pre1
 
-$Id: ChangeLog,v 1.1988 2002/03/26 03:20:45 mouring Exp $
+$Id: ChangeLog,v 1.1989 2002/03/26 03:23:00 mouring Exp $
diff --git a/ssh.c b/ssh.c
index dd926b7..062e098 100644
--- a/ssh.c
+++ b/ssh.c
@@ -39,7 +39,7 @@
  */
 
 #include "includes.h"
-RCSID("$OpenBSD: ssh.c,v 1.167 2002/03/25 17:34:27 markus Exp $");
+RCSID("$OpenBSD: ssh.c,v 1.168 2002/03/25 21:04:02 markus Exp $");
 
 #include <openssl/evp.h>
 #include <openssl/err.h>
@@ -1197,8 +1197,6 @@
 		int count = 0;
 		for (i = 0; keys[i] != NULL; i++) {
 			count++;
-			if (options.num_identity_files + 1 > SSH_MAX_IDENTITY_FILES)
-				options.num_identity_files = SSH_MAX_IDENTITY_FILES - 1;
 			memmove(&options.identity_files[1], &options.identity_files[0],
 			    sizeof(char *) * (SSH_MAX_IDENTITY_FILES - 1));
 			memmove(&options.identity_keys[1], &options.identity_keys[0],
@@ -1207,6 +1205,8 @@
 			options.identity_keys[0] = keys[i];
 			options.identity_files[0] = xstrdup("smartcard key");;
 		}
+		if (options.num_identity_files > SSH_MAX_IDENTITY_FILES)
+			options.num_identity_files = SSH_MAX_IDENTITY_FILES;
 		i = count;
 		xfree(keys);
 	}
