Add ethernet related APIs in prebuilts/sdk.

Add the module-lib and system APIs of ethernet which are moving to
mainline module, This is seen as an API incompatibility as the APIs
are removed from non-updatable APIs, and added to updatable APIs.

Bug: 210586283
Test: m
Test: atest FrameworksNetTests EthernetServiceTests
Change-Id: If1d1c7a878e0bc32cc76eb4234946f8c0a3c2e85
Merged-In: I70a75aa35da60fad2e42ac98cf542ce5ea77f022
diff --git a/32/module-lib/api/framework-connectivity-t.txt b/32/module-lib/api/framework-connectivity-t.txt
index 4a9584a..040e3b4 100644
--- a/32/module-lib/api/framework-connectivity-t.txt
+++ b/32/module-lib/api/framework-connectivity-t.txt
@@ -1,2 +1,11 @@
 // Signature format: 2.0
+package android.net {
+  public final class EthernetNetworkSpecifier extends android.net.NetworkSpecifier implements android.os.Parcelable {
+    ctor public EthernetNetworkSpecifier(@NonNull String);
+    method public int describeContents();
+    method @Nullable public String getInterfaceName();
+    method public void writeToParcel(@NonNull android.os.Parcel, int);
+    field @NonNull public static final android.os.Parcelable.Creator<android.net.EthernetNetworkSpecifier> CREATOR;
+  }
 
+}
diff --git a/32/system/api/framework-connectivity-t.txt b/32/system/api/framework-connectivity-t.txt
index a323bda..25fd483 100644
--- a/32/system/api/framework-connectivity-t.txt
+++ b/32/system/api/framework-connectivity-t.txt
@@ -1,5 +1,18 @@
 // Signature format: 2.0
 package android.net {
+  public class EthernetManager {
+    method @NonNull @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_STACK, android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK}) public android.net.EthernetManager.TetheredInterfaceRequest requestTetheredInterface(@NonNull java.util.concurrent.Executor, @NonNull android.net.EthernetManager.TetheredInterfaceCallback);
+  }
+
+  public static interface EthernetManager.TetheredInterfaceCallback {
+    method public void onAvailable(@NonNull String);
+    method public void onUnavailable();
+  }
+
+  public static class EthernetManager.TetheredInterfaceRequest {
+    method public void release();
+  }
+
   public final class IpSecManager {
     method @RequiresPermission(android.Manifest.permission.MANAGE_IPSEC_TUNNELS) public void applyTunnelModeTransform(@NonNull android.net.IpSecManager.IpSecTunnelInterface, int, @NonNull android.net.IpSecTransform) throws java.io.IOException;
     method @NonNull @RequiresPermission(android.Manifest.permission.MANAGE_IPSEC_TUNNELS) public android.net.IpSecManager.IpSecTunnelInterface createIpSecTunnelInterface(@NonNull java.net.InetAddress, @NonNull java.net.InetAddress, @NonNull android.net.Network) throws java.io.IOException, android.net.IpSecManager.ResourceUnavailableException;
diff --git a/33/module-lib/api/android-non-updatable-incompatibilities.txt b/33/module-lib/api/android-non-updatable-incompatibilities.txt
index 2487822..d69c087 100644
--- a/33/module-lib/api/android-non-updatable-incompatibilities.txt
+++ b/33/module-lib/api/android-non-updatable-incompatibilities.txt
@@ -1,4 +1,6 @@
 // Baseline format: 1.0
+RemovedClass: android.net.EthernetNetworkSpecifier:
+    Removed class android.net.EthernetNetworkSpecifier
 RemovedClass: android.app.usage.NetworkStatsManager:
     Removed class android.app.usage.NetworkStatsManager
 RemovedClass: android.net.NetworkStateSnapshot:
diff --git a/33/system/api/android-non-updatable-incompatibilities.txt b/33/system/api/android-non-updatable-incompatibilities.txt
index 896cf90..b47de56 100644
--- a/33/system/api/android-non-updatable-incompatibilities.txt
+++ b/33/system/api/android-non-updatable-incompatibilities.txt
@@ -20,3 +20,6 @@
 
 RemovedClass: android.net.IpSecManager:
     Removed class android.net.IpSecManager
+
+RemovedClass: android.net.EthernetManager:
+    Removed class android.net.EthernetManager