summaryrefslogtreecommitdiff
path: root/swext/mediawiki/src/com/sun/star/wiki/WikiProtocolSocketFactory.java
diff options
context:
space:
mode:
Diffstat (limited to 'swext/mediawiki/src/com/sun/star/wiki/WikiProtocolSocketFactory.java')
-rw-r--r--swext/mediawiki/src/com/sun/star/wiki/WikiProtocolSocketFactory.java168
1 files changed, 0 insertions, 168 deletions
diff --git a/swext/mediawiki/src/com/sun/star/wiki/WikiProtocolSocketFactory.java b/swext/mediawiki/src/com/sun/star/wiki/WikiProtocolSocketFactory.java
deleted file mode 100644
index bba7d08..0000000
--- a/swext/mediawiki/src/com/sun/star/wiki/WikiProtocolSocketFactory.java
+++ /dev/null
@@ -1,168 +0,0 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-package com.sun.star.wiki;
-
-import java.io.IOException;
-import java.net.InetAddress;
-import java.net.InetSocketAddress;
-import java.net.Socket;
-import java.net.UnknownHostException;
-import java.security.KeyStore;
-import javax.net.ssl.SSLContext;
-import javax.net.ssl.TrustManager;
-import javax.net.ssl.TrustManagerFactory;
-import javax.net.ssl.X509TrustManager;
-import java.security.cert.CertificateException;
-import java.security.cert.X509Certificate;
-import org.apache.commons.httpclient.ConnectTimeoutException;
-import org.apache.commons.httpclient.HttpClientError;
-import org.apache.commons.httpclient.params.HttpConnectionParams;
-import org.apache.commons.httpclient.protocol.SecureProtocolSocketFactory;
-
-class WikiProtocolSocketFactory implements SecureProtocolSocketFactory
-{
- private SSLContext m_aSSLContext;
-
- public WikiProtocolSocketFactory()
- {
- super();
- }
-
- public synchronized SSLContext GetNotSoSecureSSLContext()
- {
- if ( m_aSSLContext == null )
- {
- TrustManager[] pTrustUnknownCerts = new TrustManager[]
- {
- new X509TrustManager() {
- private X509TrustManager m_aOrgTrustManager;
-
- private X509TrustManager GetOrgTrustManager()
- {
- if ( m_aOrgTrustManager == null )
- {
- try
- {
- TrustManagerFactory aFactory = TrustManagerFactory.getInstance( TrustManagerFactory.getDefaultAlgorithm() );
- aFactory.init( (KeyStore)null );
- TrustManager[] pTrustmanagers = aFactory.getTrustManagers();
- if ( pTrustmanagers.length != 0 && pTrustmanagers[0] != null )
- m_aOrgTrustManager = (X509TrustManager)pTrustmanagers[0];
- }
- catch( Exception e )
- {
- throw new RuntimeException( "No access to the default trust manager!" );
- }
- }
-
- return m_aOrgTrustManager;
- }
-
- public X509Certificate[] getAcceptedIssuers()
- {
- return GetOrgTrustManager().getAcceptedIssuers();
- }
-
- public void checkClientTrusted(X509Certificate[] certs, String authType) throws CertificateException
- {
- GetOrgTrustManager().checkClientTrusted( certs, authType );
- }
-
- public void checkServerTrusted(X509Certificate[] certs, String authType) throws CertificateException
- {
- if ( certs == null || certs.length == 0 )
- GetOrgTrustManager().checkServerTrusted( certs, authType );
- else
- for ( int nInd = 0; nInd < certs.length; nInd++ )
- certs[nInd].checkValidity();
- }
- }
- };
-
- try
- {
- SSLContext aContext = SSLContext.getInstance("SSL");
- if ( aContext != null )
- {
- aContext.init( null, pTrustUnknownCerts, null );
- m_aSSLContext = aContext;
- }
- }
- catch ( Exception e )
- {
- }
- }
-
- if ( m_aSSLContext == null )
- throw new HttpClientError();
-
- return m_aSSLContext;
- }
-
- public Socket createSocket( String sHost, int nPort, InetAddress clientHost, int clientPort )
- throws IOException, UnknownHostException
- {
- return GetNotSoSecureSSLContext().getSocketFactory().createSocket( sHost, nPort, clientHost, clientPort );
- }
-
- public Socket createSocket( final String sHost, final int nPort, final InetAddress aLocalAddress, final int nLocalPort, final HttpConnectionParams params )
- throws IOException, UnknownHostException, ConnectTimeoutException
- {
- if ( params == null )
- return createSocket( sHost, nPort, aLocalAddress, nLocalPort );
-
- int nTimeout = params.getConnectionTimeout();
- Socket aSocket = GetNotSoSecureSSLContext().getSocketFactory().createSocket();
- aSocket.bind( new InetSocketAddress( aLocalAddress, nLocalPort ) );
- aSocket.connect( new InetSocketAddress( sHost, nPort ), nTimeout );
- return aSocket;
- }
-
- public Socket createSocket( String sHost, int nPort )
- throws IOException, UnknownHostException
- {
- return GetNotSoSecureSSLContext().getSocketFactory().createSocket( sHost, nPort );
- }
-
- public Socket createSocket( Socket aSocket, String sHost, int nPort, boolean bAutoClose )
- throws IOException, UnknownHostException
- {
- return GetNotSoSecureSSLContext().getSocketFactory().createSocket( aSocket, sHost, nPort, bAutoClose );
- }
-
- public boolean equals(Object obj)
- {
- return ((obj != null) && obj.getClass().equals(WikiProtocolSocketFactory.class));
- }
-
- public int hashCode()
- {
- return WikiProtocolSocketFactory.class.hashCode();
- }
-};
-