From 829831b834486aeb3a6b2c4994f6e2d0d9dea7f5 Mon Sep 17 00:00:00 2001
From: dugan <dugan@localhost>
Date: Fri, 01 Jun 2007 21:40:39 +0000
Subject: [PATCH] Fix using operational attributes in userattr bind rule keyword. Issue 1760.

---
 opendj-sdk/opends/src/server/org/opends/server/authorization/dseecompat/UserAttr.java |    6 +++---
 1 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/opendj-sdk/opends/src/server/org/opends/server/authorization/dseecompat/UserAttr.java b/opendj-sdk/opends/src/server/org/opends/server/authorization/dseecompat/UserAttr.java
index 2e910a1..6681836 100644
--- a/opendj-sdk/opends/src/server/org/opends/server/authorization/dseecompat/UserAttr.java
+++ b/opendj-sdk/opends/src/server/org/opends/server/authorization/dseecompat/UserAttr.java
@@ -342,21 +342,21 @@
                         getDNParentLevel(levels[i], evalCtx.getResourceDN());
                 if(pDN == null)
                     continue;
+                LinkedHashSet<String> reqAttrs = new LinkedHashSet<String>(1);
+                reqAttrs.add(parentInheritance.getAttrTypeStr());
                 InternalClientConnection conn =
                         InternalClientConnection.getRootConnection();
                 InternalSearchOperation op = conn.processSearch(pDN,
                         SearchScope.BASE_OBJECT,
                         DereferencePolicy.NEVER_DEREF_ALIASES, 0, 0, false,
-                        filter, null);
+                        filter, reqAttrs);
                 LinkedList<SearchResultEntry> result =
                         op.getSearchEntries();
                 if (!result.isEmpty()) {
                     Entry e = result.getFirst();
-                    if (e.hasAttribute(attrType)) {
                         matched = evalEntryAttr(e, evalCtx, attrType);
                         if(matched.equals(EnumEvalResult.TRUE))
                             stop=true;
-                    }
                 }
             }
         }

--
Gitblit v1.10.0