FAQ
Edit report at http://pear.php.net/bugs/bug.php?id=17107&edit=1

ID: 17107
Updated by: alec@alec.pl
Reported By: granada at a500 dot de
Summary: can't follow referral -> empty Variables
Status: Feedback
Type: Bug
Package: Net_Sieve
Operating System: Linux, Solaris 10
Package Version: 1.1.7
PHP Version: 5.2.1
Roadmap Versions:
New Comment:

I can confirm this issue. The important thing is that only class
constructor sets $_data variable. So, when you call constructor without
arguments and then use connect/login methods the $_data is not updated.
Attached patch fixes the issue.


Previous Comments:
------------------------------------------------------------------------

[2011-05-31 18:11:54] alec

Added #patch bug:17107;patch:Sieve_referral.patch;revision:1306865514;.

------------------------------------------------------------------------

[2010-07-07 11:26:51] yunosh

I emulated your referral example in code, just to be sure. I debugged
the code step by step, and this is what's happening in the case of a
referral response:
1. $this->_data['host'] is being updated with the new host name
2. _handleConnectAndLogin() is called
3. connect() with the new hostname, and login() with the user
credentials from $this->_data are called.
4. login() passes the user names and password to _cmdAuthenticate()

------------------------------------------------------------------------

[2010-07-07 02:08:57] smithmb

I'm not sure what to say... here's my log (note the empty hash "AAA="):

[06-Jul-2010 21:12:41 -0400]: S: "IMPLEMENTATION" "Cyrus timsieved
v2.2.12-Invoca-RPM-2.2.12-OSG3"
[06-Jul-2010 21:12:41 -0400]: S: "SASL" "PLAIN"
[06-Jul-2010 21:12:41 -0400]: S: "SIEVE" "fileinto reject envelope
vacation imapflags notify subaddress relational
comparator-i;ascii-numeric regex"
[06-Jul-2010 21:12:41 -0400]: S: OK
[06-Jul-2010 21:12:41 -0400]: C: CAPABILITY
[06-Jul-2010 21:12:41 -0400]: S: "IMPLEMENTATION" "Cyrus timsieved
v2.2.12-Invoca-RPM-2.2.12-OSG3"
[06-Jul-2010 21:12:41 -0400]: S: "SASL" "PLAIN"
[06-Jul-2010 21:12:41 -0400]: S: "SIEVE" "fileinto reject envelope
vacation imapflags notify subaddress relational
comparator-i;ascii-numeric regex"
[06-Jul-2010 21:12:41 -0400]: S: OK
[06-Jul-2010 21:12:41 -0400]: C: AUTHENTICATE "PLAIN" "<sanitized
hash>"
[06-Jul-2010 21:12:41 -0400]: S: OK
[06-Jul-2010 21:12:41 -0400]: C: LISTSCRIPTS
[06-Jul-2010 21:12:41 -0400]: S: BYE (REFERRAL
"sieve://not-a-proxy.example.com") "Try Remote."
[06-Jul-2010 21:12:41 -0400]: S: "IMPLEMENTATION" "Cyrus timsieved
v2.2.12-Gentoo"
[06-Jul-2010 21:12:41 -0400]: S: "SASL" "PLAIN"
[06-Jul-2010 21:12:41 -0400]: S: "SIEVE" "fileinto reject envelope
vacation imapflags notify subaddress relational
comparator-i;ascii-numeric regex"
[06-Jul-2010 21:12:41 -0400]: S: "STARTTLS"
[06-Jul-2010 21:12:41 -0400]: S: OK
[06-Jul-2010 21:12:41 -0400]: C: CAPABILITY
[06-Jul-2010 21:12:41 -0400]: S: "IMPLEMENTATION" "Cyrus timsieved
v2.2.12-Gentoo"
[06-Jul-2010 21:12:41 -0400]: S: "SASL" "PLAIN"
[06-Jul-2010 21:12:41 -0400]: S: "SIEVE" "fileinto reject envelope
vacation imapflags notify subaddress relational
comparator-i;ascii-numeric regex"
[06-Jul-2010 21:12:41 -0400]: S: "STARTTLS"
[06-Jul-2010 21:12:41 -0400]: S: OK
[06-Jul-2010 21:12:41 -0400]: C: STARTTLS
[06-Jul-2010 21:12:41 -0400]: S: OK "Begin TLS negotiation now"
[06-Jul-2010 21:12:41 -0400]: STARTTLS negotiation successful
[06-Jul-2010 21:12:41 -0400]: C: CAPABILITY
[06-Jul-2010 21:12:41 -0400]: S: "IMPLEMENTATION" "Cyrus timsieved
v2.2.12-Gentoo"
[06-Jul-2010 21:12:41 -0400]: S: "SASL" "PLAIN"
[06-Jul-2010 21:12:41 -0400]: S: "SIEVE" "fileinto reject envelope
vacation imapflags notify subaddress relational
comparator-i;ascii-numeric regex"
[06-Jul-2010 21:12:41 -0400]: S: OK
[06-Jul-2010 21:12:41 -0400]: C: AUTHENTICATE "PLAIN" "AAA="
[06-Jul-2010 21:12:41 -0400]: S: NO "Authentication Error"
[06-Jul-2010 21:12:41 -0400]: C: LOGOUT
[06-Jul-2010 21:12:41 -0400]: S: OK "Logout Complete"

Perhaps you can't reproduce because of a different referral syntax
you're testing against?

------------------------------------------------------------------------

[2010-07-01 11:09:52] yunosh

I can't reproduce this. If the server sends a referral, Net_Sieve is
doing a new connect and login with the same credentials.

------------------------------------------------------------------------

[2010-06-30 00:41:56] smithmb

I'm also seeing a similar issue with the latest Net::Sieve and Cyrus
timsieved v2.2.12 on Gentoo. After a referral, the credentials are all
empty, so the hash is "AAA==" which is obviously wrong. I understand the
port issue, but clearly $uid, $pwd, $euser must all be preserved on a
referral. Please let me know if I can provide further info and testing.

------------------------------------------------------------------------

The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at
http://pear.php.net/bugs/bug.php?id=17107

Search Discussions

Related Discussions

Discussion Navigation
viewthread | post
Discussion Overview
grouppear-bugs @
categoriesphp
postedMay 31, '11 at 5:14p
activeMay 31, '11 at 5:14p
posts1
users1
websitepear.php.net

1 user in discussion

Alec: 1 post

People

Translate

site design / logo © 2022 Grokbase