Commit graph

58 commits

Author SHA1 Message Date
Ivailo Monev
e482da9067 kded: rework phases logic to take any desktop session into account
much like XDG autostart except for KDED modules, requires adjustments to
modules that are automatically loaded in phase-1

in the future the logic may apply not only to modules during startup but
also when attempting to load a module in general

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-08-31 23:01:34 +03:00
Ivailo Monev
6d0274d417 generic: adjust to Katie changes
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-08-06 23:37:03 +03:00
Ivailo Monev
3fdb845769 kutils: multi-backend knetworkmanager implementation
essentially moving my code from the old networkstatus module, see the
following commits in the kde-workspace repo:
809b90a113bb559a94266464e03cba6f0ed197ae
c46a5297cc49bf4f19f81ee109833fb0abab9a99
3e01d82f44bf587251455368f7502e9e4e204176

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-07-08 21:10:54 +03:00
Ivailo Monev
ee0d50c901 generic: purge most manual tests
long overdue, have no use for them

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-07-03 07:03:28 +03:00
Ivailo Monev
c311f7032f kutils: new KPasswdStore::stores() method to get all current stores
to be used by the KCM

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-06-20 00:14:23 +03:00
Ivailo Monev
ed79c859b2 generic: merge KDELibs4ToolsTargets and KDELibs4LibraryTargets
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-06-17 23:57:38 +03:00
Ivailo Monev
5613e5483c generic: remove redundant build varibles
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-06-17 20:25:52 +03:00
Ivailo Monev
36c910c653 generic: move stuff from KDE4Internal module to KDELibs4Config
large-scale changes to the build system, nothing a user sees tho - it is
all under the hood

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-06-17 19:01:40 +03:00
Ivailo Monev
ff34ec1167 kutils: ensure there is interface in KPasswdStore::setCacheOnly()
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-06-15 19:41:34 +03:00
Ivailo Monev
81aed7d9ce kutils: fix regression since c38afd7556
oops

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-06-15 03:43:59 +03:00
Ivailo Monev
c38afd7556 kutils: replace KConfig with KSettings in KPasswdStoreImpl
KConfig uses internal lock for synchronization, KSettings does not and
since the password stores are giant-locked now it is faster to not lock in
the underlaying implementation

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-06-14 16:40:32 +03:00
Ivailo Monev
5b5f24078e kutils: giant-lock KPasswdStore
because multiple KIO slaves may use the same password store (e.g. sftp and
thumbnail)

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-06-14 03:03:31 +03:00
Ivailo Monev
78933232a2 generic: remove build variable used to specify library type
only shared builds are supported now

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-06-10 23:19:17 +03:00
Ivailo Monev
ea98009a53 kutils: build fix for the case when OPENSSL_VERSION_PREREQ() macro is not defined
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-01-01 06:08:43 +02:00
Ivailo Monev
d298d73a50 kutils: deprecation warning fix
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-01-01 04:57:07 +02:00
Ivailo Monev
e20d610997 kutils: load kpasswdstore module in phase 1
see the hack in kdirshare module

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-11-25 19:01:10 +02:00
Ivailo Monev
90928e8320 generic: store package found definitions in config header
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-30 05:41:21 +02:00
Ivailo Monev
decb354a0d generic: prepare for Katie changes
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-14 16:16:22 +03:00
Ivailo Monev
285b8f1490 kutils: create org.kde.kded interface on demand in KPasswdStore
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-04 02:42:56 +03:00
Ivailo Monev
7dc5187778 kdecore: replace most of KRandomSequence with new KRandom::randomMax() function
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-09-26 12:58:37 +03:00
Ivailo Monev
7026d992e9 kutils: switch password store cipher to AES-256 CBC
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-09-21 02:03:46 +03:00
Ivailo Monev
43e773758a kutils: build fix for the case when HAVE_OPENSSL is not defined
for reference:
https://github.com/fluxer/katana/issues/33

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-07-19 21:00:13 +03:00
Ivailo Monev
4a4c85431e kdecore: move K_EXPORT_PLUGIN() macro to kpluginfactory header [ci reset]
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-05-31 09:06:11 +03:00
Ivailo Monev
e4c7b66490 kdecore: move K_EXPORT_PLUGIN() macro to kpluginloader header
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-05-30 22:01:35 +03:00
Ivailo Monev
926345627a generic: bump minimum Katie version requirement to 4.12.0
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-05-22 03:54:07 +03:00
Ivailo Monev
400f5bfe01 kutils: KPasswdRouletteDialog clarification
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-05-12 20:33:31 +03:00
Ivailo Monev
aad42e8b56 kutils: not so generic KDED modules descriptions
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-05-12 01:15:06 +03:00
Ivailo Monev
56c272bba5 kutils: cache cipher block size and fix build without OpenSSL
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-05-02 16:31:30 +03:00
Ivailo Monev
7d47c9b699 kutils: implement password generator for KPasswdRouletteDialog
fortune favours the brave:
https://ibb.co/G04BWRR

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-04-28 15:18:20 +03:00
Ivailo Monev
31976a9582 kutils: mark KPasswdStore and KPasswdRouletteDialog as stable
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-04-10 03:27:21 +03:00
Ivailo Monev
9eb97d4d78 kutils: use OpenSSL functions to get cipher key and initialization vector length
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-04-09 16:53:15 +03:00
Ivailo Monev
07ad923cf2 kutils: implement config options for the cookie type, number of retries and timeout
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-04-09 16:02:48 +03:00
Ivailo Monev
cea6ac00f4 kutils: limit the store password length to the key length
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-04-09 13:36:33 +03:00
Ivailo Monev
58a511fa8f kutils: switch password store cipher to Blowfish CFB 2022-04-09 01:52:08 +03:00
Ivailo Monev
cc1d2b01e0 kutils: KPasswdStore documentation clarification
here is what a store looks like:
https://ibb.co/Pc5Ky9w

