daloRADIUS User Portal Password Change – fix
The problem in question is only reproducible for Crypt type password when saving user’s password attributes to the database. The background for is that when daloRADIUS saves user’s password in the database with Cleartext-Password attribute then obviously there is no issue as the password is indeed cleartext.
With Crypt type passwords though the problem lies in the fact that daloRADIUS saves encrypted passwords to the database based on MySQL’s own ENCRYPT() function and it does not care to pass a salt. Due to this, when users login to the daloRADIUS Users Portal and wish to change their authentication password it fails because it isn’t possible to re-encrypt their old/current password and match it against the database (because the salt provided to ENCRYPT() is now different).
The fix that has been provided is to provide a constant salt when calling ENCRYPT() so this will work for newly created accounts or for those which have been edited by a daloRADIUS administrator account and only following that users will be able to update their own passwords when daloRADIUS is configured to work with Crypt passwords.