Commit Graph

227 Commits

Author SHA1 Message Date
Caio Jordão Carvalho 35dabdeb1c Including Caio's middle name in aboutData 2019-09-17 23:59:06 +00:00
l10n daemon script 60bba03afa SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2019-08-07 05:01:03 +02:00
l10n daemon script a97162fb04 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2019-07-12 05:13:22 +02:00
Shubham Jangra d1a82f65d4 Revert "Remove redundant includes and refactor"
This reverts commit 4229b02fd2.
2019-06-12 22:11:11 +05:30
Shubham Jangra 4229b02fd2 Remove redundant includes and refactor 2019-06-10 23:07:06 +05:30
Shubham Jangra 2627d476f4 Create a timer to wait for system to free resources
Reviewers: stikonas

Reviewed By: stikonas

Differential Revision: https://phabricator.kde.org/D21696
2019-06-09 22:41:13 +05:30
Shubham Jangra ef20244be5 Add support for Minix(Mini Unix) Filesystem
Reviewers: stikonas, cjlcarvalho

Reviewed By: stikonas

Subscribers: cjlcarvalho, #kde_partition_manager

Tags: #kde_partition_manager

Differential Revision: https://phabricator.kde.org/D21652
2019-06-09 00:01:30 +05:30
Shubham Jangra 6f7cea6b27 Quit application if bus is not connected, interface not registered
Reviewers: stikonas, cjlcarvalho

Reviewed By: stikonas

Subscribers: #kde_partition_manager

Tags: #kde_partition_manager

Differential Revision: https://phabricator.kde.org/D21616
2019-06-08 15:43:24 +05:30
Andrius Štikonas ba48851d34 Merge branch '4.0' 2019-06-07 19:12:07 +01:00
Harald Sitter 9b45e25f81 manually quit kauth's mainloop
Summary:
kauth helpers have a qcoreapplication started which auto-terminates after
10 seconds of idle time. this would be an added time out on top of our
life time management that is not necessary. to prevent this additional
delay simply quit the qapplication directly.

this makes helper termination almost instantaneous even when the dbus
client disappears due to crash or SIGINT, and largely removes the
need to call stopHelper altogether.

BUG: 408245

Test Plan:
both partitionmanager and calamares instantly quit the helper no matter how the client process gets terminated

other than that everything seems to work as before

Reviewers: stikonas

Differential Revision: https://phabricator.kde.org/D21559
2019-06-05 18:34:35 +01:00
Harald Sitter 5413150c67 manually quit kauth's mainloop
Summary:
kauth helpers have a qcoreapplication started which auto-terminates after
10 seconds of idle time. this would be an added time out on top of our
life time management that is not necessary. to prevent this additional
delay simply quit the qapplication directly.

this makes helper termination almost instantaneous even when the dbus
client disappears due to crash or SIGINT, and largely removes the
need to call stopHelper altogether.

BUG: 408245

Test Plan:
both partitionmanager and calamares instantly quit the helper no matter how the client process gets terminated

other than that everything seems to work as before

Reviewers: stikonas

Differential Revision: https://phabricator.kde.org/D21559
2019-06-03 15:08:10 +02:00
Shubham Jangra f481109417 Do not move further if system bus is not connected
Reviewers: stikonas, cjlcarvalho

Reviewed By: stikonas

Differential Revision: https://phabricator.kde.org/D21506
2019-05-30 23:27:50 +05:30
Shubham Jangra 68cf1efd6b Notify user when they enter non whitelisted command
Reviewers: stikonas, cjlcarvalho

Reviewed By: stikonas

Subscribers: #kde_partition_manager

Tags: #kde_partition_manager

Differential Revision: https://phabricator.kde.org/D21504
2019-05-30 23:27:04 +05:30
Shubham Jangra 3184cbcee3 Remove extra semicolon 2019-05-30 22:47:17 +05:30
Shubham Jangra a7532d4041 Scrap Public Key Cryptography code based on QCA as QDbus is secure enough
Summary: QDbus already provides enough security to the calls made by the application to the helper. Hence no need to encrypt, sign the requests of the application and verify their integrity at the helper side.

Reviewers: stikonas, cjlcarvalho

Reviewed By: stikonas

Subscribers: #kde_partition_manager

Tags: #kde_partition_manager

Differential Revision: https://phabricator.kde.org/D21275
2019-05-19 22:53:13 +05:30
Shubham Jangra 07b2ce3054 Remove superflous variables
Reviewers: stikonas

Reviewed By: stikonas

Subscribers: #kde_partition_manager

Tags: #kde_partition_manager

