| | |
| | | * Portions Copyright 2007 Sun Microsystems, Inc. |
| | | */ |
| | | package org.opends.server.extensions; |
| | | import org.opends.messages.Message; |
| | | |
| | | |
| | | |
| | |
| | | import org.opends.server.types.SearchScope; |
| | | |
| | | import static org.opends.server.loggers.debug.DebugLogger.*; |
| | | import static org.opends.server.messages.ExtensionsMessages.*; |
| | | import static org.opends.server.messages.MessageHandler.*; |
| | | import static org.opends.messages.ExtensionMessages.*; |
| | | |
| | | import static org.opends.server.util.StaticUtils.*; |
| | | |
| | | |
| | |
| | | DirectoryServer.getAttributeType(toLowerCase(attrName), false); |
| | | if (fingerprintAttributeType == null) |
| | | { |
| | | int msgID = MSGID_FCM_NO_SUCH_ATTR; |
| | | String message = getMessage(msgID, String.valueOf(configEntryDN), |
| | | attrName); |
| | | throw new ConfigException(msgID, message); |
| | | Message message = |
| | | ERR_FCM_NO_SUCH_ATTR.get(String.valueOf(configEntryDN), attrName); |
| | | throw new ConfigException(message); |
| | | } |
| | | |
| | | |
| | |
| | | // Make sure that a peer certificate was provided. |
| | | if ((certificateChain == null) || (certificateChain.length == 0)) |
| | | { |
| | | int msgID = MSGID_FCM_NO_PEER_CERTIFICATE; |
| | | String message = getMessage(msgID); |
| | | throw new DirectoryException(ResultCode.INVALID_CREDENTIALS, message, |
| | | msgID); |
| | | Message message = ERR_FCM_NO_PEER_CERTIFICATE.get(); |
| | | throw new DirectoryException(ResultCode.INVALID_CREDENTIALS, message); |
| | | } |
| | | |
| | | |
| | |
| | | TRACER.debugCaught(DebugLogLevel.ERROR, e); |
| | | } |
| | | |
| | | int msgID = MSGID_FCM_PEER_CERT_NOT_X509; |
| | | String message = |
| | | getMessage(msgID, String.valueOf(certificateChain[0].getType())); |
| | | throw new DirectoryException(ResultCode.INVALID_CREDENTIALS, message, |
| | | msgID); |
| | | Message message = ERR_FCM_PEER_CERT_NOT_X509.get( |
| | | String.valueOf(certificateChain[0].getType())); |
| | | throw new DirectoryException(ResultCode.INVALID_CREDENTIALS, message); |
| | | } |
| | | |
| | | |
| | |
| | | String peerSubject = peerCertificate.getSubjectX500Principal().getName( |
| | | X500Principal.RFC2253); |
| | | |
| | | int msgID = MSGID_FCM_CANNOT_CALCULATE_FINGERPRINT; |
| | | String message = getMessage(msgID, peerSubject, |
| | | getExceptionMessage(e)); |
| | | throw new DirectoryException(ResultCode.INVALID_CREDENTIALS, message, |
| | | msgID); |
| | | Message message = ERR_FCM_CANNOT_CALCULATE_FINGERPRINT.get( |
| | | peerSubject, getExceptionMessage(e)); |
| | | throw new DirectoryException(ResultCode.INVALID_CREDENTIALS, message); |
| | | } |
| | | |
| | | |
| | |
| | | } |
| | | else |
| | | { |
| | | int msgID = MSGID_FCM_MULTIPLE_MATCHING_ENTRIES; |
| | | String message = getMessage(msgID, fingerprintString, |
| | | String.valueOf(userEntry.getDN()), |
| | | String.valueOf(entry.getDN())); |
| | | throw new DirectoryException(ResultCode.INVALID_CREDENTIALS, message, |
| | | msgID); |
| | | Message message = ERR_FCM_MULTIPLE_MATCHING_ENTRIES. |
| | | get(fingerprintString, String.valueOf(userEntry.getDN()), |
| | | String.valueOf(entry.getDN())); |
| | | throw new DirectoryException(ResultCode.INVALID_CREDENTIALS, message); |
| | | } |
| | | } |
| | | } |
| | |
| | | */ |
| | | @Override() |
| | | public boolean isConfigurationAcceptable(CertificateMapperCfg configuration, |
| | | List<String> unacceptableReasons) |
| | | List<Message> unacceptableReasons) |
| | | { |
| | | FingerprintCertificateMapperCfg config = |
| | | (FingerprintCertificateMapperCfg) configuration; |
| | |
| | | */ |
| | | public boolean isConfigurationChangeAcceptable( |
| | | FingerprintCertificateMapperCfg configuration, |
| | | List<String> unacceptableReasons) |
| | | List<Message> unacceptableReasons) |
| | | { |
| | | boolean configAcceptable = true; |
| | | DN cfgEntryDN = configuration.dn(); |
| | |
| | | false); |
| | | if (newFingerprintType == null) |
| | | { |
| | | unacceptableReasons.add(getMessage(MSGID_FCM_NO_SUCH_ATTR, |
| | | String.valueOf(cfgEntryDN), |
| | | attrName)); |
| | | unacceptableReasons.add(ERR_FCM_NO_SUCH_ATTR.get( |
| | | String.valueOf(cfgEntryDN), |
| | | attrName)); |
| | | configAcceptable = false; |
| | | } |
| | | |
| | |
| | | { |
| | | ResultCode resultCode = ResultCode.SUCCESS; |
| | | boolean adminActionRequired = false; |
| | | ArrayList<String> messages = new ArrayList<String>(); |
| | | ArrayList<Message> messages = new ArrayList<Message>(); |
| | | |
| | | |
| | | // Make sure that the fingerprint attribute is defined in the server schema. |
| | |
| | | resultCode = ResultCode.NO_SUCH_ATTRIBUTE; |
| | | } |
| | | |
| | | messages.add(getMessage(MSGID_FCM_NO_SUCH_ATTR, |
| | | String.valueOf(configEntryDN), attrName)); |
| | | messages.add(ERR_FCM_NO_SUCH_ATTR.get( |
| | | String.valueOf(configEntryDN), attrName)); |
| | | } |
| | | |
| | | |