summaryrefslogtreecommitdiffstats
path: root/base/common/src/com/netscape/cmscore/security/PWCBsdr.java
diff options
context:
space:
mode:
Diffstat (limited to 'base/common/src/com/netscape/cmscore/security/PWCBsdr.java')
-rw-r--r--base/common/src/com/netscape/cmscore/security/PWCBsdr.java257
1 files changed, 0 insertions, 257 deletions
diff --git a/base/common/src/com/netscape/cmscore/security/PWCBsdr.java b/base/common/src/com/netscape/cmscore/security/PWCBsdr.java
deleted file mode 100644
index a62a8561d..000000000
--- a/base/common/src/com/netscape/cmscore/security/PWCBsdr.java
+++ /dev/null
@@ -1,257 +0,0 @@
-// --- BEGIN COPYRIGHT BLOCK ---
-// This program is free software; you can redistribute it and/or modify
-// it under the terms of the GNU General Public License as published by
-// the Free Software Foundation; version 2 of the License.
-//
-// This program is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-// GNU General Public License for more details.
-//
-// You should have received a copy of the GNU General Public License along
-// with this program; if not, write to the Free Software Foundation, Inc.,
-// 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
-//
-// (C) 2007 Red Hat, Inc.
-// All rights reserved.
-// --- END COPYRIGHT BLOCK ---
-package com.netscape.cmscore.security;
-
-import org.mozilla.jss.util.Password;
-import org.mozilla.jss.util.PasswordCallback;
-import org.mozilla.jss.util.PasswordCallbackInfo;
-
-import com.netscape.certsrv.apps.CMS;
-import com.netscape.certsrv.logging.ILogger;
-import com.netscape.cmscore.base.JDialogPasswordCallback;
-
-/*
- * A class to retrieve passwords from the SDR password cache
- *
- * @author Christina Fu
- * @version $Revision$, $Date$
- */
-
-public class PWCBsdr implements PasswordCallback {
- String mprompt = "";
- boolean firsttime = true;
- private PasswordCallback mCB = null;
- private String mPWcachedb = null;
- private ILogger mLogger = null;
-
- public PWCBsdr() {
- this(null);
- }
-
- public PWCBsdr(String prompt) {
- mprompt = prompt;
-
- /* to get the test program work
- System.out.println("before CMS.getLogger");
- try {
- */
- mLogger = CMS.getLogger();
-
- /*
- } catch (NullPointerException e) {
- System.out.println("after CMS.getLoggergot NullPointerException ... testing ok");
- }
- System.out.println("after CMS.getLogger");
- */
- // get path to password cache
- try {
- mPWcachedb = CMS.getConfigStore().getString("pwCache");
- CMS.debug("got pwCache from configstore: " +
- mPWcachedb);
- } catch (NullPointerException e) {
- System.out.println("after CMS.getConfigStore got NullPointerException ... testing ok");
- } catch (Exception e) {
- log(ILogger.LL_FAILURE, CMS.getLogMessage("CMSCORE_SECURITY_GET_CONFIG"));
- // let it fall through
- }
-
- // System.out.println("after CMS.getConfigStore");
-
- // Unix
- mCB = new PWsdrConsolePasswordCallback(prompt);
-
- // mCB = new PWsdrDialogPasswordCallback( prompt );
-
-
- // System.out.println( "Created PWCBsdr with prompt of "
- // + mprompt );
- }
-
- /* We are now assuming that PasswordCallbackInfo.getname() returns
- * the tag we are hoping to match in the cache.
- */
-
- public Password getPasswordFirstAttempt(PasswordCallbackInfo info)
- throws PasswordCallback.GiveUpException {
-
- CMS.debug("in getPasswordFirstAttempt");
-
- /* debugging code to see if token is logged in
- try {
- CryptoManager cm = CryptoManager.getInstance();
- CryptoToken token =
- cm.getInternalKeyStorageToken();
- if (token.isLoggedIn() == false) {
- // missed it.
- CMS.debug("token not yet logged in!!");
- } else {
- CMS.debug("token logged in.");
- }
- } catch (Exception e) {
- CMS.debug("crypto manager error:"+e.toString());
- }
- CMS.debug("still in getPasswordFirstAttempt");
- */
- Password pw = null;
- String tmpPrompt = info.getName();
-
- String skip_token = System.getProperty("cms.skip_token");
-
- if (skip_token != null) {
- if (tmpPrompt.equals(skip_token)) {
- throw new PasswordCallback.GiveUpException();
- }
- }
-
- try {
- String defpw = System.getProperty("cms.defaultpassword");
-
- if (defpw != null) {
- return new Password(defpw.toCharArray());
- }
-
- /* mprompt has precedence over info.name */
- if (!(mprompt == null)) {
- tmpPrompt = mprompt;
- }
-
- if (tmpPrompt == null) { /* no name, fail */
- System.out.println("Shouldn't get here");
- throw new PasswordCallback.GiveUpException();
- } else { /* get password from password cache */
-
- CMS.debug("getting tag = " + tmpPrompt);
- PWsdrCache pwc = new PWsdrCache(mPWcachedb, mLogger);
-
- pw = pwc.getEntry(tmpPrompt);
-
- if (pw != null) {
- CMS.debug("non-null password returned in first attempt");
- return pw;
- } else { /* password not found */
- // we don't want caller to do getPasswordAgain, for now
- log(ILogger.LL_FAILURE, CMS.getLogMessage("CMSCORE_SECURITY_THROW_CALLBACK"));
- throw new PasswordCallback.GiveUpException();
- }
- }
- } catch (Throwable e) {
- // System.out.println( "BUG HERE!!!!first!!!!!!!!!!!!!!!!!" );
- // e.printStackTrace();
- throw new PasswordCallback.GiveUpException();
- }
- }
-
- /* The password cache has failed to return a password (or a usable password.
- * Now we will try and get the password from the user and hopefully add
- * the password to the cache pw cache
- */
- public Password getPasswordAgain(PasswordCallbackInfo info)
- throws PasswordCallback.GiveUpException {
-
- CMS.debug("in getPasswordAgain");
- try {
- Password pw = null;
-
- try {
- if (firsttime) {
- try {
- firsttime = false;
-
- pw = mCB.getPasswordFirstAttempt(info);
- } catch (PasswordCallback.GiveUpException e) {
- throw new PasswordCallback.GiveUpException();
- }
- } else {
- pw = mCB.getPasswordAgain(info);
- }
- return (pw);
- } catch (PasswordCallback.GiveUpException e) {
- throw new PasswordCallback.GiveUpException();
- }
- } catch (Throwable e) {
- // System.out.println( "BUG HERE!! in the password again!!"
- // + "!!!!!!!!!!!" );
- // e.printStackTrace();
- throw new PasswordCallback.GiveUpException();
- }
- }
-
- public void log(int level, String msg) {
- if (mLogger == null) {
- System.out.println(msg);
- } else {
- mLogger.log(ILogger.EV_SYSTEM, ILogger.S_OTHER, level, "PWCBsdr " + msg);
- }
- }
-}
-
-class PWsdrConsolePasswordCallback implements PasswordCallback {
- private String mPrompt = null;
-
- public PWsdrConsolePasswordCallback(String p) {
- mPrompt = p;
- }
-
- public String getPrompt() {
- return mPrompt;
- }
-
- public Password getPasswordFirstAttempt(PasswordCallbackInfo info)
- throws PasswordCallback.GiveUpException {
- if (mPrompt == null) {
- System.out.println("Get password " + info.getName());
- } else {
- System.out.println(getPrompt());
- }
-
- Password tmppw = PWUtil.readPasswordFromStream();
-
- return (tmppw);
- }
-
- public Password getPasswordAgain(PasswordCallbackInfo info)
- throws PasswordCallback.GiveUpException {
- System.out.println("Password Incorrect.");
- if (mPrompt == null) {
- System.out.println("Get password " + info.getName());
- } else {
- System.out.println(getPrompt());
- }
-
- Password tmppw = PWUtil.readPasswordFromStream();
-
- return (tmppw);
- }
-}
-
-class PWsdrDialogPasswordCallback extends JDialogPasswordCallback {
- private String mPrompt = null;
-
- public PWsdrDialogPasswordCallback(String p) {
- super();
- mPrompt = p;
- }
-
- public String getPrompt(PasswordCallbackInfo info) {
- if (mPrompt == null) {
- return super.getPrompt(info);
- } else {
- return mPrompt;
- }
- }
-}