• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

google / fscrypt / 449 / 6
34%
master: 34%

Build:
DEFAULT BRANCH: master
Ran 16 Dec 2019 03:14AM UTC
Files 35
Run time 2s
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

16 Dec 2019 03:10AM UTC coverage: 33.107% (+0.2%) from 32.863%
449.6

push

travis-ci

josephlr
keyring: fix permission denied accessing user keyring (#177)

When userKeyringIDLookup() looks up a user keyring, it links it into the
process keyring to ensure that the process retains the "possessor
privileges" over the user keyring, then caches the user keyring's ID.

Unfortunately, this use of the process keyring randomly fails because Go
creates threads before even init() and main() are run, and then can run
code on them later.  Since the kernel doesn't create the process keyring
until userspace requests it and the process keyring is actually a
per-thread property that's only inherited by new threads, different
threads in a Go process may see different process keyrings.

Fix this by removing the user keyring cache, switching from the process
keyring to the thread keyring, and using LockOSThread() to pin the
goroutine to an OS thread while needed to perform a keyring operation.

Resolves https://github.com/google/fscrypt/issues/176

1367 of 4129 relevant lines covered (33.11%)

1235.45 hits per line

Source Files on job 449.6
  • Tree
  • List 0
  • Changed 9
  • Source Changed 1
  • Coverage Changed 9
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Build 408
  • Travis Job 449.6
  • 55f71606 on github
  • Prev Job for on master (#446.6)
  • Next Job for on master (#453.6)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc