harmony-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Alexey Petrenko" <alexey.a.petre...@gmail.com>
Subject Re: [net] HTTPS connections
Date Mon, 04 Feb 2008 19:19:14 GMT
If https in Harmony can not work through ssl and this code will solve
the problem. Then this shoould be done as default for Harmony.

We should not expect any additiional tricks from the user to do
trivial job on Harmony....

SY, Alexey

2008/2/4, Vasily Zakharov <vmz@apache.org>:
> Well, I'm not an SSL guru, but studying the specs suggests that you'd
> need something like this:
>
> class MySSLSocketFactory extends javax.net.ssl.SSLSocketFactory {
>     SSLSocketFactory sf = (SSLSocketFactory) SSLSocketFactory.getDefault();
>     public String[] getDefaultCipherSuites() {
>         return sf.getDefaultCipherSuites();
>     }
>     public String[] getSupportedCipherSuites() {
>         return sf.getSupportedCipherSuites();
>     }
>     public Socket createSocket(Socket s, String host, int port,
> boolean autoClose) {
>         SSLSocket socket = (SSLSocket) sf.createSocket(s, host, port,
> autoClose);
>         socket.setEnabledProtocols(new String[] {"TLSv1"} );
>         return socket;
>     }
> }
>
> and then:
>
> javax.net.ssl.HttpsURLConnection.setDefaultSSLSocketFactory(new
> MySSLSocketFactory());
> URL url = new URL("https://issues.apache.org/jira/browse/HARMONY-62");
> InputStream is = url.openStream();
>
> Vasily
>
>
>
>
> On Feb 4, 2008 3:13 PM, Alexey Petrenko <alexey.a.petrenko@gmail.com> wrote:
> > Here is my test case:
> >
> > === cut ===
> > import java.io.FileOutputStream;
> > import java.io.InputStream;
> > import java.net.URL;
> >
> > public class HTTPSTest {
> >     public static void main(String argv[]) throws Exception {
> >         URL url = new URL("https://issues.apache.org/jira/browse/HARMONY-62");
> >         InputStream is = url.openStream();
> >
> >         FileOutputStream os = new FileOutputStream("HARMONY-62.html");
> >
> >         byte []buf = new byte[2048];
> >         int r;
> >         do {
> >             r = is.read(buf);
> >             if (r > 0)
> >                 os.write(buf, 0, r);
> >         } while (r != -1);
> >
> >         is.close();
> >         os.close();
> >     }
> > }
> > === cut ===
> >
> > Is there any way to set TLS as https transport in this case?
> >
> > SY, Alexey
> >
> > 2008/2/4, Vasily Zakharov <vmz@apache.org>:
> >
> > > I've tried Geronimo/Jetty a week ago, and HTTPS/TLS worked.
> > >
> > > Afaiu you must make sure you use TLS security, as Hamony doesn't have
> > > SSL support.
> > >
> > > Vasily
> > >
> > >
> > > On Feb 4, 2008 1:30 PM, Alexey Petrenko <alexey.a.petrenko@gmail.com>
wrote:
> > > > Guys,
> > > >
> > > > does anybody knows the status of HTTPS connections possibility in
> > > > Harmony? Are they working? :)
> > > >
> > > > I wrote a small test which loads a page from our JIRA. And it fails
> > > > with the following stack trace:
> > > >
> > > > === cut ===
> > > > Uncaught exception in main:
> > > > javax.net.ssl.SSLProtocolException: Unexpected message type has been
> > > > received: 72
> > > >         at org.apache.harmony.xnet.provider.jsse.SSLRecordProtocol.unwrap(SSLRecordProtocol.java:362)
> > > >         at org.apache.harmony.xnet.provider.jsse.SSLSocketImpl.doHandshake(SSLSocketImpl.java:719)
> > > >         at org.apache.harmony.xnet.provider.jsse.SSLSocketImpl.startHandshake(SSLSocketImpl.java:438)
> > > >         at org.apache.harmony.luni.internal.net.www.protocol.http.HttpConnection.getSecureSocket(HttpConnection.java:168)
> > > >         at org.apache.harmony.luni.internal.net.www.protocol.https.HttpsURLConnection$HttpsEngine.connect(HttpsURLConnection.java:398)
> > > >         at org.apache.harmony.luni.internal.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:871)
> > > >         at org.apache.harmony.luni.internal.net.www.protocol.https.HttpsURLConnection.getInputStream(HttpsURLConnection.java:252)
> > > >         at java.net.URL.openStream(URL.java:674)
> > > >         at HTTPSTest.main(HTTPSTest.java:8)
> > > > === cut ===
> > > >
> > > > Any ideas?
> > > >
> > > > Thanks in advance.
> > > >
> > > > SY, Alexey
> > > >
> > >
> >
>

Mime
View raw message