File u_tigervnc-add-autoaccept-parameter.patch of Package tigervnc.openSUSE_Leap_42.2_Update

Index: tigervnc-1.6.0/java/com/tigervnc/rfb/CSecurityTLS.java
===================================================================
--- tigervnc-1.6.0.orig/java/com/tigervnc/rfb/CSecurityTLS.java
+++ tigervnc-1.6.0/java/com/tigervnc/rfb/CSecurityTLS.java
@@ -64,6 +64,9 @@ public class CSecurityTLS extends CSecur
   public static StringParameter x509crl
   = new StringParameter("x509crl",
                         "X509 CRL file", "", Configuration.ConfigurationObject.ConfViewer);
+  public static StringParameter x509autoaccept
+  = new StringParameter("x509autoaccept",
+                        "X509 Certificate SHA-1 fingerprint", "", Configuration.ConfigurationObject.ConfViewer);
 
   private void initGlobal()
   {
@@ -82,6 +85,7 @@ public class CSecurityTLS extends CSecur
     setDefaults();
     cafile = x509ca.getData();
     crlfile = x509crl.getData();
+    certautoaccept = x509autoaccept.getData();
   }
 
   public static String getDefaultCA() {
@@ -277,6 +281,11 @@ public class CSecurityTLS extends CSecur
           String thumbprint =
             DatatypeConverter.printHexBinary(md.digest());
           thumbprint = thumbprint.replaceAll("..(?!$)", "$0 ");
+
+          if (certautoaccept != null && thumbprint.equalsIgnoreCase(certautoaccept)) {
+            return;
+          }
+
           int ret = JOptionPane.showOptionDialog(null,
             "This certificate has been signed by an unknown authority\n"+
             "\n"+
@@ -466,7 +475,7 @@ public class CSecurityTLS extends CSecur
   private SSLEngineManager manager;
   private boolean anon;
 
-  private String cafile, crlfile;
+  private String cafile, crlfile, certautoaccept;
   private FdInStream is;
   private FdOutStream os;
 
Index: tigervnc-1.6.0/java/com/tigervnc/vncviewer/VncViewer.java
===================================================================
--- tigervnc-1.6.0.orig/java/com/tigervnc/vncviewer/VncViewer.java
+++ tigervnc-1.6.0/java/com/tigervnc/vncviewer/VncViewer.java
@@ -353,6 +353,8 @@ public class VncViewer extends javax.swi
     parent.setFocusTraversalKeysEnabled(false);
     setLookAndFeel();
     setBackground(Color.white);
+
+    SecurityClient.setDefaults();
   }
 
   private void getTimestamp() {
@@ -374,6 +376,7 @@ public class VncViewer extends javax.swi
     if (embed.getValue() && nViewers == 0) {
       alwaysShowServerDialog.setParam(false);
       Configuration.global().readAppletParams(this);
+      Configuration.viewer().readAppletParams(this);
       fullScreen.setParam(false);
       scalingFactor.setParam("100");
       String host = getCodeBase().getHost();
openSUSE Build Service is sponsored by