davidk (David Kahles)
User

Projects

User does not belong to any projects.

Today

  • Clear sailing ahead.

Tomorrow

  • Clear sailing ahead.

Monday

  • Clear sailing ahead.

User Details

User Since
Sep 22 2016, 3:29 PM (396 w, 1 d)
Availability
Available

Recent Activity

Jul 9 2018

davidk added a comment to D8532: [WIP] Restrict file extractor with Seccomp.

I was asked in private about the current state of libseccomp integration and why there was no progress in a long time.
The current state is, that I have implemented seccomp support in kfilemetadata using this API:

bool setProcessReadOnly(uint32_t defaultAction, std::vector<SeccompFilter> addionalWhitelist)

But there are two blockers, related to external plugins:

  • External plugins based on interpreters like python/lua/perl etc. need a huge whitelist. This is problematic as I want to keep the list of allowed syscalls as small as possible (the list would be huge). Additionally, it would be difficult to get a list of all needed syscalls. Thus, we would break many external plugins.
  • Baloo is basically unmaintained. Thus, if something breaks, fixing it should be as easy as possible. But what if QT requires a new syscall and thus, the tests (and deployments) are failing? We need a way to know which syscall failed. This works for kfilemetadata plugins, but not for external plugins (because they are separate processes). The only way I can image, would be running the whole test with strace.
Jul 9 2018, 3:30 PM · Baloo, Frameworks

Mar 20 2018

davidk added a comment to D8532: [WIP] Restrict file extractor with Seccomp.

I don't know Seccomp. But as far as I understood this, the same concers apply to the baloo_file_temp_extractor baloo-widgets is using. Naivly I suggest to implement this KFileMetadata because both executables are using it. I don't know if that is possible or reasonable though.

I think Seccomp would be usefull in the baloo_file_temp_extractor too. What API would you suggest? I think on something like

KFileMetaData::setProcessReadOnly(KFileMetaData::SeccompAction action, QList<KFileMetaData::SeccompFilter> addionalWhitelist)
Mar 20 2018, 10:23 PM · Baloo, Frameworks

Feb 24 2018

davidk added a comment to D8532: [WIP] Restrict file extractor with Seccomp.

Sorry for the late reply and the slow process in general. Reallife keeps me busy...

A whitelist, even if it is broad, would be desirable to reduce the attack surface of the kernel, and is also the way it has been done for Gnome Tracker. But the concerns about maintenance remain, it probably should be tested regularly. Are there ways this can be automated?

If we want to test this, we would need a directory with files for each extractor (kfilemetadata includes such files for its autotests). Then, we should configure seccomp to kill the process if it calls a prohibited syscall. The test should then index all files in the directory. Unfortunately we can't test some things, e.g. the dbus integration and communication with baloo_file. This would need a test which starts the whole extractor as a child process. But i'm not sure if thats feasible. What do you think?

In case the decision goes in favor of the blacklist, would it be possible to add ptrace, process_vm_readv, process_vm_writev?

That's possible of course.

Feb 24 2018, 4:37 PM · Baloo, Frameworks

Feb 1 2018

davidk committed R477:08182df35c08: Set error if oauth dialog is aborted (authored by davidk).
Set error if oauth dialog is aborted
Feb 1 2018, 4:45 PM
davidk closed D10221: Set error if oauth dialog is aborted.
Feb 1 2018, 4:45 PM · KDE PIM
davidk added a comment to D10221: Set error if oauth dialog is aborted.

So shall this go into master or 17.12? It needs the change in kdepim-runtime to improve things.

Feb 1 2018, 4:39 PM · KDE PIM
davidk updated the diff for D10221: Set error if oauth dialog is aborted.

Improve uservisible message.

