Ik probeer te communiceren met een C server onder linux en een Java client.
Hierbij maak ik geen gebruik van een certificaat. Naar mijn mening doe ik geen rare dingen zie de source hieronder.
De server herkent de client en geeft geen foutmeldingen.
Wanneer de client iets probeert te lezen van de socket naar de verbinding krijg ik de volgende melding:
- IOException: javax.net.ssl.SSLException: SSL V2.0 servers are not supported.
Ik maak gebruik van suns' SDK 1.4.0
de source:
import java.io.*;
import java.net.*;
import javax.net.ssl.*;
public class sslc
{
public static void main(String[] args)
{
int port = 1236;
String host = "10.20.255.28";
System.out.println("ssl client");
try
{
SSLSocketFactory sslFact = (SSLSocketFactory)SSLSocketFactory.getDefault();
SSLSocket s = (SSLSocket)sslFact.createSocket(host, port);
DataInputStream data_read = null;
data_read = new DataInputStream(s.getInputStream());
//lees van client
try
{
System.out.println("read: " + data_read.read());
}
catch (IOException ex)
{
System.out.println("read_input, IOException: " + ex);
}
}
catch (IOException e)
{
System.out.println("exc:" + e);
}
}
}
//einde source
P.S. ook vindt ik het erg lang duren voordat de verbinding is geopend (+/- een halve minuut), hoort dit bij ssl. Maar dit is minder belangrijk en laten we het bij 1 topic houden
Hierbij maak ik geen gebruik van een certificaat. Naar mijn mening doe ik geen rare dingen zie de source hieronder.
De server herkent de client en geeft geen foutmeldingen.
Wanneer de client iets probeert te lezen van de socket naar de verbinding krijg ik de volgende melding:
- IOException: javax.net.ssl.SSLException: SSL V2.0 servers are not supported.
Ik maak gebruik van suns' SDK 1.4.0
de source:
import java.io.*;
import java.net.*;
import javax.net.ssl.*;
public class sslc
{
public static void main(String[] args)
{
int port = 1236;
String host = "10.20.255.28";
System.out.println("ssl client");
try
{
SSLSocketFactory sslFact = (SSLSocketFactory)SSLSocketFactory.getDefault();
SSLSocket s = (SSLSocket)sslFact.createSocket(host, port);
DataInputStream data_read = null;
data_read = new DataInputStream(s.getInputStream());
//lees van client
try
{
System.out.println("read: " + data_read.read());
}
catch (IOException ex)
{
System.out.println("read_input, IOException: " + ex);
}
}
catch (IOException e)
{
System.out.println("exc:" + e);
}
}
}
//einde source
P.S. ook vindt ik het erg lang duren voordat de verbinding is geopend (+/- een halve minuut), hoort dit bij ssl. Maar dit is minder belangrijk en laten we het bij 1 topic houden