diff options
Diffstat (limited to 'security/manager/ssl/nsDataSignatureVerifier.h')
-rw-r--r-- | security/manager/ssl/nsDataSignatureVerifier.h | 47 |
1 files changed, 47 insertions, 0 deletions
diff --git a/security/manager/ssl/nsDataSignatureVerifier.h b/security/manager/ssl/nsDataSignatureVerifier.h new file mode 100644 index 000000000..485af70c8 --- /dev/null +++ b/security/manager/ssl/nsDataSignatureVerifier.h @@ -0,0 +1,47 @@ +/* This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ + +#ifndef nsDataSignatureVerifier_h +#define nsDataSignatureVerifier_h + +#include "certt.h" +#include "nsIDataSignatureVerifier.h" +#include "nsNSSShutDown.h" + +#define NS_DATASIGNATUREVERIFIER_CID \ + { 0x296d76aa, 0x275b, 0x4f3c, \ + { 0xaf, 0x8a, 0x30, 0xa4, 0x02, 0x6c, 0x18, 0xfc } } +#define NS_DATASIGNATUREVERIFIER_CONTRACTID \ + "@mozilla.org/security/datasignatureverifier;1" + +class nsDataSignatureVerifier final : public nsIDataSignatureVerifier + , public nsNSSShutDownObject +{ +public: + NS_DECL_ISUPPORTS + NS_DECL_NSIDATASIGNATUREVERIFIER + + nsDataSignatureVerifier() + { + } + +private: + ~nsDataSignatureVerifier(); + + // Nothing to release. + virtual void virtualDestroyNSSReference() override {} +}; + +namespace mozilla { + +nsresult VerifyCMSDetachedSignatureIncludingCertificate( + const SECItem& buffer, const SECItem& detachedDigest, + nsresult (*verifyCertificate)(CERTCertificate* cert, void* context, + void* pinArg), + void* verifyCertificateContext, void* pinArg, + const nsNSSShutDownPreventionLock& proofOfLock); + +} // namespace mozilla + +#endif // nsDataSignatureVerifier_h |