summaryrefslogtreecommitdiff
path: root/offapi/com/sun/star/embed
diff options
context:
space:
mode:
authorMikhail Voytenko <mav@openoffice.org>2011-03-09 17:29:09 +0100
committerMikhail Voytenko <mav@openoffice.org>2011-03-09 17:29:09 +0100
commit92c231e882e4e788259fbae6a793bb2699c059bb (patch)
treeb57e63cc9ce41955c6010d60e7a5307644a55c66 /offapi/com/sun/star/embed
parentaa2fc0e7863f1acd4712f59a10257ecdddc885f8 (diff)
mav60: #164341# support AES encryption
Diffstat (limited to 'offapi/com/sun/star/embed')
-rw-r--r--offapi/com/sun/star/embed/Storage.idl1
-rw-r--r--offapi/com/sun/star/embed/XEncryptionProtectedSource2.idl12
-rw-r--r--offapi/com/sun/star/embed/XEncryptionProtectedStorage.idl120
-rw-r--r--offapi/com/sun/star/embed/makefile.mk1
4 files changed, 128 insertions, 6 deletions
diff --git a/offapi/com/sun/star/embed/Storage.idl b/offapi/com/sun/star/embed/Storage.idl
index d34d736cf5cb..8a793d513476 100644
--- a/offapi/com/sun/star/embed/Storage.idl
+++ b/offapi/com/sun/star/embed/Storage.idl
@@ -356,7 +356,6 @@ published service Storage
</p>
*/
[property, optional, readonly] boolean HasNonEncryptedEntries;
-
};
//============================================================================
diff --git a/offapi/com/sun/star/embed/XEncryptionProtectedSource2.idl b/offapi/com/sun/star/embed/XEncryptionProtectedSource2.idl
index e590a5764178..5930e8490678 100644
--- a/offapi/com/sun/star/embed/XEncryptionProtectedSource2.idl
+++ b/offapi/com/sun/star/embed/XEncryptionProtectedSource2.idl
@@ -41,17 +41,19 @@ module com { module sun { module star { module embed {
//============================================================================
/** This interface allows to set a password for an object.
+
+ @since OOo 3.4
*/
-published interface XEncryptionProtectedSource2: XEncryptionProtectedSource
+interface XEncryptionProtectedSource2: XEncryptionProtectedSource
{
// -----------------------------------------------------------------------
/** sets an encryption data for the object.
- @param aEncryptionData
- the new encryption data
+ @param aEncryptionData
+ the new encryption data
- @throws ::com::sun::star::io::IOException
- in case the data could not be set
+ @throws ::com::sun::star::io::IOException
+ in case the data could not be set
*/
void setEncryptionData( [in] sequence< ::com::sun::star::beans::NamedValue > aEncryptionData )
raises( ::com::sun::star::io::IOException );
diff --git a/offapi/com/sun/star/embed/XEncryptionProtectedStorage.idl b/offapi/com/sun/star/embed/XEncryptionProtectedStorage.idl
new file mode 100644
index 000000000000..30ec5621f669
--- /dev/null
+++ b/offapi/com/sun/star/embed/XEncryptionProtectedStorage.idl
@@ -0,0 +1,120 @@
+/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_embed_XEncryptionProtectedStorage_idl__
+#define __com_sun_star_embed_XEncryptionProtectedStorage_idl__
+
+#ifndef __com_sun_star_embed_XEncryptionProtectedSource2_idl__
+#include <com/sun/star/embed/XEncryptionProtectedSource2.idl>
+#endif
+
+#ifndef __com_sun_star_beans_NamedValue_idl__
+#include <com/sun/star/beans/NamedValue.idl>
+#endif
+
+#ifndef __com_sun_star_lang_IllegalArgumentException_idl__
+#include <com/sun/star/lang/IllegalArgumentException.idl>
+#endif
+
+#ifndef __com_sun_star_xml_crypto_DigestID_idl__
+#include <com/sun/star/xml/crypto/DigestID.idl>
+#endif
+
+#ifndef __com_sun_star_xml_crypto_CipherID_idl__
+#include <com/sun/star/xml/crypto/CipherID.idl>
+#endif
+
+//============================================================================
+
+module com { module sun { module star { module embed {
+
+//============================================================================
+/** This interface allows to set a password for an object.
+
+ @since OOo 3.4
+ */
+interface XEncryptionProtectedStorage: XEncryptionProtectedSource2
+{
+ // -----------------------------------------------------------------------
+ /** allows to set the encryption algorithms for the object.
+ <p>
+ The algorithms will of course be used only for streams that have been
+ marked to be encrypted. If no stream in the storage is marked to be
+ encrypted, the algorithms-related information may have no effect to
+ the result package.
+ </p>
+
+ <p>
+ The following values could be part of the provided sequence:
+ </p>
+ <dl>
+ <dt>StartKeyGenerationAlgorithm</dt>
+ <dd>
+ specifies the algorithm that was used to generate
+ the EncryptionKey from the original password; in case
+ the contents should be decrypted, the algorithm might
+ be already known by the object; if a different one is
+ set an exception should be thrown to indicate the
+ error; it should take values from
+ <type scope="com::sun::star::xml:crypto">DigestID</type>.
+ </dd>
+ <dt>EncryptionAlgorithm</dt>
+ <dd>
+ specifies the algorithm that should be used to
+ encrypt/decrypt the contents; in case the contents
+ should be decrypted, the algorithm might be already
+ known by the object; if a different one is set
+ an exception should be thrown to indicate the error;
+ it should take values from
+ <type scope="com::sun::star::xml:crypto">CipherID</type>.
+ </dd>
+ <dt>ChecksumAlgorithm</dt>
+ <dd>
+ specifies the algorithm that was used to generate
+ the checksum of the encrypted data; in case
+ the contents should be decrypted, the algorithm might
+ be already known by the object; if a different one is
+ set an exception should be thrown to indicate the
+ error; it should take values from
+ <type scope="com::sun::star::xml:crypto">DigestID</type>.
+ </dd>
+ </dl>
+ */
+ void setEncryptionAlgorithms( [in] sequence< ::com::sun::star::beans::NamedValue > aAlgorithms )
+ raises( ::com::sun::star::lang::IllegalArgumentException );
+
+ // -----------------------------------------------------------------------
+ /** allows to get the encryption algorithms of the object.
+ */
+ sequence< ::com::sun::star::beans::NamedValue > getEncryptionAlgorithms();
+};
+
+//============================================================================
+
+}; }; }; };
+
+#endif
+
diff --git a/offapi/com/sun/star/embed/makefile.mk b/offapi/com/sun/star/embed/makefile.mk
index 8ee156af48ba..c142086cdbf8 100644
--- a/offapi/com/sun/star/embed/makefile.mk
+++ b/offapi/com/sun/star/embed/makefile.mk
@@ -78,6 +78,7 @@ IDLFILES=\
XLinkFactory.idl\
XEncryptionProtectedSource.idl\
XEncryptionProtectedSource2.idl\
+ XEncryptionProtectedStorage.idl\
XInplaceClient.idl\
XInsertObjectDialog.idl\
XWindowSupplier.idl\