addons-public-intermediate.pem |
|
2557 |
addons-public.pem |
|
2277 |
addons-stage-intermediate.pem |
|
2492 |
addons-stage.pem |
|
2232 |
AppSignatureVerification.cpp |
out |
48524 |
AppTrustDomain.cpp |
|
12167 |
AppTrustDomain.h |
out |
3983 |
builtins |
|
|
cert_storage |
|
|
CertStorageMemoryReporting.cpp |
|
756 |
ClientAuthDialogService.sys.mjs |
|
3085 |
CommonSocketControl.cpp |
|
16157 |
CommonSocketControl.h |
|
6853 |
components.conf |
|
6362 |
content-signature-local.pem |
|
810 |
content-signature-prod.pem |
|
2277 |
content-signature-stage.pem |
|
2232 |
ContentSignatureVerifier.cpp |
out |
16296 |
ContentSignatureVerifier.h |
|
1115 |
crashtests |
|
|
CredentialManagerSecret.cpp |
out |
3597 |
CredentialManagerSecret.h |
out |
910 |
crypto_hash |
|
|
CryptoTask.cpp |
|
1246 |
CryptoTask.h |
Frequently we need to run a task on a background thread without blocking
the main thread, and then call a callback on the main thread with the
result. This class provides the framework for that. Subclasses must:
(1) Override CalculateResult for the off-the-main-thread computation.
(2) Override CallCallback() for the on-the-main-thread call of the
callback.
|
1481 |
data_storage |
|
|
DataStorageManager.cpp |
|
2550 |
DataStorageManager.h |
|
842 |
DER.sys.mjs |
Class representing a decoded BIT STRING. |
10228 |
EnterpriseRoots.cpp |
|
21717 |
EnterpriseRoots.h |
|
1265 |
gen_cert_header.py |
|
1485 |
ipcclientcerts |
|
|
IPCClientCertsChild.cpp |
|
551 |
IPCClientCertsChild.h |
|
876 |
IPCClientCertsParent.cpp |
|
4963 |
IPCClientCertsParent.h |
|
1141 |
KeychainSecret.cpp |
out |
7076 |
KeychainSecret.h |
out |
1271 |
LibSecret.cpp |
<private> |
8051 |
LibSecret.h |
out |
859 |
md4.c |
"clean room" MD4 implementation (see RFC 1320)
|
4769 |
md4.h |
md4sum - computes the MD4 sum over the input buffer per RFC 1320
@param input
buffer containing input data
@param inputLen
length of input buffer (number of bytes)
@param result
16-byte buffer that will contain the MD4 sum upon return
NOTE: MD4 is superceded by MD5. do not use MD4 unless required by the
protocol you are implementing (e.g., NTLM requires MD4).
NOTE: this interface is designed for relatively small buffers. A streaming
interface would make more sense if that were a requirement. Currently, this
is good enough for the applications we care about.
|
1099 |
metrics.yaml |
|
11480 |
moz.build |
|
7623 |
nsCertOverrideService.cpp |
out |
21989 |
nsCertOverrideService.h |
67ba681d-5485-4fff-952c-2ee337ffdcd6 |
4914 |
nsCertTree.cpp |
heading for thread |
23763 |
nsCertTree.h |
Disable the "base class XXX should be explicitly initialized
in the copy constructor" warning. |
3879 |
nsClientAuthRemember.cpp |
out |
13005 |
nsClientAuthRemember.h |
|
2725 |
nsICertificateDialogs.idl |
Functions that implement user interface dialogs to manage certificates.
|
2414 |
nsICertOverrideService.idl |
The hostname of the server the override is used for.
|
5659 |
nsICertStorage.idl |
Callback type used to notify callers that an operation performed by
nsICertStorage has completed. Indicates the result of the requested
operation, as well as any data returned by the operation.
|
11767 |
nsICertTree.idl |
|
903 |
nsIClientAuthDialogService.idl |
Provides UI when a server requests a TLS client authentication certificate.
|
1628 |
nsIClientAuthRememberService.idl |
|
2070 |
nsIContentSignatureVerifier.idl |
An interface for verifying content-signatures, inspired by
https://tools.ietf.org/html/draft-thomson-http-content-signature-00
described here https://github.com/franziskuskiefer/content-signature/tree/pki
|
2301 |
nsICryptoHash.idl |
nsICryptoHash
This interface provides crytographic hashing algorithms.
|
3966 |
nsIDataStorage.idl |
nsIDataStorage is a threadsafe, generic, narrow string-based hash map that
persists data on disk and additionally handles private (temporary) data.
The file format is portable across architectures. If used in a context where
there is no profile directory, data will not be persisted.
Its lifecycle is as follows:
- Use nsIDataStorageManager to obtain the nsIDataStorage of a particular
purpose. Its backing file will be read on a background thread.
- Should the profile directory not be available, (e.g. in xpcshell),
nsIDataStorage will not read any persistent data.
- When data in the nsIDataStorage changes, those changes will be written
to the backing file on a background thread. If the program crashes or is
closed unexpectedly before the write completes, the changes may be lost.
If the changes were an update to previously stored data, the original data
may be lost as well. A checksum associated with each entry helps identify
incompletely written entries.
- nsIDataStorage does not support transactions. Each entry is independent of
the others.
- When an nsIDataStorage instance observes the topic "profile-before-change"
in anticipation of shutdown, no more changes will be written to the
backing file. To ensure no data is lost, users of nsIDataStorage should
not attempt to change any data after this point.
If "profile-before-change" is not observed, this happens upon observing
"xpcom-shutdown-threads".
- To prevent unbounded memory and disk use, the number of entries in each
table is limited to 2048. Evictions are handled in by a modified LRU scheme
(see implementation comments).
- Note that instances of nsIDataStorage have long lifetimes because they are
strong observers of events and won't go away until the observer service
does.
For each key/value:
- The key must have a length no more than 256.
- The value have a length no more than 1024 (24 for the site security
service state).
The length limits are to prevent unbounded disk and memory usage, and
nsIDataStorage will throw/return an error if given keys or values of
excess length.
Take care when storing data containing bytes that may be 0. When read
from disk, all trailing 0 bytes from keys and values are stripped.
|
5450 |
nsINSSComponent.idl |
When we log out of a PKCS#11 token, any TLS connections that may have
involved a client certificate stored on that token must be closed. Since we
don't have a fine-grained way to do this, we basically cancel everything.
More speficially, this clears all temporary certificate exception overrides
and any remembered client authentication certificate decisions, and then
cancels all network connections (strictly speaking, this last part is
overzealous - we only need to cancel all https connections (see bug
1446645)).
|
4314 |
nsINSSErrorsService.idl |
@param aNSPRCode An error code obtained using PR_GetError()
@return True if it is error code defined by the NSS library
|
3011 |
nsINSSVersion.idl |
Minimal required versions as used at build time |
1153 |
nsIOSKeyStore.idl |
This interface provides encryption and decryption operations for data at
rest. The key used to encrypt and decrypt the data is stored in the OS
key store.
NB: To first authenticate the user to the system, use
nsIOSReauthenticator.
Usage:
// obtain the singleton OSKeyStore instance
const oskeystore = Cc["@mozilla.org/security/oskeystore;1"].getService(Ci.nsIOSKeyStore);
const PASSWORD_LABEL = "mylabel1";
// Check if there's a secret for your label already.
if (!await oskeystore.asyncSecretAvailable(PASSWORD_LABEL)) {
// Fail or generate a new secret for your label.
// If you want to generate a new secret, do.
// Hold onto `recoveryPhrase` to present to the user.
let recoveryPhrase = await oskeystore.asyncGenerateSecret(PASSWORD_LABEL);
}
// Assuming there's a secret with your label. Encrypt/Decrypt as follows.
let encryptedPasswordBytes = await oskeystore.asyncEncryptBytes(PASSWORD_LABEL, passwordBytes);
let newPasswordBytes = await oskeystore.asyncDecryptBytes(PASSWORD_LABEL, encryptedPasswordBytes);
// Delete the secret from the key store.
await oskeystore.asyncDeleteSecret(PASSWORD_LABEL);
// Recover a secret from a recovery code.
await oskeystore.asyncRecoverSecret(PASSWORD_LABEL, recoveryPhrase);
|
4570 |
nsIOSReauthenticator.idl |
This interface provides an abstract way to request that the user
reauthenticate themselves to the operating system. It may be useful in
conjunction with nsIOSKeyStore, whereby consumers of these APIs may
consider some secrets too sensitive to access without first
reauthenticating the user.
Usage:
// obtain the singleton nsIOSReauthenticator instance
const reauthenticator = Cc["@mozilla.org/security/osreauthenticator;1"]
.getService(Ci.nsIOSReauthenticator);
if (await reauthenticator.asyncReauthenticate()) {
// do something only authenticated users are allowed to do...
} else {
// show a "sorry, this isn't allowed" error
}
|
1958 |
nsIPK11Token.idl |
The name of the token
|
2135 |
nsIPK11TokenDB.idl |
The PK11 Token Database provides access to the PK11 modules
that are installed, and the tokens that are available.
Interfaces: nsIPK11TokenDB
Threading: ??
|
755 |
nsIPKCS11Module.idl |
|
628 |
nsIPKCS11ModuleDB.idl |
|
1038 |
nsIPKCS11Slot.idl |
Manufacturer ID of the slot.
|
1553 |
nsIPublicKeyPinningService.idl |
Returns true if the host of the given URI has pinning information, and
false otherwise.
|
635 |
nsISecretDecoderRing.idl |
Encrypt to Base64 output.
Note that the input must basically be a byte array (i.e. the code points
must be within the range [0, 255]). Hence, using this method directly to
encrypt passwords (or any text, really) won't work as expected.
Instead, use something like nsIScriptableUnicodeConverter to first convert
the desired password or text to UTF-8, then encrypt that. Remember to
convert back when calling decryptString().
@param text The text to encrypt.
@return The encrypted text, encoded as Base64.
|
2709 |
nsISecurityUITelemetry.idl |
Addon installation warnings
|
1280 |
nsISiteSecurityService.idl |
Parses a given HTTP header and records the results internally.
Currently one header type is supported: HSTS (aka STS).
The format of the HSTS header is defined by the HSTS specification:
https://tools.ietf.org/html/rfc6797
and allows a host to specify that future HTTP requests should be
upgraded to HTTPS.
The caller is responsible for first determining that the header was
delivered via a trustworthy connection (namely, https with no errors).
@param aSourceURI the URI of the resource with the HTTP header.
@param aHeader the HTTP response header specifying security data.
@param aOriginAttributes the origin attributes that isolate this origin,
(note that this implementation does not isolate
by userContextId because of the risk of man-in-
the-middle attacks before trust-on-second-use
happens).
If mPrivateBrowsingId > 0, information gathered
from this header will not be saved persistently.
@param aMaxAge the parsed max-age directive of the header.
@param aIncludeSubdomains the parsed includeSubdomains directive.
@param aFailureResult a more specific failure result if NS_ERROR_FAILURE
was returned.
@return NS_OK if it succeeds
NS_ERROR_FAILURE if it can't be parsed
NS_SUCCESS_LOSS_OF_INSIGNIFICANT_DATA
if there are unrecognized tokens in the header.
|
6770 |
nsITLSSocketControl.idl |
Calls StartTLS on the socket thread, and resolves with the nsresult
return value of that call.
|
6916 |
nsITokenPasswordDialogs.idl |
This is the interface for setting and changing password
on a PKCS11 token.
|
902 |
nsITransportSecurityInfo.idl |
The following parameters are only valid after the TLS handshake
has completed. Check securityState first.
|
4346 |
nsIX509Cert.idl |
forward declaration |
5052 |
nsIX509CertDB.idl |
Callback type for use with asyncVerifyCertAtTime.
If aPRErrorCode is PRErrorCodeSuccess (i.e. 0), aVerifiedChain represents the
verified certificate chain determined by asyncVerifyCertAtTime. aHasEVPolicy
represents whether or not the end-entity certificate verified as EV.
If aPRErrorCode is non-zero, it represents the error encountered during
verification. aVerifiedChain is null in that case and aHasEVPolicy has no
meaning.
|
14094 |
nsIX509CertValidity.idl |
Information on the validity period of a X.509 certificate.
|
728 |
nsNSSCallbacks.cpp |
out |
38515 |
nsNSSCallbacks.h |
out |
1518 |
nsNSSCertHelper.cpp |
out |
2748 |
nsNSSCertHelper.h |
out |
886 |
nsNSSCertificate.cpp |
|
20204 |
nsNSSCertificate.h |
660a3226-915c-4ffb-bb20-8985a632df05 |
1696 |
nsNSSCertificateDB.cpp |
out |
44182 |
nsNSSCertificateDB.h |
fb0bbc5c-452e-4783-b32c-80124693d871 |
2600 |
nsNSSCertTrust.cpp |
|
4352 |
nsNSSCertTrust.h |
Class for maintaining trust flags for an NSS certificate.
|
1608 |
nsNSSComponent.cpp |
|
83374 |
nsNSSComponent.h |
out |
5162 |
nsNSSHelper.h |
|
1050 |
nsNSSIOLayer.cpp |
out |
66385 |
nsNSSIOLayer.h |
in/out |
5768 |
nsNSSModule.cpp |
|
3800 |
nsNSSModule.h |
|
586 |
nsNSSVersion.cpp |
|
1729 |
nsNSSVersion.h |
|
842 |
nsNTLMAuthModule.cpp |
We don't actually send a LM response, but we still have to send something in
this spot
|
32232 |
nsNTLMAuthModule.h |
|
750 |
nsPK11TokenDB.cpp |
out |
8695 |
nsPK11TokenDB.h |
out |
1870 |
nsPKCS11Slot.cpp |
out |
8162 |
nsPKCS11Slot.h |
out |
1507 |
nsPKCS12Blob.cpp |
|
12929 |
nsPKCS12Blob.h |
|
1769 |
nsRandomGenerator.cpp |
|
1205 |
nsRandomGenerator.h |
|
899 |
nsSecureBrowserUI.cpp |
|
5772 |
nsSecureBrowserUI.h |
|
1497 |
nsSecurityHeaderParser.cpp |
|
5791 |
nsSecurityHeaderParser.h |
|
3069 |
NSSErrorsService.cpp |
Please ensure the NSS error codes are mapped into the positive range 0x1000
to 0xf000 Search for NS_ERROR_MODULE_SECURITY to ensure there are no
conflicts. The current code also assumes that NSS library error codes are
negative.
|
6716 |
NSSErrorsService.h |
|
1623 |
nsSiteSecurityService.cpp |
out |
35299 |
nsSiteSecurityService.h |
SecurityPropertyState: A utility enum for representing the different states
a security property can be in.
SecurityPropertySet and SecurityPropertyUnset correspond to indicating
a site has or does not have the security property in question, respectively.
SecurityPropertyKnockout indicates a value on a preloaded list is being
overridden, and the associated site does not have the security property
in question.
|
5995 |
NSSKeyStore.cpp |
Implementing OSKeyStore when there is no platform specific one.
This key store instead puts the keys into the NSS DB.
|
6957 |
NSSKeyStore.h |
out |
1241 |
nsSSLSocketProvider.cpp |
|
1940 |
nsSSLSocketProvider.h |
217d014a-1dd2-11b2-999c-b0c4df79b324 |
977 |
NSSSocketControl.cpp |
|
24732 |
NSSSocketControl.h |
|
13712 |
nsSTSPreloadList.inc |
/
/* This is an automatically generated file. If you're not |
3072355 |
nsTLSSocketProvider.cpp |
|
1962 |
nsTLSSocketProvider.h |
b9507aec-1dd1-11b2-8cd5-c48ee0c50307 |
934 |
nsVerificationJob.h |
|
1084 |
osclientcerts |
|
|
OSKeyStore.cpp |
out |
22972 |
OSKeyStore.h |
out |
4035 |
OSReauthenticator.cpp |
|
20003 |
OSReauthenticator.h |
out |
1194 |
OSReauthenticatorDarwin.mm |
out |
2820 |
PIPCClientCerts.ipdl |
|
1065 |
PKCS11ModuleDB.cpp |
lock down the list for reading |
7216 |
PKCS11ModuleDB.h |
|
1324 |
PSelectTLSClientAuthCert.ipdl |
|
656 |
PSMIPCTypes.ipdlh |
|
1286 |
PSMRunnable.cpp |
|
979 |
PSMRunnable.h |
|
1413 |
PublicKeyPinningService.cpp |
Computes in the location specified by base64Out the SHA256 digest
of the DER Encoded subject Public Key Info for the given cert
|
13449 |
PublicKeyPinningService.h |
Sets chainHasValidPins to true if the given (host, certList) passes pinning
checks, or to false otherwise. If the host is pinned, returns true via
chainHasValidPins if one of the keys in the given certificate chain matches
the pin set specified by the hostname. The certList's head is the EE cert
and the tail is the trust anchor.
Note: if an alt name is a wildcard, it won't necessarily find a pinset
that would otherwise be valid for it
|
1809 |
PublicSSL.h |
|
605 |
PVerifySSLServerCert.ipdl |
|
1709 |
RemoteSecuritySettings.sys.mjs |
Helper function that returns a promise that will resolve with whether or not
the nsICertStorage implementation has prior data of the given type.
@param {Integer} dataType a Ci.nsICertStorage.DATA_TYPE_* constant
indicating the type of data
@returns {Promise} a promise that will resolve with true if the data type is
present
|
23608 |
RootCertificateTelemetryUtils.cpp |
|
5273 |
RootCertificateTelemetryUtils.h |
|
1396 |
RootHashes.inc |
/
/* This is an automatically generated file. If you're not |
43357 |
rsclientcerts |
|
|
ScopedNSSTypes.h |
out |
16232 |
SecretDecoderRing.cpp |
out |
10762 |
SecretDecoderRing.h |
out |
1157 |
SelectTLSClientAuthCertChild.h |
|
1611 |
SelectTLSClientAuthCertParent.h |
|
2283 |
SharedCertVerifier.h |
|
1436 |
SSLServerCertVerification.cpp |
|
47715 |
SSLServerCertVerification.h |
|
6366 |
StaticHPKPins.errors |
|
2701 |
StaticHPKPins.h |
/
/* This is an automatically generated file. If you're not |
41331 |
tests |
|
|
TLSClientAuthCertSelection.cpp |
|
42373 |
TLSClientAuthCertSelection.h |
|
4540 |
TransportSecurityInfo.cpp |
|
35081 |
TransportSecurityInfo.h |
|
4541 |
VerifySSLServerCertChild.cpp |
|
5192 |
VerifySSLServerCertChild.h |
|
2191 |
VerifySSLServerCertParent.cpp |
|
5857 |
VerifySSLServerCertParent.h |
|
2254 |
X509.sys.mjs |
Helper function to read a NULL tag from the given DER.
@param {DER} der a DER object to read a NULL from
@returns {null} an object representing an ASN.1 NULL
|
18327 |
X509CertValidity.cpp |
|
2807 |
X509CertValidity.h |
|
816 |