summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--xmlsecurity/inc/xmlsecurity/sigstruct.hxx40
1 files changed, 23 insertions, 17 deletions
diff --git a/xmlsecurity/inc/xmlsecurity/sigstruct.hxx b/xmlsecurity/inc/xmlsecurity/sigstruct.hxx
index 1b266e89c..6e358e525 100644
--- a/xmlsecurity/inc/xmlsecurity/sigstruct.hxx
+++ b/xmlsecurity/inc/xmlsecurity/sigstruct.hxx
@@ -4,9 +4,9 @@
*
* $RCSfile: sigstruct.hxx,v $
*
- * $Revision: 1.7 $
+ * $Revision: 1.8 $
*
- * last change: $Author: rt $ $Date: 2005-09-09 17:07:57 $
+ * last change: $Author: vg $ $Date: 2006-04-07 11:55:40 $
*
* The Contents of this file are made available subject to
* the terms of GNU Lesser General Public License Version 2.1.
@@ -84,24 +84,30 @@ typedef ::std::vector< SignatureReferenceInformation > SignatureReferenceInforma
struct SignatureInformation
{
- sal_Int32 nSecurityId;
- sal_Int32 nSecurityEnvironmentIndex;
-
- //sal_Int32 nStatus;
+ sal_Int32 nSecurityId;
+ sal_Int32 nSecurityEnvironmentIndex;
::com::sun::star::xml::crypto::SecurityOperationStatus nStatus;
-
SignatureReferenceInformations vSignatureReferenceInfors;
- rtl::OUString ouX509IssuerName;
- rtl::OUString ouX509SerialNumber;
- rtl::OUString ouX509Certificate;
- rtl::OUString ouSignatureValue;
-
- //rtl::OUString ouDate;
- //rtl::OUString ouTime;
+ rtl::OUString ouX509IssuerName;
+ rtl::OUString ouX509SerialNumber;
+ rtl::OUString ouX509Certificate;
+ rtl::OUString ouSignatureValue;
::com::sun::star::util::DateTime stDateTime;
-
- rtl::OUString ouSignatureId;
- rtl::OUString ouPropertyId;
+
+ //We also keep the date and time as string. This is done when this
+ //structure is created as a result of a XML signature being read.
+ //When then a signature is added or another removed, then the original
+ //XML signatures are written again (unless they have been removed).
+ //If the date time string is converted into the DateTime structure
+ //then information can be lost because it only holds a fractional
+ //of a second with a accuracy of one hundredth of second.
+ //If the string contains
+ //milli seconds (because the document was created by an application other than OOo)
+ //and the converted time is written back, then the string looks different
+ //and the signature is broken.
+ rtl::OUString ouDateTime;
+ rtl::OUString ouSignatureId;
+ rtl::OUString ouPropertyId;
SignatureInformation( sal_Int32 nId )
{