diff --git a/mailnews/compose/macbuild/msgComposeIDL.mcp b/mailnews/compose/macbuild/msgComposeIDL.mcp index e12f23d761a0..ec30e9719db4 100644 Binary files a/mailnews/compose/macbuild/msgComposeIDL.mcp and b/mailnews/compose/macbuild/msgComposeIDL.mcp differ diff --git a/mailnews/compose/public/MANIFEST_IDL b/mailnews/compose/public/MANIFEST_IDL index 4c55359cb72f..be619dc63215 100644 --- a/mailnews/compose/public/MANIFEST_IDL +++ b/mailnews/compose/public/MANIFEST_IDL @@ -23,4 +23,4 @@ nsISmtpServer.idl nsISmtpUrl.idl nsISmtpService.idl - +nsIMsgComposeSecure.idl diff --git a/mailnews/compose/public/Makefile.in b/mailnews/compose/public/Makefile.in index b33fdc98e824..f146072c810e 100644 --- a/mailnews/compose/public/Makefile.in +++ b/mailnews/compose/public/Makefile.in @@ -50,6 +50,7 @@ XPIDLSRCS = \ nsISmtpUrl.idl \ nsISmtpService.idl \ nsIURLFetcher.idl \ + nsIMsgComposeSecure.idl \ $(NULL) include $(topsrcdir)/config/rules.mk diff --git a/mailnews/compose/public/makefile.win b/mailnews/compose/public/makefile.win index 16c5eeffd5e1..9f89ca096be6 100644 --- a/mailnews/compose/public/makefile.win +++ b/mailnews/compose/public/makefile.win @@ -27,20 +27,21 @@ XPIDLSRCS = \ .\nsIMsgComposeProgressParams.idl \ .\nsIMsgComposeParams.idl \ .\nsIMsgComposeService.idl \ - .\nsIMsgCompose.idl \ + .\nsIMsgCompose.idl \ .\nsIMsgCompFields.idl \ - .\nsIMsgQuote.idl \ + .\nsIMsgQuote.idl \ .\nsIMsgSendListener.idl \ .\nsIMsgSendLaterListener.idl \ - .\nsIMsgSend.idl \ - .\nsIMsgSendLater.idl \ + .\nsIMsgSend.idl \ + .\nsIMsgSendLater.idl \ .\nsIMsgSendReport.idl \ .\nsIMsgRecipientArray.idl \ - .\nsIMsgDraft.idl \ - .\nsISmtpServer.idl \ - .\nsISmtpUrl.idl \ - .\nsISmtpService.idl \ - .\nsIURLFetcher.idl \ + .\nsIMsgDraft.idl \ + .\nsISmtpServer.idl \ + .\nsISmtpUrl.idl \ + .\nsISmtpService.idl \ + .\nsIURLFetcher.idl \ + .\nsIMsgComposeSecure.idl \ $(NULL) ################################################################################ diff --git a/mailnews/compose/public/nsIMsgComposeSecure.idl b/mailnews/compose/public/nsIMsgComposeSecure.idl new file mode 100644 index 000000000000..46c80d4284de --- /dev/null +++ b/mailnews/compose/public/nsIMsgComposeSecure.idl @@ -0,0 +1,47 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*- + * + * The contents of this file are subject to the Netscape Public + * License Version 1.1 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.mozilla.org/NPL/ + * + * Software distributed under the License is distributed on an "AS + * IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or + * implied. See the License for the specific language governing + * rights and limitations under the License. + * + * The Original Code is mozilla.org code. + * + * The Initial Developer of the Original Code is Netscape + * Communications Corporation. Portions created by Netscape are + * Copyright (C) 1998 Netscape Communications Corporation. All + * Rights Reserved. + * + * Contributor(s): + * David Drinan + * Scott MacGregor + */ + +#include "nsISupports.idl" + +interface nsIMsgCompFields; +interface nsIMsgIdentity; + +%{C++ +class nsOutputFileStream; +%} + +[ptr] native nsOutputFileStream(nsOutputFileStream); + +/* Security interface */ +[noscript, uuid(ed899511-b473-4a93-ba02-d8cb90d58e1c)] +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 nsOutputFileStream aStream, in string aRecipients, in nsIMsgCompFields aCompFields, in nsIMsgIdentity aIdentity, in boolean aIsDraft); + void finishCryptoEncapsulation(in boolean aAbort); + void mimeCryptoWriteBlock(in string aBuf, in long aLen); +};