From 4525af355d0db0cf9edc1da642aacd14ed52f2ba Mon Sep 17 00:00:00 2001
From: jvergara <jvergara@localhost>
Date: Mon, 19 Nov 2007 17:14:24 +0000
Subject: [PATCH] Fix for issue 2214 (Provide a manner to accept permanently certificates).
---
opends/src/guitools/org/opends/guitools/uninstaller/Uninstaller.java | 24 ++++++++++++++++++++++--
1 files changed, 22 insertions(+), 2 deletions(-)
diff --git a/opends/src/guitools/org/opends/guitools/uninstaller/Uninstaller.java b/opends/src/guitools/org/opends/guitools/uninstaller/Uninstaller.java
index 3652723..d1f1243 100644
--- a/opends/src/guitools/org/opends/guitools/uninstaller/Uninstaller.java
+++ b/opends/src/guitools/org/opends/guitools/uninstaller/Uninstaller.java
@@ -44,9 +44,11 @@
import org.opends.guitools.uninstaller.ui.ConfirmUninstallPanel;
import org.opends.guitools.uninstaller.ui.LoginDialog;
import org.opends.quicksetup.ui.*;
+
import static org.opends.quicksetup.util.Utils.*;
import org.opends.quicksetup.util.BackgroundTask;
import org.opends.quicksetup.util.ServerController;
+import org.opends.quicksetup.util.UIKeyStore;
import org.opends.server.admin.AttributeTypePropertyDefinition;
import org.opends.server.admin.ClassLoaderProvider;
import org.opends.server.admin.ClassPropertyDefinition;
@@ -150,7 +152,9 @@
* {@inheritDoc}
*/
public UserData createUserData() {
- return new UninstallUserData();
+ UninstallUserData data = new UninstallUserData();
+ data.setTrustManager(super.getTrustManager());
+ return data;
}
/**
@@ -1554,7 +1558,7 @@
new CertificateDialog(qs.getDialog().getFrame(), ce);
dlg.pack();
dlg.setVisible(true);
- if (dlg.isAccepted())
+ if (dlg.getUserAnswer() != CertificateDialog.ReturnType.NOT_ACCEPTED)
{
X509Certificate[] chain = ce.getChain();
String authType = ce.getAuthType();
@@ -1617,6 +1621,22 @@
}
}
}
+ if (dlg.getUserAnswer() ==
+ CertificateDialog.ReturnType.ACCEPTED_PERMANENTLY)
+ {
+ X509Certificate[] chain = ce.getChain();
+ if (chain != null)
+ {
+ try
+ {
+ UIKeyStore.acceptCertificate(chain);
+ }
+ catch (Throwable t)
+ {
+ LOG.log(Level.WARNING, "Error accepting certificate: "+t, t);
+ }
+ }
+ }
}
/**
--
Gitblit v1.10.0