logo
down
shadow

Why does SSLSocketFactory.createSocket returns a Socket instead of SSLSocket?


Why does SSLSocketFactory.createSocket returns a Socket instead of SSLSocket?

By : Acie Clayborne
Date : November 29 2020, 01:01 AM
I hope this helps . Because createSocket method is inherited from SocketFactory. It's impossible to override result type.
There could be a way around it using generics, but that would break existing API and all existing code.
code :


Share : facebook icon twitter icon
Is it possible to change plain socket to SSLSocket?

Is it possible to change plain socket to SSLSocket?


By : user3254651
Date : March 29 2020, 07:55 AM
I hope this helps you . There is a plain socket server listening on port 12345; ,
Is it possible to change plain socket to SSLSocket?
code :
ServerSocketFactory ssf = ServerSocketFactory.getDefault();
ServerSocket serverSocket = ssf.createServerSocket(12345);

// I've initialised an sslContext with a keystore, as you normally would.
Socket socket = serverSocket.accept();
SSLSocketFactory sslSf = sslContext.getSocketFactory();
// The host name doesn't really matter, since we're turning it into a server socket
// (No need to match the host name to the certificate on this side).
SSLSocket sslSocket = (SSLSocket) sslSf.createSocket(socket, null,
    socket.getPort(), false);
sslSocket.setUseClientMode(false);

// Use the sslSocket InputStream/OutputStream as usual.
SSLSocketFactory difference between flavors of createSocket

SSLSocketFactory difference between flavors of createSocket


By : Jet Propelled Insect
Date : March 29 2020, 07:55 AM
Hope that helps Significant delays in socket programming are almost always DNS delays. You need to be aware that Java does reverse DNS as well as forward DNS. Make sure you can resolve all relevant peer hostnames to IP addresses and vice versa at all hosts. The delay is incurred creating the Socket or the InetAddress it is to connect to, or both. If you do that separately you will see the delay there, before you call createSocket(socket, ...); if you let the SSLSocketFactory create its own Socket by calling createSocket(host, port, ...), the delay will occur at that point.
SMTP socket -- Authentocation & SSLSocket

SMTP socket -- Authentocation & SSLSocket


By : Maya
Date : March 29 2020, 07:55 AM
I wish this helpful for you Servers usually require some form of authentication but normally at a minimum will at least ensure that you are sending from the domain that you say you are sending from (by checking your IP address against the domain and also verifying that the domain is allowed). A lot of work has been done to prevent spammers from sending email on open email hosts.
Part of your problem is that you are sending SMTP commands when the mail server (MTA - mail transfer agent) is expecting you to be negotiating an SSL session. You might try using something like tcpdump or wireshark to examine an actual session.
code :
C - connect to server
S - shows SMTP prompt with a 2xx series prefix
C - send ELHO (or HELO for less capable servers)
S - should respond with a 2xx series of messages with capabilities one per line if your domain is ok
C - send STARTTLS
S - response with 2xx series message
createSocket() returns after a long time

createSocket() returns after a long time


By : Hans Månsson
Date : March 29 2020, 07:55 AM
To fix this issue Instead of calling socket(String, int) call socket() and then after, define the timeout, and call connect(InetSocketAddress, int) which takes an int for timeout.
code :
    try (SSLSocket sslSocket = (SSLSocket) sslCtx.getSocketFactory().createSocket()) {
        sslSocket.setSoTimeout(5_000);
        Certificate[] certificates = sslSocket.getSession().getPeerCertificates();
        System.out.println(certificates.length);
        sslSocket.connect(new InetSocketAddress("156.70.54.68", 443), 5_000);
    } catch (Exception e) {
        System.out.println(e);
    }
Create SSLSocket by SSLSocketFactory with set connection timeout

Create SSLSocket by SSLSocketFactory with set connection timeout


By : Lj Feller
Date : March 29 2020, 07:55 AM
like below fixes the issue In case you are still wondering, you can use the idea given in https://groups.google.com/forum/#!topic/android-developers/EYtMO5WoXXI
Related Posts Related Posts :
  • Why is it mandatory for ternary operations to return a value?
  • How can I make my listview rows different heights
  • Array declaration trick : Is it bad to use it?
  • Calling different classes with if else statements
  • Free API for speech recognition system
  • Java: Objects in JFrame are messed up
  • Is there a similar of MessageBox of ExtJS in ADF Faces
  • Passing HttpServletResponse in Spring Boot controller method
  • Failed to load libraries: [netty_tcnative_linux_arm_32, netty_tcnative_linux_arm_32_fedora, netty_tcnative_arm_32, netty
  • How to build a small documents storage?
  • Getting pixel position of a text in an image
  • How do I get a list of Methods called from a Class in Eclipse IDE?
  • Convert string to day of week (not exact date)
  • Unable to understand how rounding is working for decimal digits (Java)
  • How to avoid java.lang.NoSuchMethodError: org.apache.poi.util.IOUtils.copy(Ljava/io/InputStream;Ljava/io/OutputStream;)
  • JTable Renderer not working with RowSorter?
  • From java.util.concurrent.Future<T> to play.libs.F.Promise<T>: How to do that in Java?
  • jUnit tests work in Eclipse, but fail in ant - java.lang.RuntimeException: Stub
  • How do i add a tooltip to existing gwt Textbox?
  • actor replying to non-actor
  • Google Cloud Messaging - server connection
  • Which classes are unmodifiable and cannot be intrumented and is there a way to bypass it?
  • Java & Jersey 1.17: Custom default response headers
  • Java rounding error
  • Setting custom RejectedExecutionHandler for ThreadPoolExecutor after executing some tasks?
  • Arquillian test class variables lose value
  • java.util.ConcurrentModificationException while inserting in ArrayList
  • How to write generic Java API without method Overloading
  • Java Serialization / Deserialization of an ArrayList works only on first program execution
  • Conway's Game of Life's rules dont apply properly
  • call a java method when Click on a html button without using javascript
  • How to schedule a task in Tomcat
  • compare two pdf files (approach) using java
  • What is the use of allowCoreThreadTimeout( ) in ThreadPoolExecutor?
  • Describe the Strategy Design Pattern in Java?
  • MongoDB too many open connections
  • Issue with generate JAXB classes with value constructors
  • Moving from one frame to another in java swing
  • Get a thread by Id
  • how to open front camera and back camera at same time?
  • Messed up with Java Declaration
  • Extracting chart in EXcel as image using java
  • How to get latitude and longitude in Android phone?
  • Do GC pauses and kill -STOP produce the same behavior?
  • Android HTML.ImageGetter Images resized
  • The way to instantiate map<String, List<String>> in Java
  • Java Making objects move while buttons held
  • Androidx Navigation View - `setNavigationItemSelectedListener` Doesn't Work
  • after compiling code JFrame does not appear
  • Netbeans project, JFrames ran from the main JFrame close all JFrames in project
  • Square Retrofit Client: How to enable/disable followRedirects? How to intercept redirect URL?
  • Java Circular Reference - Can’t Compile
  • Mouse click on specific time JAVA
  • android 4 onCreateDialog return type incompatible when overriding
  • Java Implementation of Oracle's DBMS_UTILITY.GET_HASH_VALUE Function
  • javac cannot be run, and furthermore does not seem installed
  • Function to obtain a thread given its ID
  • Java File path to Executable has spaces
  • Minimum Oracle Java VM heap memory setting?
  • Elegant way to create one of a large number of classes
  • shadow
    Privacy Policy - Terms - Contact Us © ourworld-yourmove.org