After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 792922 - Avoid SIGSYS when extracting metadata from non-native GVfs URIs
Avoid SIGSYS when extracting metadata from non-native GVfs URIs
Status: RESOLVED FIXED
Product: tracker
Classification: Core
Component: Miners
git master
Other All
: Normal normal
: ---
Assigned To: tracker-general
tracker-general
Depends on:
Blocks: 751212
 
 
Reported: 2018-01-26 10:36 UTC by Debarshi Ray
Modified: 2018-01-26 11:30 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
libtracker-miners-common: Allow GCredentials to work (998 bytes, patch)
2018-01-26 10:38 UTC, Debarshi Ray
none Details | Review
libtracker-miners-common: Allow GCredentials to work (1.00 KB, patch)
2018-01-26 11:25 UTC, Debarshi Ray
committed Details | Review

Description Debarshi Ray 2018-01-26 10:36:58 UTC
tracker-extract receives a SIGSYS if you try to extract metadata from a file, not a directory, represented by a non-native GVfs URI. eg., this:
  $ tracker index -f gphoto2://.../path/to/a/JPEG

Note that non-native directories can't be indexed due to different reasons. See bug 792337

This is because GDaemonFile, GVfs' implementation of GFile, uses GCredentials which in turn uses getegid and that is blocked by our seccomp filter.

For some reason, if you instead go through GVfs' FUSE emulation then GCredentials isn't used. I haven't dug deep enough to know why that is. eg., this works:
  $ tracker index -f /var/run/user/1000/gvfs/.../path/to/a/JPEG
Comment 1 Debarshi Ray 2018-01-26 10:38:06 UTC
Created attachment 367464 [details] [review]
libtracker-miners-common: Allow GCredentials to work
Comment 2 Carlos Garnacho 2018-01-26 11:10:38 UTC
Comment on attachment 367464 [details] [review]
libtracker-miners-common: Allow GCredentials to work

Let's keep up with the whack-a-mole game :). I think it makes sense to also add getegid32 because that will probably get used on other arches. Feel free to push after adding it.
Comment 3 Debarshi Ray 2018-01-26 11:25:19 UTC
Created attachment 367471 [details] [review]
libtracker-miners-common: Allow GCredentials to work
Comment 4 Debarshi Ray 2018-01-26 11:29:59 UTC
Comment on attachment 367471 [details] [review]
libtracker-miners-common: Allow GCredentials to work

Pushed to master after adding getegid32. Thanks!