Loading app/src/main/java/it/niedermann/owncloud/notes/android/activity/SettingsActivity.java +4 −8 Original line number Diff line number Diff line Loading @@ -16,6 +16,8 @@ import android.util.Log; import android.view.KeyEvent; import android.view.View; import android.webkit.SslErrorHandler; import android.webkit.WebResourceRequest; import android.webkit.WebResourceResponse; import android.webkit.WebSettings; import android.webkit.WebView; import android.webkit.WebViewClient; Loading Loading @@ -308,7 +310,7 @@ public class SettingsActivity extends AppCompatActivity { try { final boolean[] accepted = new boolean[1]; NoteServerSyncHelper.getInstance(NoteSQLiteOpenHelper.getInstance(getApplicationContext())) .checkCertificate(cert.getEncoded(), new IOnCertificateDecision.Stub() { .checkCertificate(cert.getEncoded(), true, new IOnCertificateDecision.Stub() { @Override public void accept() { Log.d("Note", "cert accepted"); Loading @@ -322,15 +324,9 @@ public class SettingsActivity extends AppCompatActivity { handler.cancel(); } }); if (!accepted[0]) { // this should never happen, submit button is only enabled if url has been validated Log.e("Note", "No response from certificate service"); handler.cancel(); } } catch (Exception e) { Log.e("Note", "Cert could not be verified"); handler.cancel(); handler.proceed(); } } Loading app/src/main/java/it/niedermann/owncloud/notes/persistence/NoteServerSyncHelper.java +2 −2 Original line number Diff line number Diff line Loading @@ -174,8 +174,8 @@ public class NoteServerSyncHelper { return customCertManager; } public void checkCertificate(byte[] cert, IOnCertificateDecision callback) throws RemoteException { iCustomCertService.checkTrusted(cert, true, false, callback); public void checkCertificate(byte[] cert, boolean foreground, IOnCertificateDecision callback) throws RemoteException { iCustomCertService.checkTrusted(cert, true, foreground, callback); } /** Loading app/src/main/java/it/niedermann/owncloud/notes/util/SupportUtil.java +3 −2 Original line number Diff line number Diff line Loading @@ -4,13 +4,14 @@ import android.content.Context; import android.content.SharedPreferences; import android.os.Build; import android.preference.PreferenceManager; import androidx.annotation.WorkerThread; import android.text.Html; import android.text.Spanned; import android.text.method.LinkMovementMethod; import android.util.Log; import android.widget.TextView; import androidx.annotation.WorkerThread; import java.io.IOException; import java.net.HttpURLConnection; import java.net.MalformedURLException; Loading Loading @@ -93,6 +94,6 @@ public class SupportUtil { @WorkerThread public static CustomCertManager getCertManager(Context ctx) { SharedPreferences preferences = PreferenceManager.getDefaultSharedPreferences(ctx); return new CustomCertManager(ctx, preferences.getBoolean(ctx.getString(R.string.pref_key_trust_system_certs), true)); return new CustomCertManager(ctx, preferences.getBoolean(ctx.getString(R.string.pref_key_trust_system_certs), true), true, true); } } Loading
app/src/main/java/it/niedermann/owncloud/notes/android/activity/SettingsActivity.java +4 −8 Original line number Diff line number Diff line Loading @@ -16,6 +16,8 @@ import android.util.Log; import android.view.KeyEvent; import android.view.View; import android.webkit.SslErrorHandler; import android.webkit.WebResourceRequest; import android.webkit.WebResourceResponse; import android.webkit.WebSettings; import android.webkit.WebView; import android.webkit.WebViewClient; Loading Loading @@ -308,7 +310,7 @@ public class SettingsActivity extends AppCompatActivity { try { final boolean[] accepted = new boolean[1]; NoteServerSyncHelper.getInstance(NoteSQLiteOpenHelper.getInstance(getApplicationContext())) .checkCertificate(cert.getEncoded(), new IOnCertificateDecision.Stub() { .checkCertificate(cert.getEncoded(), true, new IOnCertificateDecision.Stub() { @Override public void accept() { Log.d("Note", "cert accepted"); Loading @@ -322,15 +324,9 @@ public class SettingsActivity extends AppCompatActivity { handler.cancel(); } }); if (!accepted[0]) { // this should never happen, submit button is only enabled if url has been validated Log.e("Note", "No response from certificate service"); handler.cancel(); } } catch (Exception e) { Log.e("Note", "Cert could not be verified"); handler.cancel(); handler.proceed(); } } Loading
app/src/main/java/it/niedermann/owncloud/notes/persistence/NoteServerSyncHelper.java +2 −2 Original line number Diff line number Diff line Loading @@ -174,8 +174,8 @@ public class NoteServerSyncHelper { return customCertManager; } public void checkCertificate(byte[] cert, IOnCertificateDecision callback) throws RemoteException { iCustomCertService.checkTrusted(cert, true, false, callback); public void checkCertificate(byte[] cert, boolean foreground, IOnCertificateDecision callback) throws RemoteException { iCustomCertService.checkTrusted(cert, true, foreground, callback); } /** Loading
app/src/main/java/it/niedermann/owncloud/notes/util/SupportUtil.java +3 −2 Original line number Diff line number Diff line Loading @@ -4,13 +4,14 @@ import android.content.Context; import android.content.SharedPreferences; import android.os.Build; import android.preference.PreferenceManager; import androidx.annotation.WorkerThread; import android.text.Html; import android.text.Spanned; import android.text.method.LinkMovementMethod; import android.util.Log; import android.widget.TextView; import androidx.annotation.WorkerThread; import java.io.IOException; import java.net.HttpURLConnection; import java.net.MalformedURLException; Loading Loading @@ -93,6 +94,6 @@ public class SupportUtil { @WorkerThread public static CustomCertManager getCertManager(Context ctx) { SharedPreferences preferences = PreferenceManager.getDefaultSharedPreferences(ctx); return new CustomCertManager(ctx, preferences.getBoolean(ctx.getString(R.string.pref_key_trust_system_certs), true)); return new CustomCertManager(ctx, preferences.getBoolean(ctx.getString(R.string.pref_key_trust_system_certs), true), true, true); } }