Adding a feature flag for enabling mDNS advertising offload.
This commit introduces a feature flag to control the enablement of mDNS
advertising offload. This offload is enabled by default on TV devices,
with future consideration for phones. Having a feature flag simplifies
development and provides flexibility for future deployments.
Test: TH
Flag: EXEMPT flag only change
Change-Id: I206db27531b51695b2dd1e186d7155622c500c7e
diff --git a/src/android/net/ip/IpClient.java b/src/android/net/ip/IpClient.java
index f80f22e..b03c664 100644
--- a/src/android/net/ip/IpClient.java
+++ b/src/android/net/ip/IpClient.java
@@ -88,6 +88,7 @@
import static com.android.networkstack.util.NetworkStackUtils.APF_HANDLE_ARP_OFFLOAD;
import static com.android.networkstack.util.NetworkStackUtils.APF_HANDLE_IGMP_OFFLOAD;
import static com.android.networkstack.util.NetworkStackUtils.APF_HANDLE_IGMP_OFFLOAD_VERSION;
+import static com.android.networkstack.util.NetworkStackUtils.APF_HANDLE_MDNS_ADVERTISING_OFFLOAD_VERSION;
import static com.android.networkstack.util.NetworkStackUtils.APF_HANDLE_MLD_OFFLOAD;
import static com.android.networkstack.util.NetworkStackUtils.APF_HANDLE_MLD_OFFLOAD_VERSION;
import static com.android.networkstack.util.NetworkStackUtils.APF_HANDLE_ND_OFFLOAD;
@@ -1117,7 +1118,8 @@
mContext, APF_HANDLE_ND_OFFLOAD);
// TODO: turn on APF mDNS offload on handhelds.
mIsTvDevice = context.getPackageManager().hasSystemFeature(FEATURE_LEANBACK);
- mApfHandleMdnsOffload = isAtLeast25Q2() && mIsTvDevice;
+ mApfHandleMdnsOffload = isAtLeast25Q2() && (mIsTvDevice || mDependencies.isFeatureEnabled(
+ context, APF_HANDLE_MDNS_ADVERTISING_OFFLOAD_VERSION));
mApfHandleIgmpOffload =
mDependencies.isFeatureNotChickenedOut(mContext, APF_HANDLE_IGMP_OFFLOAD)
&& (isAtLeast25Q2()
diff --git a/src/com/android/networkstack/util/NetworkStackUtils.java b/src/com/android/networkstack/util/NetworkStackUtils.java
index 2cf0eff..47971dc 100755
--- a/src/com/android/networkstack/util/NetworkStackUtils.java
+++ b/src/com/android/networkstack/util/NetworkStackUtils.java
@@ -291,6 +291,12 @@
public static final String APF_HANDLE_MLD_OFFLOAD_VERSION =
"apf_handle_mld_offload_version";
+ /**
+ * Experiment flag to enable the feature of handle MDNS advertising offload in Apf.
+ */
+ public static final String APF_HANDLE_MDNS_ADVERTISING_OFFLOAD_VERSION =
+ "apf_handle_mdns_advertising_offload_version";
+
/**** BEGIN Feature Kill Switch Flags ****/
/**