| /************************************************************** |
| * |
| * Licensed to the Apache Software Foundation (ASF) under one |
| * or more contributor license agreements. See the NOTICE file |
| * distributed with this work for additional information |
| * regarding copyright ownership. The ASF licenses this file |
| * to you under the Apache License, Version 2.0 (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.apache.org/licenses/LICENSE-2.0 |
| * |
| * Unless required by applicable law or agreed to in writing, |
| * software distributed under the License is distributed on an |
| * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
| * KIND, either express or implied. See the License for the |
| * specific language governing permissions and limitations |
| * under the 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 OpenOffice 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 |
| |