6.0.0-alpha10
5/14/25

[#8143] SHA encryption incompatible with Toltec connector
Summary SHA encryption incompatible with Toltec connector
Queue Kolab
Type Bug
State Assigned
Priority 1. Low
Owners wrobel (at) horde (dot) org
Requester hopfgartner (at) marcher (dot) at
Created 04/02/2009 (5886 days ago)
Due
Updated 04/02/2009 (5886 days ago)
Assigned 04/02/2009 (5886 days ago)
Resolved
Milestone
Patch No

History
04/02/2009 09:24:23 AM hopfgartner (at) marcher (dot) at Comment #2 Reply to this comment
See the hardcode patch, I've made on it, to work.

I think, the better solution would be to use backends.php "param" value.



         // And finally change the password.

         //$new_details['userPassword'] = '{sha}' .

         //    base64_encode(pack('H*', sha1($new_password)));





         $new_details['userPassword'] = $new_password;


04/02/2009 08:55:21 AM Jan Schneider Assigned to Gunnar Wrobel
State ⇒ Assigned
 
04/02/2009 08:55:10 AM Jan Schneider Version ⇒
Queue ⇒ Kolab
 
04/02/2009 08:16:23 AM hopfgartner (at) marcher (dot) at Comment #1
Priority ⇒ 1. Low
Patch ⇒ No
Milestone ⇒
Queue ⇒ Passwd
Summary ⇒ SHA encryption incompatible with Toltec connector
Type ⇒ Bug
State ⇒ Unconfirmed
Reply to this comment
as defined in "passwd/lib/Driver/kolab.php",

SHA encryption is used for storing the user_password in LDAP.



Since we use Toltec and it uses PLAIN encryption, this is incompatible.





         // And finally change the password.

         $new_details['userPassword'] = '{sha}' .

             base64_encode(pack('H*', sha1($new_password)));



         if (!ldap_mod_replace($ds, $userdn, $new_details)) {

             return PEAR::raiseError(ldap_error($ds));

         }





In backends.php I've defined the following, but since encryption is 
hardcoded into the Kolab-Driver this won't work:



$backends['kolab'] = array(

     'name' => 'Local Kolab Server',

     'preferred' => '',

     'password policy' => array(

         'minLength' => 3,

         'maxLength' => 8

     ),

     'driver' => 'kolab',

     'params' => array(

             'encryption' => 'plain'

             )

);






Saved Queries