mailnews/compose/public/nsIMsgComposeSecure.idl
author aleth <aleth@instantbird.org>
Thu, 11 Aug 2016 14:32:01 +0200
changeset 19871 50bcb56180491a4ae898c29cb72a30102457809d
parent 11396 1122b90aa47999efea1c682595c76c07503f866a
child 22879 12a18e736fca9a9ac8e0866caf470fa9342af842
permissions -rw-r--r--
Bug 1294260 - Allow compiler warnings in ldap. r=jorgk,r=aceman, a=jorgk CLOSED TREE DONTBUILD

/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
 *
 * 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/. */

#include "nsIMsgSendReport.idl"
#include "nsISupports.idl"

interface nsIMsgCompFields;
interface nsIMsgIdentity;
interface nsIOutputStream;

/* Security interface */
[scriptable, uuid(245f2adc-410e-4bdb-91e2-a7bb42d61787)]
interface nsIMsgComposeSecure : nsISupports 
{
    // requiresCryptoEncapsulation --> returns true if the current message send requires us to go through
	// some encryption work. In the case of false, you can disregard the compose secure object.
    boolean requiresCryptoEncapsulation(in nsIMsgIdentity aIdentity, in nsIMsgCompFields aCompFields);

    void beginCryptoEncapsulation(in nsIOutputStream aStream, in string aRecipients, in nsIMsgCompFields aCompFields, in nsIMsgIdentity aIdentity, in nsIMsgSendReport sendReport, in boolean aIsDraft);
    void finishCryptoEncapsulation(in boolean aAbort, in nsIMsgSendReport sendReport);
    void mimeCryptoWriteBlock(in string aBuf, in long aLen);
};