Database connection problems are always a pain to debug because of the serialization of connection parameters.
Utils::nonDestructiveEncryption() is used with a key derived from the name of the app, it is not real encryption but easy to reverse obfuscation.
There is no need to obfuscate host, database name etc.
Users who want to store their username and password do it at their own peril and should encrypt their home folder.
(disaster resistant) Workflow:
Detect old setting "Network/Db" inside config-net.ini if exist AND new settings don't exist
Create new settings Network/Database /hostname /password /login etc
sync
Check that new settings are equal to old settings
delete old setting "Network/Db"
Database/
user
password
hostname
port
driver
prefix
path
ssl/key
ssl/cert
ssl/ca
ssl/capath
ssl/cipher
Database connection problems are always a pain to debug because of the serialization of connection parameters. Utils::nonDestructiveEncryption() is used with a key derived from the name of the app, it is not real encryption but easy to reverse obfuscation. There is no need to obfuscate host, database name etc. Users who want to store their username and password do it at their own peril and should encrypt their home folder.
(disaster resistant) Workflow:
Detect old setting "Network/Db" inside config-net.ini if exist AND new settings don't exist Create new settings Network/Database /hostname /password /login etc sync Check that new settings are equal to old settings delete old setting "Network/Db"
Database/ user password hostname port driver prefix path ssl/key ssl/cert ssl/ca ssl/capath ssl/cipher