Thu, 22 Jan 2015 13:21:57 +0100
Incorporate requested changes from Mozilla in review:
https://bugzilla.mozilla.org/show_bug.cgi?id=1123480#c6
1 /* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
2 /* This Source Code Form is subject to the terms of the Mozilla Public
3 * License, v. 2.0. If a copy of the MPL was not distributed with this
4 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
6 #include "nsISupports.idl"
8 %{ C++
9 #define NS_CMSMESSAGE_CONTRACTID "@mozilla.org/nsCMSMessage;1"
10 %}
12 [ptr] native UnsignedCharPtr(unsigned char);
14 interface nsIX509Cert;
15 interface nsIArray;
17 /**
18 * nsICMSMessage
19 * Interface to a CMS Message
20 */
21 [uuid(a4557478-ae16-11d5-ba4b-00108303b117)]
22 interface nsICMSMessage : nsISupports
23 {
24 void contentIsSigned(out boolean aSigned);
25 void contentIsEncrypted(out boolean aEncrypted);
26 void getSignerCommonName(out string aName);
27 void getSignerEmailAddress(out string aEmail);
28 void getSignerCert(out nsIX509Cert scert);
29 void getEncryptionCert(out nsIX509Cert ecert);
30 void verifySignature();
31 void verifyDetachedSignature(in UnsignedCharPtr aDigestData, in unsigned long aDigestDataLen);
32 void CreateEncrypted(in nsIArray aRecipientCerts);
33 void CreateSigned(in nsIX509Cert scert, in nsIX509Cert ecert, in UnsignedCharPtr aDigestData, in unsigned long aDigestDataLen);
34 };