diff options
Diffstat (limited to 'xmlsecurity/source/helper/xsecparser.cxx')
-rw-r--r-- | xmlsecurity/source/helper/xsecparser.cxx | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/xmlsecurity/source/helper/xsecparser.cxx b/xmlsecurity/source/helper/xsecparser.cxx index 360d39e326f4..00054b4f3ef4 100644 --- a/xmlsecurity/source/helper/xsecparser.cxx +++ b/xmlsecurity/source/helper/xsecparser.cxx @@ -36,6 +36,7 @@ XSecParser::XSecParser(XMLSignatureHelper& rXMLSignatureHelper, , m_bInX509Certificate(false) , m_bInGpgCertificate(false) , m_bInGpgKeyID(false) + , m_bInGpgOwner(false) , m_bInCertDigest(false) , m_bInEncapsulatedX509Certificate(false) , m_bInSigningTime(false) @@ -72,6 +73,7 @@ void SAL_CALL XSecParser::startDocument( ) m_bInX509Certificate = false; m_bInGpgCertificate = false; m_bInGpgKeyID = false; + m_bInGpgOwner = false; m_bInSignatureValue = false; m_bInDigestValue = false; m_bInDate = false; @@ -192,6 +194,11 @@ void SAL_CALL XSecParser::startElement( m_ouGpgCertificate.clear(); m_bInGpgCertificate = true; } + else if (aName == "PGPOwner") + { + m_ouGpgOwner.clear(); + m_bInGpgOwner = true; + } else if (aName == "SignatureValue") { m_ouSignatureValue.clear(); @@ -315,6 +322,11 @@ void SAL_CALL XSecParser::endElement( const OUString& aName ) m_pXSecController->setGpgCertificate( m_ouGpgCertificate ); m_bInGpgCertificate = false; } + else if (aName == "PGPOwner") + { + m_pXSecController->setGpgOwner( m_ouGpgOwner ); + m_bInGpgOwner = false; + } else if (aName == "xd:CertDigest") { m_pXSecController->setCertDigest( m_ouCertDigest ); @@ -386,6 +398,10 @@ void SAL_CALL XSecParser::characters( const OUString& aChars ) { m_ouGpgKeyID += aChars; } + else if (m_bInGpgOwner) + { + m_ouGpgOwner += aChars; + } else if (m_bInSignatureValue) { m_ouSignatureValue += aChars; |