phpass (the hashing library we use) adds a hash identifier to every
hash. By default this identifier is '$P$'. For some reason we have
changed it to '$H$'.
This patch allows both of them to be used for authentication, so that a
third party system could create users with '$P$' hashes.
PHPBB3-10101
Update $config['rand_seed_last_update'] before updating $config['rand_seed'] in
unique_id() to mitigate a race condition and unnecessary updates on heavily
busy boards.
PHPBB3-10100
To have a generic solution there is now a sql_buffer_nested_transaction()
which indicates that the given SQL driver requires buffering to run a
transaction while iterating over another result set.
PHPBB3-9685
* ticket/bantu/9970:
[ticket/9970] Rename validate_language() to validate_language_iso_name().
[ticket/9970] Do not allow switching to languages not installed on reg. page.
[ticket/9970] Check whether language pack is installed.
[ticket/9970] User language input is checked for existance
pg_last_error does not work if no connection was ever established.
Therefore we must keep track of connection errors in postgres
dbal ourselves.
PHPBB3-10057
Calling nonexistent functions with @ destroys the script with
no feedback as to the cause of the error. Check whether
interbase functions exist before calling them.
PHPBB3-10057
This will make it autoloadable in 3.1. This commit breaks 3.0
since no code includes the error collector. Such include code
will be in its own commit since it will need to be reverted in 3.1.
PHPBB3-10057
PHP manual does not say that negative array indices are allowed,
so it's best to assume they are not guaranteed to work the way
one would expect.
PHPBB3-10057
Addresses two issues:
1. When pgsql extension is missing, @pg_connect would silently
abort execution. Check for pg_connect existence before calling it,
same with pg_pconnect.
2. When connection fails, the error reported by php is discarded.
User is shown the failure message without the reason for failure,
making debugging difficult. Collect the error (if any) via a
temporarily installed error handler, and display it if connection
failed.
PHPBB3-10057
Implement the suggestion made by Adam in the ticket, this will add
an additional checkbox to the mass e-mail page. By checking this
the mass e-mail shall also be send to banned users. By default
banned users however are excluded from the mass e-mail.
PHPBB3-9581
When the first post of a topic was deleted, the topic time didn't
update - it should have changed to the time of the next post.
This commit simply applies lefty74's patch posted in the ticket. It gets
the post time of the next post from the database, and updates the thread
accordingly.
This patch is not my work at all and all credits go to lefty74, I just
transferred it onto GitHub
PHPBB3-7834
When in the ACP, there is the option to delete a user and all their
posts. This would then call the user_delete function and define $mode as
'remove'.
On lines 485-521 was some code that would delete their topics, then
after that there would be a call to delete_posts - which would also
delete their topics. It would not update the board statistics, and the
thread count would remain the same, even though several had been
deleted. It stopped delete_topics functioning correctly, so
delete_topics would not update the board statistics either.
My solution to this is to delete lines 485-521 and allow delete_posts
to call delete_topics, thus updating the thread count in the statistics.
PHPBB3-9872