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

Commit 32508f57 authored by Ling Ma's avatar Ling Ma Committed by Automerger Merge Worker
Browse files

Anomaly report only check IP on setup response am: 7477bf15

parents e2557210 7477bf15
Loading
Loading
Loading
Loading
+9 −5
Original line number Diff line number Diff line
@@ -2390,7 +2390,7 @@ public class DataNetwork extends StateMachine {
        logl("onSetupResponse: resultCode=" + DataServiceCallback.resultCodeToString(resultCode)
                + ", response=" + response);
        mFailCause = getFailCauseFromDataCallResponse(resultCode, response);
        validateDataCallResponse(response);
        validateDataCallResponse(response, true /*isSetupResponse*/);
        if (mFailCause == DataFailCause.NONE) {
            DataNetwork dataNetwork = mDataNetworkController.getDataNetworkByInterface(
                    response.getInterfaceName());
@@ -2462,8 +2462,10 @@ public class DataNetwork extends StateMachine {
     * If the {@link DataCallResponse} contains invalid info, triggers an anomaly report.
     *
     * @param response The response to be validated
     * @param isSetupResponse {@code true} if the response is for initial data call setup
     */
    private void validateDataCallResponse(@Nullable DataCallResponse response) {
    private void validateDataCallResponse(@Nullable DataCallResponse response,
            boolean isSetupResponse) {
        if (response == null
                || response.getLinkStatus() == DataCallResponse.LINK_STATUS_INACTIVE) return;
        int failCause = response.getCause();
@@ -2483,8 +2485,10 @@ public class DataNetwork extends StateMachine {
                reportAnomaly("Invalid DataCallResponse detected",
                        "1f273e9d-b09c-46eb-ad1c-421d01f61164");
            }
            // Check IP for initial setup response
            NetworkRegistrationInfo nri = getNetworkRegistrationInfo();
            if (mDataProfile.getApnSetting() != null && nri != null && nri.isInService()) {
            if (isSetupResponse
                    && mDataProfile.getApnSetting() != null && nri != null && nri.isInService()) {
                boolean isRoaming = nri.getNetworkRegistrationState()
                        == NetworkRegistrationInfo.REGISTRATION_STATE_ROAMING;
                int protocol = isRoaming ? mDataProfile.getApnSetting().getRoamingProtocol()
@@ -2644,7 +2648,7 @@ public class DataNetwork extends StateMachine {
        if (response != null) {
            if (!response.equals(mDataCallResponse)) {
                log("onDataStateChanged: " + response);
                validateDataCallResponse(response);
                validateDataCallResponse(response, false /*isSetupResponse*/);
                mDataCallResponse = response;
                if (response.getLinkStatus() != DataCallResponse.LINK_STATUS_INACTIVE) {
                    updateDataNetwork(response);
@@ -3222,7 +3226,7 @@ public class DataNetwork extends StateMachine {
        logl("onHandoverResponse: resultCode=" + DataServiceCallback.resultCodeToString(resultCode)
                + ", response=" + response);
        mFailCause = getFailCauseFromDataCallResponse(resultCode, response);
        validateDataCallResponse(response);
        validateDataCallResponse(response, false /*isSetupResponse*/);
        if (mFailCause == DataFailCause.NONE) {
            // Handover succeeded.