diff options
author | Patrick Ohly <patrick.ohly@intel.com> | 2012-05-29 18:14:13 +0200 |
---|---|---|
committer | Patrick Ohly <patrick.ohly@intel.com> | 2012-05-30 09:09:00 +0200 |
commit | 8da86205df7f993a83fd38fb76681fa6b789c297 (patch) | |
tree | a1f8ca36e3e00457780a0b3c8d2113ebed8affb7 /README.rst | |
parent | d2fd4806c84d119d6dfb280b1847db661e40c661 (diff) |
password handling: fixed KWallet support, global configuration option
KWallet support was broken: syncevo-dbus-server checked
KDE_FULL_SESSION to determine whether it should use KWallet instead of
GNOME Keyring. That did not work, because the env variable was not set
for D-Bus daemons.
Automatically detecting KDE users is not possible at the
moment. Instead KDE users have to manually set the new "keyring"
global config property to "KDE" (case insensitive) if the
SyncEvolution installation supports both, because GNOME Keyring is the
default to avoid surprises for traditional users. If only KWallet
support is enabled, then this is not necessary.
"GNOME" and "true/false/1/0/yes/no" can also be set. This has the
advantage that keyring usage can be enabled permanently for the
command line in --daemon=no mode; normally keyrings are not used in
that mode because accessing them can bring up UI dialogs.
It also becomes possible to disable keyring usage in syncevo-dbus-server,
something which couldn't be done before.
The --keyring command line option is still supported, as an alias for
"[--sync-property] keyring=<value>". The default value for --keyring
is true, to match the traditional behavior. In contrast to other sync
properties, setting "keyring" does not require an explicit --run
parameter. Again this is done to mirror traditional usage.
Reading a password also (unintentionally) checked all supported
storages while searching for the password. Now it uses exactly
one storage and falls back to asking for the password directly.
The commit itself also cleans up the code a bit (reformatted, fixed
comments). Choosing the right slot in the password signals is done via
a new InitStateTri parameter which contains the "keyring" setting.
Error checking (unsupported keyring string, --keyring=yes and no
keyring enabled) is done in additional slots which run after all the
regular ones.
Parameter parsing for --sync and --keyring were unified. However,
there is the difference that --keyring has an implicit default value
("yes") and never has an additional parameter, in contrast to --sync,
which always is followed by one.
The new CmdlineTest::testKeyring covers different ways of using
--keyring. It relies on actually invoking keyring backends, something
not done by the default SyncContext UI. Therefore
CmdlineSyncClient+KeyringSyncCmdline were moved into libsyncevolution,
to be used by CmdlineTest.
Diffstat (limited to 'README.rst')
-rw-r--r-- | README.rst | 23 |
1 files changed, 4 insertions, 19 deletions
@@ -629,25 +629,10 @@ a list of valid values. Suppresses most of the normal output during a synchronization. The log file still contains all the information. ---keyring|-k - Save or retrieve passwords from the GNOME keyring when modifying the - configuration or running a synchronization. Note that using this option - applies to *all* passwords in a configuration, so setting a single - password as follows moves the other passwords into the keyring, if - they were not stored there already:: - - --keyring --configure --sync-property proxyPassword=foo - - When passwords were stored in the keyring, their value is set to a single - hyphen ("-") in the configuration. This means that when running a - synchronization without the --keyring argument, the password has to be - entered interactively. The --print-config output always shows "-" instead - of retrieving the password from the keyring. - - The SyncEvolution daemon always uses the GNOME keyring, regardless of - the --keyring command line parameter. Therefore --keyring only has an - effect in combination with --daemon=no, or when SyncEvolution was compiled - without daemon support (not the default). +--keyring[=<value>]|-k + A legacy option, now the same as setting the global keyring sync property. + When not specifying a value explicitly, "true" for "use some kind of + keyring" is implied. See "--sync-property keyring" for details. --daemon[=yes/no] By default, the SyncEvolution command line is executed inside the |