Differential Revision: https://phabricator.kde.org/D21272
2019-05-18 18:54:20 +05:30
Shubham Jangra 73a21e6739 Simplify test conditions
Reviewers: stikonas, cjlcarvalho

Reviewed By: stikonas

Subscribers: #kde_partition_manager

Tags: #kde_partition_manager

Differential Revision: https://phabricator.kde.org/D21241
2019-05-17 23:03:15 +05:30
Shubham Jangra 997f425030 Remove redundant include
Reviewers: stikonas, cjlcarvalho

Reviewed By: stikonas

Subscribers: #kde_partition_manager

Tags: #kde_partition_manager

Differential Revision: https://phabricator.kde.org/D21251
2019-05-17 23:00:58 +05:30
Antonio Rojas 8238c94447 Don't hardcode dbus policy install dir
Install the policy files to the cmake provided locations instead of hardcoding the path to /etc/dbus-1

Differential Revision: https://phabricator.kde.org/D21162
2019-05-12 22:32:58 +02:00
Andrius Štikonas e1c2ed7567
Update copyright year in about dialog. 2019-05-01 00:36:56 +01:00
Shubham Jangra 5e4efa89ec Fix typo and constantify arguments
Reviewers: stikonas, cjlcarvalho, #kde_partition_manager

Reviewed By: cjlcarvalho

Subscribers: #kde_partition_manager

Tags: #kde_partition_manager

Differential Revision: https://phabricator.kde.org/D20269
2019-04-05 11:45:08 -06:00
Shubham Jangra 281289dfbb Constantify nonce and some cleanup
Reviewers: stikonas, #kde_partition_manager, cjlcarvalho

Reviewed By: stikonas, #kde_partition_manager, cjlcarvalho

Subscribers: varunp, tctara, teo, abhijeet2096, caiovosilva, cjlcarvalho, #kde_partition_manager

Tags: #kde_partition_manager

Differential Revision: https://phabricator.kde.org/D20108
2019-03-29 12:00:13 -06:00
Shubham Jangra 4986b514b5 Fix typo
Reviewers: stikonas, cjlcarvalho, #kde_partition_manager

Reviewed By: cjlcarvalho, #kde_partition_manager

Subscribers: #kde_partition_manager

Tags: #kde_partition_manager

Differential Revision: https://phabricator.kde.org/D20110
2019-03-29 11:55:10 -06:00
Shubham Jangra 9c5b582ed0 Constantify function parameters
Summary: Even though constantifying these parameters won't change anything(since they are being passed by value), it is done to assure they conform to rest of the coding style

Reviewers: stikonas, cjlcarvalho, #kde_partition_manager

Reviewed By: cjlcarvalho

Subscribers: #kde_partition_manager

Tags: #kde_partition_manager

Differential Revision: https://phabricator.kde.org/D20106
2019-03-29 11:52:55 -06:00
Shubham Jangra c78b35eb41 Do not use C data type
Summary: unsigned long long is a "C" data type

Reviewers: stikonas, cjlcarvalho

Reviewed By: cjlcarvalho

Subscribers: #kde_partition_manager

Tags: #kde_partition_manager

Differential Revision: https://phabricator.kde.org/D20076
2019-03-27 10:15:10 -06:00
l10n daemon script e8d6f7bab6 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2019-03-05 05:54:54 +01:00
l10n daemon script 7b93571787 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2019-02-24 05:28:36 +01:00
Albert Astals Cid 90a6563291 Use KF5::AuthCore instead of KF5::Auth
It's a much smaller library and provides everything we need
2019-02-16 00:25:37 +01:00
Andrius Štikonas 39a5645c38 Explicitely specify underlying type for Capacity enums. 2019-02-10 01:43:05 +00:00
Andrius Štikonas 723b05107d
Use strongly typed enum for Capacity:Unit. 2019-02-10 00:49:36 +00:00
Andrius Štikonas bfa6a327af
Also print command input if KPMCORE_DEBUG is set. 2019-02-09 13:39:33 +00:00
l10n daemon script c8e401bc07 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2019-01-30 05:38:23 +01:00
Andrius Štikonas 9fa20fb1e2 Remove "mv" command from allowed external command list 2019-01-12 23:18:01 +00:00
l10n daemon script 734ae36705 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2019-01-02 05:38:52 +01:00
l10n daemon script 8d980b56ed SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-12-19 05:44:22 +01:00
Andrius Štikonas 80f5a32dc0 Remove remaining cases of call to dd binary.
BUG: 398154
2018-11-29 22:32:07 +00:00
Andrius Štikonas 09e4d47e07 Do not use external process dd.
BUG: 398154
2018-11-25 20:50:22 +00:00
l10n daemon script b22be9ad9a SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-11-21 05:40:59 +01:00
l10n daemon script 53d84f3d34 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-11-14 06:03:26 +01:00
Andrius Štikonas 4f3a9db348 Print commands that are being run if KPMCORE_DEBUG is set 2018-11-12 00:22:24 +00:00
Andrius Štikonas 2007f2b8ea Allow copyblocks to be used together with small QByteArrays.
Add CopyTargetByteArray. CopySourceByteArray is not implemented yet.

