Skip to content

Releases: jovd83/LoxBerry-Plugin-myUplink

v1.1.1 — Security hardening and stability fixes

Choose a tag to compare

@jovd83 jovd83 released this 31 May 08:47

What changed

Fixed

  • OAuth CSRF protection — state nonce is now random per render; previously constant "loxberry".
  • Token ownership after daemon-as-root writesave_tokens() restores loxberry:loxberry ownership so the CGI keeps read access after the first token refresh (~1 h).
  • Daemon not stopped on upgrade/uninstall — lifecycle hooks now delegate to the daemon wrapper's stop command (PID-file-based) instead of a broken pkill pattern.
  • Non-atomic token write in CGIoauth_callback.cgi now uses write-to-tmp + atomic rename.
  • Poll interval not validated — values below 10 s are clamped to 60 s.
  • MQTT topic prefix not sanitised — wildcard/separator characters stripped on save.
  • Cache file permissionspoints_cache.json is chmod 0o644 so the CGI can always read it.
  • API error log spam — repeated device poll failures dampened (first + every 10th).

Removed

  • scripts/build_release.ps1 — produced broken ZIPs with Windows paths; use build_release.py instead.

Documentation

  • README: Screenshots section (8 annotated images covering full setup flow).
  • README: Compatible devices section listing all NIBE Group brands and representative models.

Installation

Download myuplink_v1.1.1.zip and install via LoxBerry → Plugin install → upload ZIP.

See CHANGELOG.md for the full history.