Feb 1 2018, 4:38 PM · KDE PIM
davidk committed R44:338da932d0e6: Merge branch 'Applications/17.12' (authored by davidk).
Merge branch 'Applications/17.12'
Feb 1 2018, 4:28 PM
davidk committed R44:ea2ec0926f8e: Don't insert invalid google accounts into the access list (authored by davidk).
Don't insert invalid google accounts into the access list
Feb 1 2018, 4:28 PM
davidk closed D10222: Don't insert invalid google accounts into the access list.
Feb 1 2018, 4:28 PM · KDE PIM
davidk updated the diff for D10222: Don't insert invalid google accounts into the access list.
Feb 1 2018, 4:24 PM · KDE PIM
davidk added inline comments to D10221: Set error if oauth dialog is aborted.
Feb 1 2018, 10:31 AM · KDE PIM
davidk added a comment to D10222: Don't insert invalid google accounts into the access list.

The change improves the current state in case the user doesn't grant the access scopes. Only if the user presses the cancel button, the change in libkgapi is needed. So I think it makes sense in 17.12.

Feb 1 2018, 10:30 AM · KDE PIM
davidk added a comment to D10221: Set error if oauth dialog is aborted.

kdepim-runtime RR: D10222

Feb 1 2018, 8:11 AM · KDE PIM
davidk committed R477:8f5469f66f49: Merge branch 'Applications/17.12' (authored by davidk).
Merge branch 'Applications/17.12'
Feb 1 2018, 6:47 AM
davidk committed R477:1ad3e82403e2: Fix oauth focus (authored by davidk).
Fix oauth focus
Feb 1 2018, 6:45 AM
davidk closed D10206: Fix oauth focus.
Feb 1 2018, 6:45 AM · KDE PIM
davidk committed R477:c693d40f84e2: Reenable setting the authentication URL (authored by davidk).
Reenable setting the authentication URL
Feb 1 2018, 6:45 AM
davidk closed D10199: Reenable setting the authentication URL.
Feb 1 2018, 6:45 AM · KDE PIM

Jan 31 2018

davidk added a comment to D10206: Fix oauth focus.

Shall I push it to 17.12?

Jan 31 2018, 7:45 PM · KDE PIM
davidk added a comment to D10199: Reenable setting the authentication URL.

Push to 17.12?

Jan 31 2018, 11:15 AM · KDE PIM

Jan 29 2018

davidk updated the summary of D8532: [WIP] Restrict file extractor with Seccomp.
Jan 29 2018, 3:52 PM · Baloo, Frameworks
davidk added a comment to D8532: [WIP] Restrict file extractor with Seccomp.

So, are there any more opinions on the whitelist vs. blacklist topic?
Personally I still prefer the blacklist as I fear regressions in the future, especially because baloo is unmaintained.

Jan 29 2018, 2:06 PM · Baloo, Frameworks
davidk updated the summary of D8532: [WIP] Restrict file extractor with Seccomp.
Jan 29 2018, 2:04 PM · Baloo, Frameworks

Jan 28 2018

davidk updated the diff for D8532: [WIP] Restrict file extractor with Seccomp.

Update TODO items.

Jan 28 2018, 10:04 AM · Baloo, Frameworks
davidk added a comment to D8998: Add FindSeccomp to find-modules.

Thanks for your review.

Jan 28 2018, 9:50 AM · Build System, Frameworks
davidk committed R240:c30802019895: Add FindSeccomp to find-modules (authored by davidk).
Add FindSeccomp to find-modules
Jan 28 2018, 9:50 AM
davidk closed D8998: Add FindSeccomp to find-modules.
Jan 28 2018, 9:50 AM · Build System, Frameworks
davidk updated the diff for D8998: Add FindSeccomp to find-modules.

Fix version.

Jan 28 2018, 9:49 AM · Build System, Frameworks
davidk added a comment to D8998: Add FindSeccomp to find-modules.

@cgiboudeaux is it ready to go now?

Jan 28 2018, 9:42 AM · Build System, Frameworks
davidk committed R477:7df27a22c52c: Merge branch 'Applications/17.12' (authored by davidk).
Merge branch 'Applications/17.12'
Jan 28 2018, 9:38 AM
davidk committed R477:691bdc95c903: Make new user-visible messages translatable (authored by davidk).
Make new user-visible messages translatable
Jan 28 2018, 9:38 AM
davidk committed R477:b87061d781ad: Retrieve OAuth2 token with HTTP socket (authored by davidk).
Retrieve OAuth2 token with HTTP socket
Jan 28 2018, 9:27 AM
davidk closed D9885: Retrieve OAuth2 token with HTTP socket.
Jan 28 2018, 9:27 AM · KDE PIM

