|
LibreOffice Module sc (master) 1
|
Base class for BIFF stream decryption. More...
#include <xistream.hxx>
Public Member Functions | |
| XclImpDecrypter () | |
| virtual | ~XclImpDecrypter () override |
| const ErrCode & | GetError () const |
| Returns the current error code of the decrypter. More... | |
| bool | IsValid () const |
| Returns true, if the decoder has been initialized correctly. More... | |
| XclImpDecrypterRef | Clone () const |
| Creates a (ref-counted) copy of this decrypter object. More... | |
| virtual ::comphelper::DocPasswordVerifierResult | verifyPassword (const OUString &rPassword, css::uno::Sequence< css::beans::NamedValue > &o_rEncryptionData) override |
| Implementation of the comphelper::IDocPasswordVerifier interface. More... | |
| virtual ::comphelper::DocPasswordVerifierResult | verifyEncryptionData (const css::uno::Sequence< css::beans::NamedValue > &rEncryptionData) override |
| void | Update (const SvStream &rStrm, sal_uInt16 nRecSize) |
| Updates the decrypter on start of a new record or after seeking stream. More... | |
| sal_uInt16 | Read (SvStream &rStrm, void *pData, sal_uInt16 nBytes) |
| Reads and decrypts nBytes bytes and stores data into the existing(!) buffer pData. More... | |
Public Member Functions inherited from comphelper::IDocPasswordVerifier | |
| virtual | ~IDocPasswordVerifier () |
| virtual DocPasswordVerifierResult | verifyPassword (const OUString &rPassword, css::uno::Sequence< css::beans::NamedValue > &o_rEncryptionData)=0 |
| virtual DocPasswordVerifierResult | verifyEncryptionData (const css::uno::Sequence< css::beans::NamedValue > &o_rEncryptionData)=0 |
Protected Member Functions | |
| XclImpDecrypter (const XclImpDecrypter &rSrc) | |
| Protected copy c'tor for OnClone(). More... | |
Private Member Functions | |
| virtual XclImpDecrypter * | OnClone () const =0 |
| Implementation of cloning this object. More... | |
| virtual css::uno::Sequence< css::beans::NamedValue > | OnVerifyPassword (const OUString &rPassword)=0 |
| Derived classes implement password verification and initialization of the decoder. More... | |
| virtual bool | OnVerifyEncryptionData (const css::uno::Sequence< css::beans::NamedValue > &rEncryptionData)=0 |
| virtual void | OnUpdate (std::size_t nOldStrmPos, std::size_t nNewStrmPos, sal_uInt16 nRecSize)=0 |
| Implementation of updating the decrypter. More... | |
| virtual sal_uInt16 | OnRead (SvStream &rStrm, sal_uInt8 *pnData, sal_uInt16 nBytes)=0 |
| Implementation of the decryption. More... | |
Private Attributes | |
| ErrCode | mnError |
| sal_uInt64 | mnOldPos |
| Decrypter error code. More... | |
| sal_uInt16 | mnRecSize |
| Last known stream position. More... | |
Base class for BIFF stream decryption.
Definition at line 44 of file xistream.hxx.
|
explicit |
Definition at line 38 of file xistream.cxx.
References STREAM_SEEK_TO_END.
|
overridevirtual |
Definition at line 53 of file xistream.cxx.
|
explicitprotected |
Protected copy c'tor for OnClone().
Definition at line 45 of file xistream.cxx.
References STREAM_SEEK_TO_END.
| XclImpDecrypterRef XclImpDecrypter::Clone | ( | ) | const |
Creates a (ref-counted) copy of this decrypter object.
Definition at line 57 of file xistream.cxx.
|
inline |
Returns the current error code of the decrypter.
Definition at line 51 of file xistream.hxx.
References mnError.
|
inline |
Returns true, if the decoder has been initialized correctly.
Definition at line 53 of file xistream.hxx.
References ERRCODE_NONE, and mnError.
Referenced by Clone(), Read(), Update(), XclImpBiff5Decrypter::XclImpBiff5Decrypter(), XclImpBiff8CryptoAPIDecrypter::XclImpBiff8CryptoAPIDecrypter(), and XclImpBiff8StdDecrypter::XclImpBiff8StdDecrypter().
|
privatepure virtual |
Implementation of cloning this object.
Implemented in XclImpBiff5Decrypter, XclImpBiff8StdDecrypter, and XclImpBiff8CryptoAPIDecrypter.
Referenced by Clone().
|
privatepure virtual |
Implementation of the decryption.
Implemented in XclImpBiff5Decrypter, and XclImpBiff8Decrypter.
Referenced by Read().
|
privatepure virtual |
Implementation of updating the decrypter.
Implemented in XclImpBiff5Decrypter, and XclImpBiff8Decrypter.
Referenced by Update().
|
privatepure virtual |
Implemented in XclImpBiff5Decrypter, and XclImpBiff8Decrypter.
Referenced by verifyEncryptionData().
|
privatepure virtual |
Derived classes implement password verification and initialization of the decoder.
Implemented in XclImpBiff5Decrypter, and XclImpBiff8Decrypter.
Referenced by verifyPassword().
| sal_uInt16 XclImpDecrypter::Read | ( | SvStream & | rStrm, |
| void * | pData, | ||
| sal_uInt16 | nBytes | ||
| ) |
Reads and decrypts nBytes bytes and stores data into the existing(!) buffer pData.
Definition at line 93 of file xistream.cxx.
References IsValid(), mnOldPos, mnRecSize, OnRead(), pData, SvStream::ReadBytes(), rStrm, SvStream::Tell(), and Update().
| void XclImpDecrypter::Update | ( | const SvStream & | rStrm, |
| sal_uInt16 | nRecSize | ||
| ) |
Updates the decrypter on start of a new record or after seeking stream.
Definition at line 79 of file xistream.cxx.
References IsValid(), mnOldPos, mnRecSize, OnUpdate(), rStrm, and SvStream::Tell().
Referenced by Read().
|
overridevirtual |
Implements comphelper::IDocPasswordVerifier.
Definition at line 72 of file xistream.cxx.
References ERRCODE_ABORT, ERRCODE_NONE, mnError, and OnVerifyEncryptionData().
|
overridevirtual |
Implementation of the comphelper::IDocPasswordVerifier interface.
Implements comphelper::IDocPasswordVerifier.
Definition at line 65 of file xistream.cxx.
References ERRCODE_ABORT, ERRCODE_NONE, mnError, and OnVerifyPassword().
|
private |
Definition at line 87 of file xistream.hxx.
Referenced by GetError(), IsValid(), verifyEncryptionData(), and verifyPassword().
|
private |
Decrypter error code.
Definition at line 88 of file xistream.hxx.
|
private |
Last known stream position.
Definition at line 89 of file xistream.hxx.