things are different for both KPasswdStore and KWallet from the perspective
of `dbus-monitor` tho

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-04-07 04:02:42 +03:00
Ivailo Monev
87a765a21b kutils: do not assume password contains latin only characters in base64 implementation
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-04-06 19:38:41 +03:00
Ivailo Monev
b8655d7296 kutils: somewhat automatic KPasswdStore test
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-04-06 19:04:48 +03:00
Ivailo Monev
92ddfed63a kutils: convert byte-generator method to static function
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-04-06 16:55:39 +03:00
Ivailo Monev
c3c8b942a8 kutils: link kpasswdstore library to kdeui library
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-04-06 16:05:37 +03:00
Ivailo Monev
c1b2744596 kutils: separate the glue from the actual password store implementation
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-04-06 15:39:18 +03:00
Ivailo Monev
a6dbc9fa93 kutils: reimplement password store as KDED module
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-04-06 06:42:21 +03:00
Ivailo Monev
fc6fa44f47 kutils: fix encryption and decryption of long passwords
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-04-06 03:43:19 +03:00
Ivailo Monev
2e3be50bfb kutils: do not attempt to encrypt empty passwords
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-04-06 02:40:06 +03:00
Ivailo Monev
0481bb3b61 kutils: optimize password store opening
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-04-05 21:11:45 +03:00
Ivailo Monev
e1701d2ec7 kutils: new KPasswdRouletteDialog class part of kpasswdstore library
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-04-05 20:34:15 +03:00
Ivailo Monev
ef663a874e kutils: add missing Q_OBJECT in KPasswdStore declaration
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-04-05 19:12:14 +03:00
Ivailo Monev
5ae08ac8a9 kutils: do not retry on storage open if dialogs are not accepted
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-04-05 18:10:50 +03:00
Ivailo Monev
08646e57ce kutils: use KPasswdStore::makeKey() for password hash
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-04-05 17:55:48 +03:00
Ivailo Monev
767b81e0c2 kutils: increase password inactivity time to 2 minutes
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-04-05 17:38:24 +03:00
Ivailo Monev
2bca331971 kutils: use KNewPasswordDialog to get initial store password
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-04-05 17:33:51 +03:00