What's Changed
This is a bug fix release. It addresses two unrelated issues reported in #5289 and contains no database schema change, so upgrading from 3.2.0.8 requires no upgrade procedure.
🐛 Bug fixes
- Background tasks failing with exit code 255 on Windows (#5289) - the task payload was passed to the worker as a shell argument. On Windows,
escapeshellarg()replaces every",%and!with a space, which destroyed the JSON payload and left every task running with an empty argument set, failing with aTypeErroron the first missing argument. Only the inactive-users housekeeping task, which reads no arguments, was unaffected. The worker now reads its payload from the database using its task id, which also removes the ~8191-character Windows command-line limit and keeps encrypted credentials out of the process list. An undecodable payload now fails with an explicit log entry instead of silently degrading. Linux installations were not affected. TypeErrorwhen applying the LDAP TLS certificate check setting (#5289) - the setting stores the constant name as a string (for exampleLDAP_OPT_X_TLS_NEVER) whileldap_set_option()requires the matching integer value, raising aTypeErroron PHP 8 when listing LDAP user statuses. A shared conversion helper now maps the stored name to its integer value on every call site, falling back toLDAP_OPT_X_TLS_HARDfor unknown or legacy values.- LDAP TLS setting silently ignored on the login path - the connection class used at login read a misspelled setting key (
ldap_tls_certiface_check) that is never written anywhere, so the lookup always failed and fell back to a hard-coded value. This is why LDAP login kept working while the user-status lookup crashed, but it also meant the configured TLS option had no effect at login. Fixed together with the above, since correcting the key alone would have broken LDAP login.
⬆️ Upgrade notes
- No database change in this release.
UPGRADE_MIN_DATEis intentionally left at its 3.2.0.8 value so that upgrading users are not sent through the upgrade process.
Full Changelog
Full Changelog: 3.2.0.8...3.2.0.9
Important
- Requires at least
PHP 8.2
Languages
Please join Teampass v3 translation project on Poeditor and translate it for your language.
Installation
Follow instructions from Documentation.
Upgrade
Follow instructions from Documentation.
Ideas and comments
Are welcome ... please use Discussions.