Semyon, please consider opening a jira, both wrt documenting the current behavior, and perhaps a second if you think the behavior should be changed.
Regards, Patrick On Mon, Jun 20, 2011 at 4:33 AM, Camille Fournier <[email protected]> wrote: > It is not easy and obvious, no. You won't be told if auth succeeded, > the best you can do is immediately call a simple synchronous method > and ensure it doesn't raise authfailed. > > C > > On Monday, June 20, 2011, <[email protected]> wrote: >> Hi guys, >> >> Thank you for your response. >> >> I read the zk's source code of Friday and found out that in case of failed >> authentication the KeeperState is changed to KeeperState.AuthFailed but in >> case of successful one nothing happens - neither any triggers are called nor >> status is changed. KeeperState remains the same as before the call of >> authentication. So, it is not obvious if the authentication is completed and >> not or if it was called or not at all. >> >> In the ClientCnxn.SendThread class, method readResponse(), line 766: >> >> .... >> if (replyHdr.getXid() == -4) { >> // -4 is the xid for AuthPacket >> if(replyHdr.getErr() == >> KeeperException.Code.AUTHFAILED.intValue()) { >> zooKeeper.state = States.AUTH_FAILED; >> eventThread.queueEvent( new >> WatchedEvent(Watcher.Event.EventType.None, >> Watcher.Event.KeeperState.AuthFailed, null) ); >> } >> if (LOG.isDebugEnabled()) { >> LOG.debug("Got auth sessionid:0x" >> + Long.toHexString(sessionId)); >> } >> return; >> } >> .... >> >> If it is successful - nothing is called. >> Is it supposed how it should behave? If it is then I have to catch the >> exception, process it (if it is actually authentication exception) and >> re-try my call (e.g. create znode) until it is successful. Not easy and >> obvious, isn't it? >> >> Regards, >> Semyon >> >> >> -----Original Message----- >> From: Patrick Hunt [mailto:[email protected]] >> Sent: Friday, June 17, 2011 7:35 PM >> To: [email protected] >> Subject: Re: How to check if the zookeeper client is authenticated? >> >> In general i'm pretty happy with our docs, however Auth docs are an area >> where we could use some help.... ;-) Would be great if someone wanted to >> work on this. >> >> On Fri, Jun 17, 2011 at 11:28 AM, Mahadev Konar <[email protected]> wrote: >>> Hey Semyon, >>> You will get an event in your watcher : >>> >>> KeeperState.AuthFailed >>> >>> in case that happens. >>> >>> I think this probably needs more documentation since its not obvious. >>> Semyon, mind creating a jira and if possible upload a patch for it? >>> >>> thanks >>> mahadev >>> >>> On Fri, Jun 17, 2011 at 3:23 AM, <[email protected]> wrote: >>>> >>>> Hello >>>> >>>> I am using default "digest" AuthenticationProvider. How can I >>>> understand that the client is authenticated and is ready to create the >>>> nodes? >>>> >>>> Thanks >>>> >>>> Visit our website at http://www.ubs.com >>>> >>>> This message contains confidential information and is intended only >>>> for the individual named. If you are not the named addressee you >>>> should not disseminate, distribute or copy this e-mail. Please notify >>>> the sender immediately by e-mail if you have received this e-mail by >>>> mistake and delete this e-mail from your system. >>>> >>>> E-mails are not encrypted and cannot be guaranteed to be secure or >>>> error-free as information could be intercepted, corrupted, lost, >>>> destroyed, arrive late or incomplete, or contain viruses. The sender >>>> therefore does not accept liability for any errors or omissions in >>>> the contents of this message which arise as a result of e-mail >>>> transmission. >>>> If verification is required please request a hard-copy version. This >>>> message is provided for informational purposes and should not be >>>> construed as a solicitation or offer to buy or sell any securities or >>>> related financial instruments. >>>> >>>> UBS Limited is a company limited by shares incorporated in the United >>>> Kingdom registered in England and Wales with number 2035362. >>>> Registered office: 1 Finsbury Avenue, London EC2M 2PP. UBS Limited >>>> is authorised and regulated by the Financial Services Authority. >>>> >>>> UBS AG is a public company incorporated with limited liability in >>>> Switzerland domiciled in the Canton of Basel-City and the Canton of >>>> Zurich respectively registered at the Commercial Registry offices in >>>> those Cantons with Identification No: CH-270.3.004.646-4 and having >>>> respective head offices at Aeschenvorstadt 1, 4051 Basel and >>>> Bahnhofstrasse 45, 8001 Zurich, Switzerland. Registered in the >>>> United Kingdom as a foreign company with No: FC021146 and having a UK >>>> Establishment registered at Companies House, Cardiff, with No: >>>> BR 004507. The principal office of UK Establishment: 1 Finsbury >>>> Avenue, London EC2M 2PP. In the United Kingdom, UBS AG is authorised >>>> and regulated by the Financial Services Authority. >>>> >>>> UBS reserves the right to retain all messages. Messages are protected >>>> and accessed only in legally justified cases. >>>> >>> >>> >>> >>> -- >>> thanks >>> mahadev >>> @mahadevkonar >>> >> Visit our website at http://www.ubs.com >> >> This message contains confidential information and is intended only >> for the individual named. If you are not the named addressee you >> should not disseminate, distribute or copy this e-mail. Please >> notify the sender immediately by e-mail if you have received this >> e-mail by mistake and delete this e-mail from your system. >> >> E-mails are not encrypted and cannot be guaranteed to be secure or >> error-free as information could be intercepted, corrupted, lost, >> destroyed, arrive late or incomplete, or contain viruses. The sender >> therefore does not accept liability for a >
