]> source.dussan.org Git - gitblit.git/commitdiff
Skip SSH host key files that do not exist 1429/head
authorFlorian Zschocke <f.zschocke+git@gmail.com>
Mon, 24 Oct 2022 22:00:03 +0000 (00:00 +0200)
committerFlorian Zschocke <f.zschocke+git@gmail.com>
Mon, 24 Oct 2022 22:01:01 +0000 (00:01 +0200)
Since we now do not generate a DSA host key file anymore, but keep it in
the list of potential keys so that existing keys still work, it can
happen that the files for DSA (and Ed25519) are getting loaded but they
do not exist. This results in an error in the log.
So instead check if the file exists and only try to load files that
exist. This prevents from errors (which are none) being spammed in the
log.

src/main/java/com/gitblit/transport/ssh/FileKeyPairProvider.java

index aaa606ced24c0e85d3ee43e4cc7f0c537803344e..0e97f557c2be2e3607d7814f15ce023846ac0b4a 100644 (file)
@@ -18,6 +18,7 @@
  */
 package com.gitblit.transport.ssh;
 
+import java.io.File;
 import java.io.FileInputStream;
 import java.io.InputStreamReader;
 import java.security.KeyFactory;
@@ -122,6 +123,11 @@ public class FileKeyPairProvider extends AbstractKeyPairProvider
                     {
                         while (iterator.hasNext()) {
                             String file = iterator.next();
+                            File f = new File(file);
+                            if (!f.isFile()) {
+                                log.debug("File does not exist, skipping {}", file);
+                                continue;
+                            }
                             nextKeyPair = doLoadKey(file);
                             if (nextKeyPair != null) {
                                 nextKeyPairSet = true;