This is only suitable for reading small amount of data such as GPT header
or FAT boot sector location. Not meant for copying whole partition because
data has to be transfered over DBus.

Differential Revision: https://phabricator.kde.org/D16487
2018-10-29 00:02:12 +00:00
l10n daemon script 3c52bcf9ab SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-10-21 05:48:52 +02:00
l10n daemon script 9fa2d194ae SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-10-15 05:37:46 +02:00
l10n daemon script 5dc4986bc9 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-10-10 06:21:45 +02:00
l10n daemon script 911d43be57 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-10-07 06:01:12 +02:00
Caio Carvalho 7853424a62 Use std::find instead of iterating to search in allowedCommands. 2018-08-24 12:14:49 -03:00
l10n daemon script f8cdf99606 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-08-24 05:42:47 +02:00
Simon Depiets e74fcb29e4 Fix parameters and markers in xi18n call
Reviewers: #kde_partition_manager

Subscribers: stikonas

Tags: #kde_partition_manager

Differential Revision: https://phabricator.kde.org/D14968
2018-08-21 17:18:02 +08:00
l10n daemon script cbaf62427f SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-08-18 05:42:22 +02:00
Caio Carvalho 84c742404d Check if command string is empty in ExternalCommand::start 2018-08-16 23:42:43 +02:00
Caio Carvalho 6c703e122a Checking if the command is not an empty string. 2018-08-16 23:42:21 +02:00
l10n daemon script e743156888 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-08-16 05:29:54 +02:00
Andrius Štikonas eb099bd477 Add command whitelist to kpmcore kauth helper. 2018-08-11 20:32:02 +01:00
Andrius Štikonas 449dc1f517 Revert "Do not link to externalcommand.h in kpmcore_externalcommand"
This reverts commit 29dcd08e70.
2018-08-08 13:35:30 +00:00
l10n daemon script c23fbc0c24 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-08-08 05:44:25 +02:00
l10n daemon script b0663ba1b5 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-08-07 05:44:32 +02:00
Andrius Štikonas 29dcd08e70 Do not link to externalcommand.h in kpmcore_externalcommand 2018-08-06 20:47:53 +01:00
Harald Sitter 87dc44dab8 use QDBusServiceWatcher instead of pinging the client
Summary:
the motivation here is to terminate the "server" helper when the client
disappears. dbus supports this use case natively via service registration
events which we can easily handle via QDBusServiceWatcher.
instead of repeatedly poking the client we'll simply monitor its dbus
service now. this is cheaper, less code and doesn't risk timing out
randomly.

Test Plan:
- on neon ISO build kpmcore & calamares & pm
- calamares manages to actually partition stuff
- partitionmanager also starts properly

- also the same again on the installed system.

Reviewers: stikonas, bshah

Reviewed By: bshah

Subscribers: bshah

Differential Revision: https://phabricator.kde.org/D14646
2018-08-06 15:46:11 +02:00
l10n daemon script 4f699fbc01 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-08-06 05:33:12 +02:00
Andrius Štikonas 872715f4e0 Switch DBus calls to classes generated from XML. 2018-08-05 21:15:33 +01:00
l10n daemon script c9258f74c0 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-08-05 05:29:30 +02:00
Andrius Štikonas a7b640da4c Delay creation of QEventLoop object until after QCoreApplication starts
Fixes: QEventLoop: Cannot be used without QApplication
2018-08-03 19:49:32 +01:00
l10n daemon script 67e943713b SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-08-03 05:37:12 +02:00
l10n daemon script 5103d1fcc0 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-08-02 05:28:03 +02:00
l10n daemon script 9515090157 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-08-01 05:50:40 +02:00
Andrius Štikonas 3524977006 Fix a typo in the comment. 2018-08-01 00:58:24 +01:00
l10n daemon script 0201171956 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-07-31 05:43:22 +02:00
Andrius Štikonas d6beb862e6 Reword description of KAuth action. 2018-07-30 19:10:12 +01:00
l10n daemon script 184702fc1a SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-07-30 05:24:01 +02:00
l10n daemon script 0ee516b2f2 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-07-29 05:31:06 +02:00
l10n daemon script 9faece8d28 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-07-28 05:33:45 +02:00
l10n daemon script 4828645e18 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2018-07-27 05:33:54 +02:00
Andrius Štikonas 3d6aa8c333 Remove ExternalCommand::onFinished. 2018-07-21 21:29:36 +01:00
Andrius Štikonas 2579d04229 Remove ExternalCommand::waitFor.
This is no longer used with KAuth.
ExternalCommand::start now waits until command finishes.
2018-07-21 21:19:34 +01:00
Andrius Štikonas 938ec7fa8b Make ExternalCommandHelper::getNonce() reentrant.
Store previously generated values of nonce, and remove them from
the container when they are used.

