[java-identity-provider COMMIT] /trunk/idp-authn-impl/src/main/java/net/shibboleth/idp/authn/impl/X500SubjectCanonica...
noreply at shibboleth.net
noreply at shibboleth.net
Thu Nov 20 18:21:08 EST 2014
Author: scantor
Date: Thu Nov 20 18:21:08 2014
New Revision: 6976
URL: http://svn.shibboleth.net/view/java-identity-provider?rev=6976&view=rev
Log:
Update cryptacular RC, and port DN parsing code.
Modified:
trunk/idp-authn-impl/src/main/java/net/shibboleth/idp/authn/impl/X500SubjectCanonicalization.java
Modified: trunk/idp-authn-impl/src/main/java/net/shibboleth/idp/authn/impl/X500SubjectCanonicalization.java
URL: http://svn.shibboleth.net/view/java-identity-provider/trunk/idp-authn-impl/src/main/java/net/shibboleth/idp/authn/impl/X500SubjectCanonicalization.java?rev=6976&r1=6975&r2=6976&view=diff
==============================================================================
--- trunk/idp-authn-impl/src/main/java/net/shibboleth/idp/authn/impl/X500SubjectCanonicalization.java (original)
+++ trunk/idp-authn-impl/src/main/java/net/shibboleth/idp/authn/impl/X500SubjectCanonicalization.java Thu Nov 20 18:21:08 2014
@@ -19,7 +19,6 @@
import java.security.cert.X509Certificate;
import java.util.Collections;
-import java.util.Iterator;
import java.util.List;
import java.util.Set;
@@ -38,8 +37,9 @@
import net.shibboleth.utilities.java.support.primitive.StringSupport;
import org.cryptacular.x509.dn.Attribute;
-import org.cryptacular.x509.dn.Attributes;
import org.cryptacular.x509.dn.NameReader;
+import org.cryptacular.x509.dn.RDN;
+import org.cryptacular.x509.dn.RDNSequence;
import org.opensaml.profile.action.ActionSupport;
import org.opensaml.profile.context.ProfileRequestContext;
import org.opensaml.security.x509.X509Support;
@@ -172,7 +172,7 @@
log.debug("{} Searching for RDN to extract from DN: {}", getLogPrefix(), x500Principal.getName());
try {
- final Attributes dnAttrs = NameReader.readX500Principal(x500Principal);
+ final RDNSequence dnAttrs = NameReader.readX500Principal(x500Principal);
for (final String oid : objectIds) {
final String rdn = findRDN(dnAttrs, oid);
if (rdn != null) {
@@ -195,19 +195,19 @@
/**
* Find an RDN with the specified OID.
*
- * @param attributes the DN components
+ * @param sequence the DN components
* @param oid the OID to look for
*
* @return the first matching RDN value, or null
*/
- @Nullable protected String findRDN(@Nonnull final Attributes attributes, @Nonnull @NotEmpty final String oid) {
+ @Nullable protected String findRDN(@Nonnull final RDNSequence sequence, @Nonnull @NotEmpty final String oid) {
// We use backward() here because otherwise the library returns attributes in least to most-specific order.
- final Iterator<Attribute> i = attributes.backward();
- while (i.hasNext()) {
- final Attribute attr = i.next();
- if (attr.getType().getOid().equals(oid)) {
- return attr.getValue();
+ for (final RDN rdn : sequence.backward()) {
+ for (final Attribute attribute : rdn.getAttributes()) {
+ if (attribute.getType().getOid().equals(oid)) {
+ return attribute.getValue();
+ }
}
}
More information about the commits
mailing list