xref: /aosp_15_r20/prebuilts/sdk/32/system/api/framework-connectivity-t.txt (revision 344a7f5ef16c479e7a7f54ee6567a9d112f9e72b)
1*344a7f5eSAndroid Build Coastguard Worker// Signature format: 2.0
2*344a7f5eSAndroid Build Coastguard Workerpackage android.net {
3*344a7f5eSAndroid Build Coastguard Worker  public class EthernetManager {
4*344a7f5eSAndroid Build Coastguard Worker    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);
5*344a7f5eSAndroid Build Coastguard Worker  }
6*344a7f5eSAndroid Build Coastguard Worker
7*344a7f5eSAndroid Build Coastguard Worker  public static interface EthernetManager.TetheredInterfaceCallback {
8*344a7f5eSAndroid Build Coastguard Worker    method public void onAvailable(@NonNull String);
9*344a7f5eSAndroid Build Coastguard Worker    method public void onUnavailable();
10*344a7f5eSAndroid Build Coastguard Worker  }
11*344a7f5eSAndroid Build Coastguard Worker
12*344a7f5eSAndroid Build Coastguard Worker  public static class EthernetManager.TetheredInterfaceRequest {
13*344a7f5eSAndroid Build Coastguard Worker    method public void release();
14*344a7f5eSAndroid Build Coastguard Worker  }
15*344a7f5eSAndroid Build Coastguard Worker
16*344a7f5eSAndroid Build Coastguard Worker  public final class IpSecManager {
17*344a7f5eSAndroid Build Coastguard Worker    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;
18*344a7f5eSAndroid Build Coastguard Worker    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;
19*344a7f5eSAndroid Build Coastguard Worker  }
20*344a7f5eSAndroid Build Coastguard Worker
21*344a7f5eSAndroid Build Coastguard Worker  public static final class IpSecManager.IpSecTunnelInterface implements java.lang.AutoCloseable {
22*344a7f5eSAndroid Build Coastguard Worker    method @RequiresPermission(android.Manifest.permission.MANAGE_IPSEC_TUNNELS) public void addAddress(@NonNull java.net.InetAddress, int) throws java.io.IOException;
23*344a7f5eSAndroid Build Coastguard Worker    method public void close();
24*344a7f5eSAndroid Build Coastguard Worker    method @NonNull public String getInterfaceName();
25*344a7f5eSAndroid Build Coastguard Worker    method @RequiresPermission(android.Manifest.permission.MANAGE_IPSEC_TUNNELS) public void removeAddress(@NonNull java.net.InetAddress, int) throws java.io.IOException;
26*344a7f5eSAndroid Build Coastguard Worker    method @RequiresPermission(android.Manifest.permission.MANAGE_IPSEC_TUNNELS) public void setUnderlyingNetwork(@NonNull android.net.Network) throws java.io.IOException;
27*344a7f5eSAndroid Build Coastguard Worker  }
28*344a7f5eSAndroid Build Coastguard Worker
29*344a7f5eSAndroid Build Coastguard Worker  public static class IpSecTransform.Builder {
30*344a7f5eSAndroid Build Coastguard Worker    method @NonNull @RequiresPermission(android.Manifest.permission.MANAGE_IPSEC_TUNNELS) public android.net.IpSecTransform buildTunnelModeTransform(@NonNull java.net.InetAddress, @NonNull android.net.IpSecManager.SecurityParameterIndex) throws java.io.IOException, android.net.IpSecManager.ResourceUnavailableException, android.net.IpSecManager.SpiUnavailableException;
31*344a7f5eSAndroid Build Coastguard Worker  }
32*344a7f5eSAndroid Build Coastguard Worker}
33