Jan 20 2018

davidk updated the diff for D9885: Retrieve OAuth2 token with HTTP socket.

Unfortunately i can't reproduce the crash (with QT 5.10.0).

Jan 20 2018, 6:37 AM · KDE PIM

Jan 18 2018

davidk added a comment to D9885: Retrieve OAuth2 token with HTTP socket.

I'm fine with putting a QStringLiteral version into 17.12.

Jan 18 2018, 8:18 AM · KDE PIM
davidk updated the diff for D9885: Retrieve OAuth2 token with HTTP socket.

Fix most issues.

Jan 18 2018, 8:12 AM · KDE PIM

Jan 17 2018

davidk added inline comments to D9885: Retrieve OAuth2 token with HTTP socket.
Jan 17 2018, 1:26 PM · KDE PIM
davidk updated the diff for D9885: Retrieve OAuth2 token with HTTP socket.

Fix style and constify

Jan 17 2018, 1:22 PM · KDE PIM
davidk added a project to D9885: Retrieve OAuth2 token with HTTP socket: KDE PIM.
Jan 17 2018, 5:48 AM · KDE PIM

Jan 15 2018

davidk added a reviewer for D9885: Retrieve OAuth2 token with HTTP socket: KDE PIM.
Jan 15 2018, 12:09 PM · KDE PIM
davidk added reviewers for D9885: Retrieve OAuth2 token with HTTP socket: mlaurent, dvratil.
Jan 15 2018, 10:28 AM · KDE PIM
davidk committed R477:5ad4b213fbd4: Retrieve OAuth2 token with HTTP socket (authored by davidk).
Retrieve OAuth2 token with HTTP socket
Jan 15 2018, 9:54 AM

Jan 13 2018

davidk committed R477:2980ace5fc69: Fix token page URL (authored by davidk).
Fix token page URL
Jan 13 2018, 12:30 PM
davidk closed D9843: Fix token page URL.
Jan 13 2018, 12:30 PM
davidk updated the diff for D9843: Fix token page URL.

Remove question in commit message

Jan 13 2018, 12:27 PM

Jan 12 2018

davidk added a comment to D9843: Fix token page URL.

It's good if it logs now.
But where do you find info about new url ?

Jan 12 2018, 6:45 PM
davidk added reviewers for D9843: Fix token page URL: dvratil, mlaurent.
Jan 12 2018, 3:04 PM

Jan 5 2018

davidk added a comment to D8532: [WIP] Restrict file extractor with Seccomp.
In D8532#175079, @ossi wrote:

you *really* should use a whitelist. it's ok if that breaks some 3rdparty extractor; you'll get a bug report which you can properly evaluate.
you could go totally overboard and assign fine-grained syscall capabilities to individual extractors, but i can't really think of legitimate reasons why that would be necessary in this context.

Jan 5 2018, 9:24 AM · Baloo, Frameworks
davidk updated the diff for D8998: Add FindSeccomp to find-modules.

Fix remaining problems

Jan 5 2018, 7:54 AM · Build System, Frameworks
davidk added a comment to D9225: Fix building autotest on platforms where syscalls are not available.

Just adding my 2 cent: I think the filter should work fine, as SCMP_SYS is explicit available to support different platforms. If the syscall isn't available, it uses negative pseudo syscall numbers to ignore those syscalls.

Jan 5 2018, 7:41 AM · Plasma
davidk abandoned D9673: Guard against syscalls not available on some platforms.
In D9673#186294, @bshah wrote:

Uh, sorry I forgot to mention in orignial PR: but https://phabricator.kde.org/D9225

Jan 5 2018, 7:35 AM · Plasma
davidk added reviewers for D9673: Guard against syscalls not available on some platforms: bshah, graesslin.
Jan 5 2018, 7:23 AM · Plasma
davidk added a comment to D8756: Forbid more syscalls which could modify the filesystem.

