Add shims to get and set the NAT64 prefix in LinkProperties.
Bug: 153694684
Test: m NetworkStack NetworkStackNext
Change-Id: I934fed7a0a8921d3dce7584b5f1b74a0ad67f14a
diff --git a/apishim/29/com/android/networkstack/apishim/api29/NetworkInformationShimImpl.java b/apishim/29/com/android/networkstack/apishim/api29/NetworkInformationShimImpl.java
index a4023b9..2e42576 100644
--- a/apishim/29/com/android/networkstack/apishim/api29/NetworkInformationShimImpl.java
+++ b/apishim/29/com/android/networkstack/apishim/api29/NetworkInformationShimImpl.java
@@ -16,6 +16,7 @@
package com.android.networkstack.apishim.api29;
+import android.net.IpPrefix;
import android.net.LinkProperties;
import android.net.NetworkCapabilities;
import android.net.Uri;
@@ -76,6 +77,18 @@
@Nullable
@Override
+ public IpPrefix getNat64Prefix(@NonNull LinkProperties lp) {
+ // Not supported on this API level
+ return null;
+ }
+
+ @Override
+ public void setNat64Prefix(@NonNull LinkProperties lp, @Nullable IpPrefix prefix) {
+ // Not supported on this API level: no-op
+ }
+
+ @Nullable
+ @Override
public String getSsid(@Nullable NetworkCapabilities nc) {
// Not supported on this API level
return null;
diff --git a/apishim/30/com/android/networkstack/apishim/NetworkInformationShimImpl.java b/apishim/30/com/android/networkstack/apishim/NetworkInformationShimImpl.java
index 42a11de..029a687 100644
--- a/apishim/30/com/android/networkstack/apishim/NetworkInformationShimImpl.java
+++ b/apishim/30/com/android/networkstack/apishim/NetworkInformationShimImpl.java
@@ -16,6 +16,7 @@
package com.android.networkstack.apishim;
+import android.net.IpPrefix;
import android.net.LinkProperties;
import android.net.NetworkCapabilities;
import android.net.Uri;
@@ -73,6 +74,17 @@
@Nullable
@Override
+ public IpPrefix getNat64Prefix(@NonNull LinkProperties lp) {
+ return lp.getNat64Prefix();
+ }
+
+ @Override
+ public void setNat64Prefix(@NonNull LinkProperties lp, @Nullable IpPrefix prefix) {
+ lp.setNat64Prefix(prefix);
+ }
+
+ @Nullable
+ @Override
public String getSsid(@Nullable NetworkCapabilities nc) {
if (nc == null) return null;
return nc.getSsid();
diff --git a/apishim/common/com/android/networkstack/apishim/NetworkInformationShim.java b/apishim/common/com/android/networkstack/apishim/NetworkInformationShim.java
index 315a6f8..7be73b2 100644
--- a/apishim/common/com/android/networkstack/apishim/NetworkInformationShim.java
+++ b/apishim/common/com/android/networkstack/apishim/NetworkInformationShim.java
@@ -16,6 +16,7 @@
package com.android.networkstack.apishim;
+import android.net.IpPrefix;
import android.net.LinkProperties;
import android.net.NetworkCapabilities;
import android.net.Uri;
@@ -48,6 +49,17 @@
CaptivePortalDataShim getCaptivePortalData(@Nullable LinkProperties lp);
/**
+ * @see LinkProperties#getNat64Prefix()
+ */
+ @Nullable
+ IpPrefix getNat64Prefix(@NonNull LinkProperties lp);
+
+ /**
+ * @see LinkProperties#setNat64Prefix()
+ */
+ void setNat64Prefix(@NonNull LinkProperties lp, @Nullable IpPrefix prefix);
+
+ /**
* @see NetworkCapabilities#getSSID()
*/
@Nullable
@@ -62,8 +74,6 @@
/**
* @see LinkProperties#setDhcpServerAddress()
*/
- @NonNull
- void setDhcpServerAddress(@NonNull LinkProperties lp,
- @NonNull Inet4Address serverAddress);
+ void setDhcpServerAddress(@NonNull LinkProperties lp, @NonNull Inet4Address serverAddress);
}