diff --git a/src/pt/argoscomics/build.gradle b/src/pt/argoscomics/build.gradle index 1c5c7251b..3afd78966 100644 --- a/src/pt/argoscomics/build.gradle +++ b/src/pt/argoscomics/build.gradle @@ -3,7 +3,7 @@ ext { extClass = '.ArgosComics' themePkg = 'madara' baseUrl = 'https://argoscomic.com' - overrideVersionCode = 4 + overrideVersionCode = 5 } apply from: "$rootDir/common.gradle" diff --git a/src/pt/argoscomics/src/eu/kanade/tachiyomi/extension/pt/argoscomics/ArgosComics.kt b/src/pt/argoscomics/src/eu/kanade/tachiyomi/extension/pt/argoscomics/ArgosComics.kt index db43fe516..31cab7fc4 100644 --- a/src/pt/argoscomics/src/eu/kanade/tachiyomi/extension/pt/argoscomics/ArgosComics.kt +++ b/src/pt/argoscomics/src/eu/kanade/tachiyomi/extension/pt/argoscomics/ArgosComics.kt @@ -1,11 +1,18 @@ package eu.kanade.tachiyomi.extension.pt.argoscomics +import android.annotation.SuppressLint import eu.kanade.tachiyomi.multisrc.madara.Madara import eu.kanade.tachiyomi.network.interceptor.rateLimit import okhttp3.MediaType.Companion.toMediaType +import okhttp3.OkHttpClient import okhttp3.ResponseBody.Companion.toResponseBody +import java.security.SecureRandom +import java.security.cert.X509Certificate import java.text.SimpleDateFormat import java.util.Locale +import javax.net.ssl.SSLContext +import javax.net.ssl.TrustManager +import javax.net.ssl.X509TrustManager class ArgosComics : Madara( "Argos Comics", @@ -13,8 +20,28 @@ class ArgosComics : Madara( "pt-BR", SimpleDateFormat("MMM dd, yyyy", Locale("pt", "BR")), ) { + + private fun OkHttpClient.Builder.ignoreAllSSLErrors(): OkHttpClient.Builder { + val naiveTrustManager = @SuppressLint("CustomX509TrustManager") + object : X509TrustManager { + override fun getAcceptedIssuers(): Array = emptyArray() + override fun checkClientTrusted(certs: Array, authType: String) = Unit + override fun checkServerTrusted(certs: Array, authType: String) = Unit + } + + val insecureSocketFactory = SSLContext.getInstance("TLSv1.2").apply { + val trustAllCerts = arrayOf(naiveTrustManager) + init(null, trustAllCerts, SecureRandom()) + }.socketFactory + + sslSocketFactory(insecureSocketFactory, naiveTrustManager) + hostnameVerifier { _, _ -> true } + return this + } + override val client = super.client.newBuilder() .rateLimit(3) + .ignoreAllSSLErrors() .addInterceptor { chain -> val response = chain.proceed(chain.request()) val mime = response.headers["Content-Type"]