Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Verified Commit b042407e authored by Marvin W.'s avatar Marvin W. 🐿️
Browse files

SafetyNet: Update API

parent c2fdf461
Loading
Loading
Loading
Loading
+4 −5
Original line number Diff line number Diff line
@@ -19,6 +19,10 @@ import org.microg.gms.gcm.setGcmServiceConfiguration
class PushNotificationFragment : Fragment(R.layout.push_notification_fragment) {
    lateinit var binding: PushNotificationFragmentBinding

    init {
        setHasOptionsMenu(true)
    }

    override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle?): View? {
        binding = PushNotificationFragmentBinding.inflate(inflater, container, false)
        binding.switchBarCallback = object : PreferenceSwitchBarCallback {
@@ -52,11 +56,6 @@ class PushNotificationFragment : Fragment(R.layout.push_notification_fragment) {
        }
    }

    override fun onActivityCreated(savedInstanceState: Bundle?) {
        super.onActivityCreated(savedInstanceState)
        setHasOptionsMenu(true)
    }

    override fun onCreateOptionsMenu(menu: Menu, inflater: MenuInflater) {
        menu.add(0, MENU_ADVANCED, 0, R.string.menu_advanced)
        super.onCreateOptionsMenu(menu, inflater)
+4 −5
Original line number Diff line number Diff line
@@ -20,6 +20,10 @@ class SafetyNetFragment : Fragment(R.layout.safety_net_fragment) {

    private lateinit var binding: SafetyNetFragmentBinding

    init {
        setHasOptionsMenu(true)
    }

    override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle?): View? {
        binding = SafetyNetFragmentBinding.inflate(inflater, container, false)
        binding.switchBarCallback = object : PreferenceSwitchBarCallback {
@@ -52,11 +56,6 @@ class SafetyNetFragment : Fragment(R.layout.safety_net_fragment) {
        }
    }

    override fun onActivityCreated(savedInstanceState: Bundle?) {
        super.onActivityCreated(savedInstanceState)
        setHasOptionsMenu(true)
    }

    override fun onCreateOptionsMenu(menu: Menu, inflater: MenuInflater) {
        menu.add(0, MENU_ADVANCED, 0, R.string.menu_advanced)
        super.onCreateOptionsMenu(menu, inflater)
+13 −1
Original line number Diff line number Diff line
@@ -6,8 +6,20 @@ interface ISafetyNetService {
    void attest(ISafetyNetCallbacks callbacks, in byte[] nonce) = 0;
    void attestWithApiKey(ISafetyNetCallbacks callbacks, in byte[] nonce, String apiKey) = 6;
    void getSharedUuid(ISafetyNetCallbacks callbacks) = 1;
    void lookupUri(ISafetyNetCallbacks callbacks, String s1, in int[] threatTypes, int i, String s2) = 2;
    void lookupUri(ISafetyNetCallbacks callbacks, String apiKey, in int[] threatTypes, int i, String s2) = 2;
    void init(ISafetyNetCallbacks callbacks) = 3;
    void getHarmfulAppsList(ISafetyNetCallbacks callbacks) = 4;
    void verifyWithRecaptcha(ISafetyNetCallbacks callbacks, String siteKey) = 5;

//    void fun9(ISafetyNetCallbacks callbacks) = 8;
//    void fun10(ISafetyNetCallbacks callbacks, String s1, int i1, in byte[] b1) = 9;
//    void fun11(int i1, in Bundle b1) = 10;
//    void fun12(ISafetyNetCallbacks callbacks) = 11;
//    void fun13() = 12;
//    void fun14(ISafetyNetCallbacks callbacks) = 13;
//
//    void fun18(ISafetyNetCallbacks callbacks, int i1, String s1) = 17;
//    void fun19(ISafetyNetCallbacks callbacks, int i1) = 18;
//    void removeHarmfulApp(ISafetyNetCallbacks callbacks, String packageName, in byte[] digest) = 19;
//    void fun21(ISafetyNetCallbacks callbacks, in Bundle b1) = 20;
}
+1 −1
Original line number Diff line number Diff line
@@ -15,7 +15,7 @@ import com.google.android.gms.common.api.CommonStatusCodes;
 */
public class SafetyNetStatusCodes extends CommonStatusCodes {
    public static final int SAFE_BROWSING_UNSUPPORTED_THREAT_TYPES = 12000;
    public static final int SAFE_BROWSING_MISSING_API_KEYINT = 12001;
    public static final int SAFE_BROWSING_MISSING_API_KEY = 12001;
    public static final int SAFE_BROWSING_API_NOT_AVAILABLE = 12002;
    public static final int VERIFY_APPS_NOT_AVAILABLE = 12003;
    public static final int VERIFY_APPS_INTERNAL_ERROR = 12004;
+8 −2
Original line number Diff line number Diff line
@@ -21,6 +21,7 @@ import com.google.android.gms.common.internal.GetServiceRequest
import com.google.android.gms.common.internal.IGmsCallbacks
import com.google.android.gms.safetynet.AttestationData
import com.google.android.gms.safetynet.RecaptchaResultData
import com.google.android.gms.safetynet.SafeBrowsingData
import com.google.android.gms.safetynet.SafetyNetStatusCodes
import com.google.android.gms.safetynet.internal.ISafetyNetCallbacks
import com.google.android.gms.safetynet.internal.ISafetyNetService
@@ -92,7 +93,11 @@ class SafetyNetClientServiceImpl(private val context: Context, private val packa
                    is IOException -> SafetyNetStatusCodes.NETWORK_ERROR
                    else -> SafetyNetStatusCodes.ERROR
                }
                try {
                    callbacks.onAttestationData(Status(code, e.localizedMessage), null)
                } catch (e: Exception) {
                    Log.w(TAG, "Exception while sending error", e)
                }
            }
        }
    }
@@ -106,8 +111,9 @@ class SafetyNetClientServiceImpl(private val context: Context, private val packa
        callbacks.onString("aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa")
    }

    override fun lookupUri(callbacks: ISafetyNetCallbacks, s1: String, threatTypes: IntArray, i: Int, s2: String) {
    override fun lookupUri(callbacks: ISafetyNetCallbacks, apiKey: String, threatTypes: IntArray, i: Int, s2: String) {
        Log.d(TAG, "unimplemented Method: lookupUri")
        callbacks.onSafeBrowsingData(Status.SUCCESS, SafeBrowsingData())
    }

    override fun init(callbacks: ISafetyNetCallbacks) {