+ return 0;
+
+fail:
+ xfree(ip);
+ return -1;
+}
+
+int
+verify_host_key(char *host, struct sockaddr *hostaddr, Key *host_key)
+{
+ struct stat st;
+
+ /* return ok if the key can be found in an old keyfile */
+ if (stat(options.system_hostfile2, &st) == 0 ||
+ stat(options.user_hostfile2, &st) == 0) {
+ if (check_host_key(host, hostaddr, host_key, /*readonly*/ 1,
+ options.user_hostfile2, options.system_hostfile2) == 0)
+ return 0;
+ }
+ return check_host_key(host, hostaddr, host_key, /*readonly*/ 0,
+ options.user_hostfile, options.system_hostfile);