[ 
https://issues.apache.org/jira/browse/HDFS-11767?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

James Clampffer updated HDFS-11767:
-----------------------------------
    Attachment: HDFS-11767.HDFS-8707.000.patch

Moves "SASL Start" into SaslProtocol::Authenticate and "SASL End" into 
SaslProtocol::AuthComplete.  Assert that SaslProtocol is never destroyed in the 
middle of negotiating.

> libhdfs++: SASL events should be scoped closer to usage
> -------------------------------------------------------
>
>                 Key: HDFS-11767
>                 URL: https://issues.apache.org/jira/browse/HDFS-11767
>             Project: Hadoop HDFS
>          Issue Type: Sub-task
>          Components: hdfs-client
>            Reporter: James Clampffer
>            Assignee: James Clampffer
>         Attachments: HDFS-11767.HDFS-8707.000.patch
>
>
> "SASL Start" and "SASL End" are called in the SaslProtocol constructor and 
> destructor.  SaslProtocol is held by a shared_ptr so there's a race where the 
> RpcConnection can be torn down and another can be put in it's place while a 
> callback is still holding the shared_ptr preventing "SASL End" from being 
> called.
> This can matter a lot because both Cyrus SASL and gsasl aren't thread safe 
> during negotiation.  These event hooks provide a mechanism to pick up a 
> process wide lock that guards access to the sasl library.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

---------------------------------------------------------------------
To unsubscribe, e-mail: hdfs-issues-unsubscr...@hadoop.apache.org
For additional commands, e-mail: hdfs-issues-h...@hadoop.apache.org

Reply via email to