1adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project/*
2adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project *  Licensed to the Apache Software Foundation (ASF) under one or more
3adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project *  contributor license agreements.  See the NOTICE file distributed with
4adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project *  this work for additional information regarding copyright ownership.
5adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project *  The ASF licenses this file to You under the Apache License, Version 2.0
6adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project *  (the "License"); you may not use this file except in compliance with
7adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project *  the License.  You may obtain a copy of the License at
8adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project *
9adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project *     http://www.apache.org/licenses/LICENSE-2.0
10adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project *
11adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project *  Unless required by applicable law or agreed to in writing, software
12adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project *  distributed under the License is distributed on an "AS IS" BASIS,
13adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project *  See the License for the specific language governing permissions and
15adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project *  limitations under the License.
16adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project */
17adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project
18adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Projectpackage javax.net.ssl;
19adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project
20adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Projectimport java.io.IOException;
21adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Projectimport java.net.InetAddress;
22adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Projectimport java.net.Socket;
23adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Projectimport java.net.SocketException;
24adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Projectimport java.net.UnknownHostException;
256186821cb13f4ac7ff50950c813394367e021eaeJesse Wilsonimport libcore.util.EmptyArray;
26adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project
27adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project/**
28adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project * Default inoperative implementation of javax.net.ssl.SSLSocketFactory
29f33eae7e84eb6d3b0f4e86b59605bb3de73009f3Elliott Hughes *
30adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project */
31adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Projectclass DefaultSSLSocketFactory extends SSLSocketFactory {
32f921579f87fa63204b4a4bef39ed27e7835aec45Jesse Wilson
33f921579f87fa63204b4a4bef39ed27e7835aec45Jesse Wilson    private final String errMessage;
34f921579f87fa63204b4a4bef39ed27e7835aec45Jesse Wilson
35f921579f87fa63204b4a4bef39ed27e7835aec45Jesse Wilson    DefaultSSLSocketFactory(String mes) {
36f921579f87fa63204b4a4bef39ed27e7835aec45Jesse Wilson        errMessage = mes;
37f921579f87fa63204b4a4bef39ed27e7835aec45Jesse Wilson    }
38f921579f87fa63204b4a4bef39ed27e7835aec45Jesse Wilson
39f921579f87fa63204b4a4bef39ed27e7835aec45Jesse Wilson    @Override
40adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project    public String[] getDefaultCipherSuites() {
41693eacca9fa67ad79d1b35dbaad61c5ac1ac457cElliott Hughes        return EmptyArray.STRING;
42adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project    }
43adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project
44f921579f87fa63204b4a4bef39ed27e7835aec45Jesse Wilson    @Override
45adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project    public String[] getSupportedCipherSuites() {
46693eacca9fa67ad79d1b35dbaad61c5ac1ac457cElliott Hughes        return EmptyArray.STRING;
47adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project    }
48adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project
49f921579f87fa63204b4a4bef39ed27e7835aec45Jesse Wilson    @Override
50f921579f87fa63204b4a4bef39ed27e7835aec45Jesse Wilson    public Socket createSocket(Socket s, String host, int port, boolean autoClose)
51f921579f87fa63204b4a4bef39ed27e7835aec45Jesse Wilson            throws IOException {
52adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project        throw new SocketException(errMessage);
53adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project    }
54adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project
55f921579f87fa63204b4a4bef39ed27e7835aec45Jesse Wilson    @Override
56f921579f87fa63204b4a4bef39ed27e7835aec45Jesse Wilson    public Socket createSocket(String host, int port) throws IOException, UnknownHostException {
57adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project        throw new SocketException(errMessage);
58adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project    }
59adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project
60f921579f87fa63204b4a4bef39ed27e7835aec45Jesse Wilson    @Override
61f921579f87fa63204b4a4bef39ed27e7835aec45Jesse Wilson    public Socket createSocket(String host, int port, InetAddress localHost, int localPort)
62f921579f87fa63204b4a4bef39ed27e7835aec45Jesse Wilson            throws IOException, UnknownHostException {
63adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project        throw new SocketException(errMessage);
64adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project    }
65adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project
66f921579f87fa63204b4a4bef39ed27e7835aec45Jesse Wilson    @Override
67adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project    public Socket createSocket(InetAddress host, int port) throws IOException {
68adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project        throw new SocketException(errMessage);
69adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project    }
70adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project
71f921579f87fa63204b4a4bef39ed27e7835aec45Jesse Wilson    @Override
72f921579f87fa63204b4a4bef39ed27e7835aec45Jesse Wilson    public Socket createSocket(InetAddress address, int port, InetAddress localAddress,
73f921579f87fa63204b4a4bef39ed27e7835aec45Jesse Wilson            int localPort) throws IOException {
74adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project        throw new SocketException(errMessage);
75adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project    }
76adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project
77adc854b798c1cfe3bfd4c27d68d5cee38ca617daThe Android Open Source Project}
78