summaryrefslogtreecommitdiff
path: root/xmlsecurity
diff options
context:
space:
mode:
authorMiklos Vajna <vmiklos@collabora.co.uk>2018-03-28 22:44:14 +0200
committerMiklos Vajna <vmiklos@collabora.co.uk>2018-03-29 09:07:51 +0200
commit04bfd8bf7677f54295778b5d762e0b09278df895 (patch)
tree0f22af18693f0e8162ff16fb0d6c090997a895d0 /xmlsecurity
parent6a6380b7d692a3389516b59205671aa7d53d6920 (diff)
xmlsecurity nss: create SecurityEnvironment instances with a constructor
Change-Id: If4b18747292dd265d789b70078979361bd044fde Reviewed-on: https://gerrit.libreoffice.org/52039 Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk> Tested-by: Jenkins <ci@libreoffice.org>
Diffstat (limited to 'xmlsecurity')
-rw-r--r--xmlsecurity/source/xmlsec/nss/securityenvironment_nssimpl.cxx33
-rw-r--r--xmlsecurity/source/xmlsec/nss/securityenvironment_nssimpl.hxx12
-rw-r--r--xmlsecurity/source/xmlsec/nss/xsec_nss.cxx5
-rw-r--r--xmlsecurity/util/xsec_xmlsec.component3
4 files changed, 12 insertions, 41 deletions
diff --git a/xmlsecurity/source/xmlsec/nss/securityenvironment_nssimpl.cxx b/xmlsecurity/source/xmlsec/nss/securityenvironment_nssimpl.cxx
index 36d2e0a57ca4..cc5cb0a3f19e 100644
--- a/xmlsecurity/source/xmlsec/nss/securityenvironment_nssimpl.cxx
+++ b/xmlsecurity/source/xmlsec/nss/securityenvironment_nssimpl.cxx
@@ -106,7 +106,6 @@ char* GetPasswordFunction( PK11SlotInfo* pSlot, PRBool bRetry, void* /*arg*/ )
SecurityEnvironment_NssImpl::SecurityEnvironment_NssImpl() :
m_pHandler( nullptr ) , m_tSymKeyList() , m_tPubKeyList() , m_tPriKeyList() {
-
PK11_SetPasswordFunc( GetPasswordFunction ) ;
}
@@ -143,7 +142,7 @@ SecurityEnvironment_NssImpl::~SecurityEnvironment_NssImpl() {
/* XServiceInfo */
OUString SAL_CALL SecurityEnvironment_NssImpl::getImplementationName() {
- return impl_getImplementationName() ;
+ return OUString("com.sun.star.xml.crypto.SecurityEnvironment");
}
/* XServiceInfo */
@@ -159,27 +158,8 @@ sal_Bool SAL_CALL SecurityEnvironment_NssImpl::supportsService( const OUString&
/* XServiceInfo */
Sequence< OUString > SAL_CALL SecurityEnvironment_NssImpl::getSupportedServiceNames() {
- return impl_getSupportedServiceNames() ;
-}
-
-//Helper for XServiceInfo
-Sequence< OUString > SecurityEnvironment_NssImpl::impl_getSupportedServiceNames() {
- ::osl::Guard< ::osl::Mutex > aGuard( ::osl::Mutex::getGlobalMutex() ) ;
- Sequence<OUString> seqServiceNames { "com.sun.star.xml.crypto.SecurityEnvironment" };
- return seqServiceNames ;
-}
-
-OUString SecurityEnvironment_NssImpl::impl_getImplementationName() {
- return OUString("com.sun.star.xml.security.bridge.xmlsec.SecurityEnvironment_NssImpl") ;
-}
-
-//Helper for registry
-Reference< XInterface > SAL_CALL SecurityEnvironment_NssImpl::impl_createInstance( const Reference< XMultiServiceFactory >& ) {
- return Reference< XInterface >( *new SecurityEnvironment_NssImpl ) ;
-}
-
-Reference< XSingleServiceFactory > SecurityEnvironment_NssImpl::impl_createFactory( const Reference< XMultiServiceFactory >& aServiceManager ) {
- return ::cppu::createSingleFactory( aServiceManager , impl_getImplementationName() , impl_createInstance , impl_getSupportedServiceNames() ) ;
+ Sequence<OUString> seqServiceNames{ "com.sun.star.xml.crypto.SecurityEnvironment" };
+ return seqServiceNames;
}
/* XUnoTunnel */
@@ -961,4 +941,11 @@ void SecurityEnvironment_NssImpl::destroyKeysManager(xmlSecKeysMngrPtr pKeysMngr
}
}
+extern "C" SAL_DLLPUBLIC_EXPORT uno::XInterface*
+com_sun_star_xml_crypto_SecurityEnvironment_get_implementation(
+ uno::XComponentContext* /*pCtx*/, uno::Sequence<uno::Any> const& /*rSeq*/)
+{
+ return cppu::acquire(new SecurityEnvironment_NssImpl);
+}
+
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/xmlsecurity/source/xmlsec/nss/securityenvironment_nssimpl.hxx b/xmlsecurity/source/xmlsec/nss/securityenvironment_nssimpl.hxx
index 0e47cd9d4213..88f6a0762125 100644
--- a/xmlsecurity/source/xmlsec/nss/securityenvironment_nssimpl.hxx
+++ b/xmlsecurity/source/xmlsec/nss/securityenvironment_nssimpl.hxx
@@ -79,18 +79,6 @@ private:
virtual css::uno::Sequence< OUString > SAL_CALL getSupportedServiceNames() override ;
- //Helper for XServiceInfo
- static css::uno::Sequence< OUString > impl_getSupportedServiceNames() ;
-
- /// @throws css::uno::RuntimeException
- static OUString impl_getImplementationName() ;
-
- //Helper for registry
- /// @throws css::uno::RuntimeException
- static css::uno::Reference< css::uno::XInterface > SAL_CALL impl_createInstance( const css::uno::Reference< css::lang::XMultiServiceFactory >& aServiceManager ) ;
-
- static css::uno::Reference< css::lang::XSingleServiceFactory > impl_createFactory( const css::uno::Reference< css::lang::XMultiServiceFactory >& aServiceManager ) ;
-
virtual ::sal_Int32 SAL_CALL verifyCertificate(
const css::uno::Reference<
css::security::XCertificate >& xCert,
diff --git a/xmlsecurity/source/xmlsec/nss/xsec_nss.cxx b/xmlsecurity/source/xmlsec/nss/xsec_nss.cxx
index a6b489ffb189..db23623aada9 100644
--- a/xmlsecurity/source/xmlsec/nss/xsec_nss.cxx
+++ b/xmlsecurity/source/xmlsec/nss/xsec_nss.cxx
@@ -26,7 +26,6 @@
#include "seinitializer_nssimpl.hxx"
#include <xsec_xmlsec.hxx>
-#include "securityenvironment_nssimpl.hxx"
using namespace ::cppu;
using namespace ::com::sun::star::uno;
@@ -51,10 +50,6 @@ void* nss_component_getFactory( const sal_Char* pImplName , void* pServiceManage
OUString::createFromAscii( pImplName ),
SEInitializer_NssImpl_createInstance, SEInitializer_NssImpl_getSupportedServiceNames() ) );
}
- else if( SecurityEnvironment_NssImpl::impl_getImplementationName().equalsAscii( pImplName ) )
- {
- xFactory = SecurityEnvironment_NssImpl::impl_createFactory( static_cast< XMultiServiceFactory* >( pServiceManager ) ) ;
- }
#else
if( ONSSInitializer_getImplementationName().equalsAscii( pImplName ) )
{
diff --git a/xmlsecurity/util/xsec_xmlsec.component b/xmlsecurity/util/xsec_xmlsec.component
index 34ba5d18627f..00cedec72aac 100644
--- a/xmlsecurity/util/xsec_xmlsec.component
+++ b/xmlsecurity/util/xsec_xmlsec.component
@@ -26,7 +26,8 @@
<implementation name="com.sun.star.xml.security.SEInitializer_Gpg">
<service name="com.sun.star.xml.crypto.GPGSEInitializer"/>
</implementation>
- <implementation name="com.sun.star.xml.security.bridge.xmlsec.SecurityEnvironment_NssImpl">
+ <implementation name="com.sun.star.xml.crypto.SecurityEnvironment"
+ constructor="com_sun_star_xml_crypto_SecurityEnvironment_get_implementation">
<service name="com.sun.star.xml.crypto.SecurityEnvironment"/>
</implementation>
<implementation name="com.sun.star.xml.wrapper.XMLDocumentWrapper"