ril: Add support for roamingProtocol parcel member
This is needed for Samsung devices like the Galaxy A5 2017.
Change-Id: I549130b838377d8a8668ac59b51c314fe9e7f5ab
diff --git a/ril/libril/Android.mk b/ril/libril/Android.mk
index 056390f..46a596c 100644
--- a/ril/libril/Android.mk
+++ b/ril/libril/Android.mk
@@ -50,6 +50,10 @@
LOCAL_CFLAGS += -DNEEDS_VIDEO_CALL_FIELD
endif
+ifeq ($(BOARD_NEEDS_ROAMING_PROTOCOL_FIELD), true)
+LOCAL_CFLAGS += -DNEEDS_ROAMING_PROTOCOL_FIELD
+endif
+
LOCAL_C_INCLUDES += $(LOCAL_PATH)/include
LOCAL_C_INCLUDES += external/nanopb-c
LOCAL_C_INCLUDES += $(LOCAL_PATH)/../include
diff --git a/ril/libril/ril_service.cpp b/ril/libril/ril_service.cpp
index f36ceb3..d1fa581 100644
--- a/ril/libril/ril_service.cpp
+++ b/ril/libril/ril_service.cpp
@@ -1941,6 +1941,13 @@
return Void();
}
+#ifdef NEEDS_ROAMING_PROTOCOL_FIELD
+ if (!copyHidlStringToRil(&iaa.roamingProtocol, dataProfileInfo.roamingProtocol, pRI)) {
+ memsetAndFreeStrings(4, iaa.apn, iaa.protocol, iaa.username, iaa.roamingProtocol);
+ return Void();
+ }
+#endif
+
CALL_ONREQUEST(RIL_REQUEST_SET_INITIAL_ATTACH_APN, &iaa, sizeof(iaa), pRI, mSlotId);
memsetAndFreeStrings(4, iaa.apn, iaa.protocol, iaa.username, iaa.password);