[dev] ActiveSync: got "ERR: Invalid address book" on Nokia Mail for exchange, but worked on WindowsMobile 6.1

Michael Rubinsky mrubinsk at horde.org
Wed May 26 00:31:34 UTC 2010


Quoting Lukas Gradl <horde at ssn.at>:

> On 2010-05-25 22:19, Michael Rubinsky wrote:
>>
>>>
>>> When using Nokia there is a PEAR_Error in Turba_Driver::&singleton():
>>>
>>> The Message is "Bind failed: (53) Server is unwilling to perform"
>>>
>>> It seems that the Password to connect to the LDAP-Server is not
>>> provided correctly.
>>>
>>> I defined the LDAP-Access in sources.php as following:
>>>
>>> 'bind_dn' => 'cn='.Horde_Auth::getAuth().',ou=Users,dc=demo,dc=com',
>>> 'bind_password' => Horde_Auth::getCredential('password'),
>>>
>>> the Horde_Auth::getAuth() is correct, the
>>> Horde_Auth::getCredential('password') is empty.
>>
>> Ok. That's a good piece of information. I have a feeling the
>> authorization header isn't being sent or parsed correctly.
>> Can you check to see the value of $pass in Horde_Rpc_ActiveSync
>> (framework/Rpc/lib/Horde/Rpc/ActiveSync.php) on line 178? This should
>> (obviously) be the user's horde password.
>>
>
> Yes, it contains the Users horde-Password.
>
> The problem seems to sit within the way I'm authenticating in sources.php.
>
> To use the Horde-Password as the password to authenticate against  
> LDAP I use the line:
> 'bind_password' => Horde_Auth::getCredential('password'),
> in my sources.php.
> When the sources.php get's included in Turba_Application::_init()  
> this variable is empty.

Weird, the same code path is followed when all devices sync, even if  
they issue a GETITEMESTIMATE request first, as that calls the same  
backend code. Not sure what the heck is going on here, but I'll keep  
thinking about it.

> Is there another way to provide the Password to LDAP?

Not that I know of. Horde_Auth::getCredential('password') should  
return the password that was set when the user authenticated. The  
password is stored in the session when Horde_Auth#authenticate is  
called, and is returned when Horde_Auth#getCredential is called. Not  
sure where to go from here. If you end up getting a wireshark trace,  
guess it's worth looking at.


-- 
Mike

--
The Horde Project (www.horde.org)
mrubinsk at horde.org

"Reality is merely an illusion, albeit a very persistent one." - A. Einstein



More information about the dev mailing list