[
https://issues.apache.org/jira/browse/DIRSERVER-934?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12520941
]
Emmanuel Lecharny commented on DIRSERVER-934:
---------------------------------------------
While looking at the code, I realized that there is a potential breakage in the
way controls are handled : to transfer controls to the context, we are using a
static EMPTY_CONTROLS array, which is not protected against concurrent access.
During the Map -> Array transformation, there is a chance that the controls are
totally losts if two requests are handled in parallel.
As a result, I have created an abstract class called LdapHandler, inherited by
all the handler, containing a setControls( LdapContext, Message ) method, in
charge to load the controls into the context, if any. We will create a real
array from the Map without using a static member.
This method will be called in all handler, including Bind, except for
AbandonRequest (I'm not sure we need to handle controls in AbandonRequest, but
I may be wrong).
Thoughts ?
> Controls are not used into Bind request
> ---------------------------------------
>
> Key: DIRSERVER-934
> URL: https://issues.apache.org/jira/browse/DIRSERVER-934
> Project: Directory ApacheDS
> Issue Type: Bug
> Affects Versions: 1.0.1, 1.5.0
> Reporter: Emmanuel Lecharny
> Assignee: Emmanuel Lecharny
> Fix For: 1.5.1
>
>
> We don't inject controls into the server if we have one withing a BindRequest
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.