MySQL 5.7 was the last MySQL version to support the ENCRYPT() function. We currently call this function in two places:
|
SET `crypt` = COALESCE(ENCRYPT(`clear`, CONCAT(@NEW_PW_PREFIX, MD5(RAND()))), `crypt`) |
|
WHERE `crypt` = ENCRYPT(`clear`, `crypt`) AND @NEW_PW_PREFIX IS NOT NULL; |
|
INSERT INTO `users` VALUES (1,1,'siteadmin','siteadmin',ENCRYPT(@SITE_ADMIN_PW,CONCAT(@PW_PREFIX,CONVERT(MD5(RAND()) USING utf8))),65535,65535,'','','site',1,0,0,0,0,0,0,0,1,NULL,NULL,0,0,0,'SiteAdmin',0,0,NULL,NULL); |
The former is an old migration script. I hope nobody uses pre-2.3 VExim anymore, but if they do, well, I guess it's fair to ask that they run that migration script using MySQL 5.7. A note of caution in the migration script wouldn't hurt though.
Meanwhile the latter is our setup script, and it sucks that it fails. I guess the best way to fix it is to fall back to a predefined password again.
MySQL 5.7 was the last MySQL version to support the
ENCRYPT()function. We currently call this function in two places:vexim2/setup/migrations/vexim_2.2_to_2.3_mysql.sql
Lines 40 to 41 in 664b08d
vexim2/setup/mysql.sql
Line 218 in 664b08d
The former is an old migration script. I hope nobody uses pre-2.3 VExim anymore, but if they do, well, I guess it's fair to ask that they run that migration script using MySQL 5.7. A note of caution in the migration script wouldn't hurt though.
Meanwhile the latter is our setup script, and it sucks that it fails. I guess the best way to fix it is to fall back to a predefined password again.