I'm not sure what happens here as well. I guess that arm64 doesn't implement many syscalls. I will prepare a patch to exclude those syscalls if they're not available.

Jan 5 2018, 7:22 AM · Plasma
davidk added a comment to D8756: Forbid more syscalls which could modify the filesystem.
In D8756#176550, @bshah wrote:

Hello,

It seems this commit doesn't seem to build on arm64 properly: https://build.neon.kde.org/job/xenial_unstable_plasma_kscreenlocker_bin_arm64/1/console

I don't exactly understand what's going on.

Jan 5 2018, 6:56 AM · Plasma

Nov 26 2017

davidk added a comment to D8998: Add FindSeccomp to find-modules.

Thank you, missed this when renaming the docs.

Nov 26 2017, 1:58 PM · Build System, Frameworks
davidk updated the diff for D8998: Add FindSeccomp to find-modules.

Fix variable names

Nov 26 2017, 1:55 PM · Build System, Frameworks

Nov 25 2017

davidk updated the diff for D8998: Add FindSeccomp to find-modules.

Remove apparently unneeded version check

Nov 25 2017, 6:45 PM · Build System, Frameworks
davidk added inline comments to D8998: Add FindSeccomp to find-modules.
Nov 25 2017, 6:43 PM · Build System, Frameworks
davidk added inline comments to D8998: Add FindSeccomp to find-modules.
Nov 25 2017, 3:11 PM · Build System, Frameworks
davidk added a reviewer for D8998: Add FindSeccomp to find-modules: graesslin.
Nov 25 2017, 3:09 PM · Build System, Frameworks
davidk created D8998: Add FindSeccomp to find-modules.
Nov 25 2017, 3:08 PM · Build System, Frameworks

Nov 11 2017

davidk committed R133:7720e8486337: Forbid more syscalls which could modify the filesystem (authored by davidk).
Forbid more syscalls which could modify the filesystem
Nov 11 2017, 7:55 AM
davidk closed D8756: Forbid more syscalls which could modify the filesystem.
Nov 11 2017, 7:55 AM · Plasma
davidk added a reviewer for D8756: Forbid more syscalls which could modify the filesystem: graesslin.
Nov 11 2017, 7:23 AM · Plasma
davidk created D8756: Forbid more syscalls which could modify the filesystem.
Nov 11 2017, 7:18 AM · Plasma
davidk committed R293:d636fdc569ea: Remove unused config.h.cmake entries (authored by davidk).
Remove unused config.h.cmake entries
Nov 11 2017, 5:32 AM
davidk closed D8461: Remove unused config.h.cmake entries.
Nov 11 2017, 5:32 AM · Frameworks
davidk updated the diff for D8461: Remove unused config.h.cmake entries.

Improve commit message

Nov 11 2017, 5:30 AM · Frameworks
davidk committed R286:098d62874591: Open files in TagLib extractor readonly (authored by davidk).
Open files in TagLib extractor readonly
Nov 11 2017, 5:26 AM
davidk closed D8330: Open files in TagLib extractor readonly.
Nov 11 2017, 5:26 AM · Frameworks

Nov 9 2017

davidk added a comment to D8461: Remove unused config.h.cmake entries.

Thanks for the git hint and the revew.
Then we should remove this code too.

Nov 9 2017, 8:43 AM · Frameworks
davidk added a comment to D8330: Open files in TagLib extractor readonly.

@davidk, I think you have commit rights; do you want to do the honors?

Nov 9 2017, 8:41 AM · Frameworks

Oct 28 2017

davidk created D8532: [WIP] Restrict file extractor with Seccomp.
Oct 28 2017, 7:22 AM · Baloo, Frameworks

Oct 25 2017

davidk updated the diff for D8461: Remove unused config.h.cmake entries.

Fix commit message.

Oct 25 2017, 4:25 AM · Frameworks
davidk created D8461: Remove unused config.h.cmake entries.
Oct 25 2017, 4:22 AM · Frameworks

