From ca4c9068149dccf6b15b9259e5cc514bf386f480 Mon Sep 17 00:00:00 2001 From: Maxim Shulga Date: Sun, 2 Aug 2026 18:24:43 -0700 Subject: [PATCH] Name the stored strings instead of implying booleans The note explained a string comparison but wrote the values as if they were booleans, which is the exact confusion it exists to clear up. Both places now say which string was stored and which one the daemon accepts. --- IMPROVEMENTS.md | 10 ++++++---- README.md | 8 +++++--- 2 files changed, 11 insertions(+), 7 deletions(-) diff --git a/IMPROVEMENTS.md b/IMPROVEMENTS.md index 8e0a974..948e5de 100644 --- a/IMPROVEMENTS.md +++ b/IMPROVEMENTS.md @@ -96,11 +96,13 @@ Acceptance criteria: - [x] Reject negative and malformed numeric values with useful messages. - [x] Do not pass `None` as a Seafile configuration value. Booleans are also rendered as `true`/`false` rather than Python's `True`/`False`. This fixed - `DISABLE_VERIFY_CERTIFICATE`, which never worked: the daemon reads the key + `DISABLE_VERIFY_CERTIFICATE`, which never worked. The daemon reads the key with `seafile_session_config_get_bool`, which is - `g_strcmp0(value, "true") == 0`, so the stored `True` was false and - verification stayed on for anyone who asked to disable it. The default was - never affected, because anything other than `true` is false. + `g_strcmp0(value, "true") == 0`, so it accepts only the exact string + `"true"`. Python's `str(True)` stored the string `"True"`, which did not + match and was therefore read as false, leaving verification on for anyone + who asked to disable it. The default stored the string `"False"`, which is + also not `"true"` and so was correctly read as false. Acceptance criteria: diff --git a/README.md b/README.md index 98086e6..ae9d862 100644 --- a/README.md +++ b/README.md @@ -48,9 +48,11 @@ volumes: - `DISABLE_VERIFY_CERTIFICATE` - set to _true_ to disable server's certificate verification. Default value is _false_. Booleans accept _true_/_false_, _1_/_0_, _yes_/_no_ and _on_/_off_, in any case. Note that this setting had no - effect in released images up to and including 0.0.13: the value reached the - Seafile daemon capitalised, which it does not recognise, so verification - stayed on even when the variable was set. The default was never affected. + effect in released images up to and including 0.0.13: whatever you set the + variable to, the client stored the string `True`, and the Seafile daemon + accepts only the lowercase string `true`, so verification stayed on even when + the variable was set. The default was never affected, because the string + `False` is also not `true`. - `UPLOAD_LIMIT` / `DOWNLOAD_LIMIT` - upload/download speed limit in B/s (bytes per second). Default values are _0_ (unlimited).