'wbb2', // WoltLab Burning Board 2.x
'wcf1', // WoltLab Community Framework 1.x
'wcf2', // WoltLab Community Framework 2.x
- 'xf1', // XenForo 1.x
+ 'xf1', // XenForo 1.0 / 1.1
+ 'xf12', // XenForo 1.2+
'joomla1', // Joomla 1.x
'joomla2', // Joomla 2.x
'joomla3', // Joomla 3.x
}
/**
- * Validates the password hash for XenForo 1.x with (xf1).
+ * Validates the password hash for XenForo 1.0 / 1.1 (xf1).
*
* @param string $username
* @param string $password
return false;
}
+ /**
+ * Validates the password hash for XenForo 1.2+ (xf12).
+ *
+ * @param string $username
+ * @param string $password
+ * @param string $salt
+ * @param string $dbHash
+ * @return boolean
+ */
+ protected static function xf12($username, $password, $salt, $dbHash) {
+ if (self::secureCompare($dbHash, self::getSaltedHash($password, $dbHash))) {
+ return true;
+ }
+
+ return false;
+ }
+
/**
* Validates the password hash for Joomla 1.x (kunea)
*