Oct 24 2017

davidk added reviewers for D8330: Open files in TagLib extractor readonly: vhanda, krop, dfaure.

Adding some devs who worked on kfilemetadata in the past.

Oct 24 2017, 7:29 AM · Frameworks

Oct 17 2017

davidk added a comment to D8330: Open files in TagLib extractor readonly.

I am not sure about the qWarning.
I would prefer another opinion on that.

Oct 17 2017, 7:33 AM · Frameworks

Oct 16 2017

davidk created D8330: Open files in TagLib extractor readonly.
Oct 16 2017, 11:46 AM · Frameworks

Mar 7 2017

davidk added a comment to T5412: Improve Plasma PA usability.

When having many devices, the list quickly becomes longer than the available space and you need to scroll. Which is difficult, because you can't use the scrollwheel for that on most of the applet because of the sliders.

That's an issue in systray and not in plasma-pa, you can always use it outside of systray to have bigger popup.

I've tried disabling the wheel scrolling on sliders (because you can't disable it with QtQuickControls) with various hacks, but I failed. There was a patch to Qt to make it configurable, but it was rejected.

Mar 7 2017, 10:03 AM · VDG, Plasma

Jan 28 2017

davidk added a comment to D4324: Copy user face icon synchronously.

I think this is just working around the fact that a KCM has no way of postponing the closing/deletion of the dialog when OK is clicked. We have the issue of OK not saving settings properly in various other places that use jobs, too.

Jan 28 2017, 5:36 PM · Plasma
davidk abandoned D4324: Copy user face icon synchronously.

This needs more changes, will upload again if everything works.

Jan 28 2017, 4:41 PM · Plasma
davidk updated the diff for D4324: Copy user face icon synchronously.

Fix method name

Jan 28 2017, 4:40 PM · Plasma
davidk updated the diff for D4324: Copy user face icon synchronously.

Move the file instead of copying it

Jan 28 2017, 4:35 PM · Plasma
davidk updated D4324: Copy user face icon synchronously.
Jan 28 2017, 4:31 PM · Plasma
davidk retitled D4324: Copy user face icon synchronously from to Copy user face icon synchronously.
Jan 28 2017, 4:28 PM · Plasma

Oct 25 2016

davidk added a comment to D3071: Port away from KDELibs4Support.

Thanks for pointing this out, pushed in a separate commit.

Oct 25 2016, 8:00 AM · Plasma
davidk committed R128:773a1df721d2: Improve passworddialog connection (authored by davidk).
Improve passworddialog connection
Oct 25 2016, 7:58 AM
davidk committed R128:35715e6a5e22: Bring back usericon region selection (authored by davidk).
Bring back usericon region selection
Oct 25 2016, 7:50 AM
davidk closed D3134: Bring back usericon region selection by committing R128:35715e6a5e22: Bring back usericon region selection.
Oct 25 2016, 7:50 AM · Plasma

Oct 22 2016

davidk updated the test plan for D3134: Bring back usericon region selection.
Oct 22 2016, 9:20 AM · Plasma
davidk retitled D3134: Bring back usericon region selection from to Bring back usericon region selection.
Oct 22 2016, 9:14 AM · Plasma
davidk committed R128:4aafaf4e5fea: Port away from KDELibs4Support (authored by davidk).
Port away from KDELibs4Support
Oct 22 2016, 9:06 AM
davidk closed D3071: Port away from KDELibs4Support by committing R128:4aafaf4e5fea: Port away from KDELibs4Support.
Oct 22 2016, 9:05 AM · Plasma

Oct 16 2016

davidk retitled D3071: Port away from KDELibs4Support from to Port away from KDELibs4Support.
Oct 16 2016, 12:31 PM · Plasma

Oct 15 2016

davidk abandoned D3065: Port away from KDELibs4Support.

Sorry for the noise, I have some problems with phabricator.

Oct 15 2016, 3:25 PM · Plasma
davidk retitled D3065: Port away from KDELibs4Support from to Port away from KDELibs4Support.
Oct 15 2016, 3:23 PM · Plasma