Skip to content

3.2.0.9

Latest

Choose a tag to compare

@nilsteampassnet nilsteampassnet released this 19 Jul 06:43
13a0df3

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 a TypeError on 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.
  • TypeError when applying the LDAP TLS certificate check setting (#5289) - the setting stores the constant name as a string (for example LDAP_OPT_X_TLS_NEVER) while ldap_set_option() requires the matching integer value, raising a TypeError on 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 to LDAP_OPT_X_TLS_HARD for 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_DATE is 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.

Download TeamPass