BUG: 396312
2018-07-21 11:03:25 +01:00
Andrius Štikonas c50e04c9d1 Use cryptographic nonce instead of counters. 2018-07-20 21:12:13 +01:00
Andrius Štikonas 3f65e94659 Return false when external command helper reports failure. 2018-07-18 21:40:39 +01:00
Andrius Štikonas e5b63b0d6f Fix support for QProcess::ProcessChannelMode. 2018-07-15 17:37:29 +01:00
Andrius Štikonas ce425ee04d Exit if the previous KAuth helper is still running. 2018-07-15 01:13:54 +01:00
Andrius Štikonas 9a8166fe65 Remove qDebug message.
It shouldn't be necessary now. Helper exits reliably.
2018-07-15 00:35:55 +01:00
Andrius Štikonas 51780a6297 Stop KAuth helper if application crashes.
This is implemented by pinging application from KAuth helper via DBus.
If it is busy  then KAuth helper also waits for the current job to finish.
2018-07-15 00:09:39 +01:00
Andrius Štikonas 65ef6ab83d Fix error message.
It was incorrectly saying DBus session bus instead of system bus.
2018-07-14 21:36:13 +01:00
Andrius Štikonas ea664bfffc Set polkit action icon to partitionmanager. 2018-04-21 21:34:24 +03:00
Andrius Štikonas 0d29dc8a6b Fix class/struct mismatch in forward declaration. 2018-04-18 21:46:15 +03:00
Andrius Štikonas 5814c6c02a Allow setting KAuth parent widget. 2018-04-15 01:35:29 +03:00
Andrius Štikonas 145f54f18c Move KAuth helper setup code to ExternalCommand class.
Delay helper startup until it is actually required.
2018-04-14 23:55:05 +03:00
Andrius Štikonas a6100aaa37 Add an error message in case of invalid signature. 2018-04-13 14:26:44 +03:00
Andrius Štikonas 231bfbd331 Cryptographically sign copyblocks and exit KAuth helper calls. 2018-04-13 14:24:05 +03:00
Andrius Štikonas 24e1e83152 Try to fix QString encoding issues in KAuth helper.
For now set text codec to UTF-8
Needs more investigation if locale of the GUI program is not UTF-8.
2018-04-13 02:44:12 +03:00
Andrius Štikonas 71b56d27a8 Keep Capacity::Unit a simple enum, otherwise KPM fails to compile. 2018-04-13 01:29:43 +03:00
Andrius Štikonas e0be8fae83 Initialize m_Counter variable on startup. 2018-04-13 00:51:08 +03:00
Andrius Štikonas 428ee5b6c8 First attempt at using RSA to sign requests to KAuth helper. 2018-04-13 00:43:12 +03:00
Andrius Štikonas 221d7aded6 d-pointerize ExternalCommand class. 2018-04-12 00:47:40 +03:00
Andrius Štikonas 622def3b56 Convert more enums to scoped enums. 2018-04-09 15:14:34 +01:00
Andrius Štikonas 5e85f0b974 Remove ping interface in KAuth helper as it is blocking KPM GUI. 2018-03-31 18:01:00 +01:00
Andrius Štikonas 738842799a Make kpmcore link libraries private. 2018-03-31 16:30:53 +01:00
Andrius Štikonas f04416beba Simplify Qtimer code in ExternalCommandHelper. 2018-03-23 22:47:21 +00:00
Andrius Štikonas 8cdf70171e Start QTimer before enteting event loop. 2018-03-23 22:08:23 +00:00
Caio Carvalho 47a1519699 - Including Watchdog Timer in CoreBackendManager to ping DBus service.
- Including ExternalCommandHelper::ping slot to receive pings.
- Including timer to watch last ping in the service to unregister it after reaching 42 seconds without pings.
2018-03-23 18:19:33 -03:00
Andrius Štikonas ca136dfcaa Add some comments.
Move copyblocks function lower in a file.
2018-03-22 17:52:59 +00:00