TrustKit-Android icon indicating copy to clipboard operation
TrustKit-Android copied to clipboard

Need help to initialize socket factory for multiple domain.

Open samina-momin-aera opened this issue 3 years ago • 0 comments

Hi Team,

I need your help, I'm working with React Native. I'm consuming APIs from different domain. I have to integrate SSL pinning for 'xyz.com' domain and want other services still should work without SSL pinning.

Currently I'm using below code to create builder.

private static String HOSTNAME = "xyz.com";

public OkHttpClient createNewNetworkModuleClient() { OkHttpClient.Builder client = new OkHttpClient.Builder() .connectTimeout(0, TimeUnit.MILLISECONDS) .readTimeout(0, TimeUnit.MILLISECONDS) .writeTimeout(0, TimeUnit.MILLISECONDS) .cookieJar(new ReactCookieJarContainer()) .addInterceptor(OkHttp3Helper.getPinningInterceptor()) .followRedirects(false) .followSslRedirects(false); .sslSocketFactory(TrustKit.getInstance().getSSLSocketFactory(HOSTNAME ),TrustKit.getInstance().getTrustManager(HOSTNAME )); return OkHttpClientProvider.enableTls12OnPreLollipop(client).build();

Currently unable to call google services with application. Even React Native Image component not loading image with SSL pinning.

.sslSocketFactory(TrustKit.getInstance().getSSLSocketFactory(HOSTNAME ),TrustKit.getInstance().getTrustManager(HOSTNAME ));

How can we bypass other domain SSL ? Or else if we add pin for respective domain in nextwork config file, How to defined two different domain here in sslSocketFactory.

Can you please help.

Thanks!

samina-momin-aera avatar Feb 03 '22 20:02 samina-momin-aera