Commit Graph
15 Commits
Author SHA1 Message Date
John Schanck ad842546bf Bug 1896781 - implement NSSKeyStore::RetrieveSecret. r=mt
Differential Revision: https://phabricator.services.mozilla.com/D210551
2024-05-24 15:51:28 +00:00
Dana Keeler 4427dd23a2 Bug 1842303 - remove some unused nsIOSKeyStore functions r=nkulatova
Differential Revision: https://phabricator.services.mozilla.com/D183054
2023-07-11 16:47:11 +00:00
serge-sans-paille a5bc7d11e9 Bug 1820573 - Make security/ buildable outside of a unified build environment r=andi,keeler
Differential Revision: https://phabricator.services.mozilla.com/D171732
2023-03-15 07:30:36 +00:00
Ray Kraesig a90cf6aac8 Bug 1772908 - [1/6] Drive-by cleanup: simplify use of SyncRunnable r=xpcom-reviewers,necko-reviewers,nika,valentin
`SyncRunnable`'s helper functions take an `nsIRunnable *`; but the most
common way of building nsIRunnables, `NS_NewRunnableFunction`, returns
an `already_AddRefed<nsIRunnable>` instead. Add two new overloads of the
helper functions to eliminate the impedance mismatch.

(This does result in an uncomfortable amount of code duplication. While
we could eliminate that with appropriate use of SFINAE, it'll be simpler
if we wait for C++20 and its `requires` keyword.)

Additionally, add two explicitly-deleted overloads to catch and prevent
a previously-common antipattern that presumably resulted from this type
mismatch: accidentally wrapping the actual runnable in two layers of
`SyncRunnable`. Fix the former use-sites appropriately. (This was
probably harmless, but is also probably best avoided.)

No functional changes. This is in some sense a continuation of bug
1281626.

(This is no longer actually relevant to bug 1772908 due to a different
approach being taken. It remains in the patchset anyway, for
simplicity's sake.)

Differential Revision: https://phabricator.services.mozilla.com/D157131
2022-11-04 21:04:18 +00:00
Adam Roach [:abr] fc90654739 Bug 1639795: Update keystore name to be user-friendly r=MattN,keeler
***

Differential Revision: https://phabricator.services.mozilla.com/D78610
2020-06-10 21:53:19 +00:00
Simon Giesecke d509701ccb Bug 1613985 - Use default for equivalent-to-default constructors/destructors in security. r=rrelyea
Differential Revision: https://phabricator.services.mozilla.com/D65499
2020-03-16 10:56:56 +00:00
Bogdan Tara 22b0fa7e80 Backed out 4 changesets (bug 1613985) for causing build bustages CLOSED TREE
Backed out changeset fba0caac746c (bug 1613985)
Backed out changeset 8605d7a19107 (bug 1613985)
Backed out changeset 41e858fbf235 (bug 1613985)
Backed out changeset 847433cf1e0a (bug 1613985)
2020-03-16 12:41:41 +02:00
Simon Giesecke 85538cb7b0 Bug 1613985 - Use default for equivalent-to-default constructors/destructors in security. r=rrelyea
Differential Revision: https://phabricator.services.mozilla.com/D65499
2020-03-16 09:57:45 +00:00
Aaron Klotz 18a8732bb4 Bug 1578786: Fix up some includes and namespaces in security/manager/ssl so that it may compile in non-unified mode; r=keeler
Differential Revision: https://phabricator.services.mozilla.com/D44700
2019-09-04 18:35:50 +00:00
Kevin Jacobs bbb83a5dda Bug 1492305 - Fix LibSecret unlocking & NSS return values r=keeler,MattN
This fixes issues with the NSS and LibSecret keystore not correctly rejecting unlocking of the key store.

Updated for dynamic loading of LibSecret and a bug workaround added elsewhere (updated green try below)

Depends on D9969.

Differential Revision: https://phabricator.services.mozilla.com/D7713
2019-05-22 18:25:59 +00:00
Dana Keeler 269e34591d bug 1517337 - make secret overwriting consistent across backends r=jcj
As originally written, the keychain-backed secret storing implementation would
not overwrite a secret if prompted to generate or recover one with a label that
was already in use. Since libsecret and credential manager both do this by
default, this change makes the keychain-backed implementation behave the same
way.

Differential Revision: https://phabricator.services.mozilla.com/D15697
2019-01-09 18:25:46 +00:00
Sylvestre Ledru e5a134f73a Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format
# ignore-this-changeset
2018-11-30 11:46:48 +01:00
Dana Keeler ba596b1c27 bug 1499766 - rework the threading model of OSKeyStore r=jcj
The original threading model of OSKeyStore could lead to a deadlock if an
asynchronous event were dispatched and then the isNSSKeyStore attribute were
queried. This patch removes that pitfall by moving the determination of the
attribute to OSKeyStore rather than the underlying implementation.

Additionally, the original threading model was inefficient in that it created
and destroyed a thread per asynchronous operation. This patch reworks this to
only ever create one worker thread.

Differential Revision: https://phabricator.services.mozilla.com/D9299
2018-10-23 01:14:14 +00:00
David Keeler 302a647f90 bug 1478667 - implement OS key-store adapter for OS X r=franziskus,spohl
This implements support for OS-backed storage of secrets using the OS X keychain
APIs.

Differential Revision: https://phabricator.services.mozilla.com/D2487
2018-07-31 20:52:56 +00:00
Franziskus Kiefer 7ad81edd9b Bug 1464828 - DAR API with libsecret and NSS back-end, r=keeler,m_and_m,froydnj
This implements an API in `nsIOSKeyStore.idl` and `OSKeyStore.cpp` to encrypt and decrypt bytes with a key that is stored in the OS key store.
There are two OS adapters in this patch.
Libsecret is used on Linux if available.
The NSS key store is used as fallback if no OS specific key store is implemented.

Differential Revision: https://phabricator.services.mozilla.com/D1858
2018-07-26 16:05:35 +02:00