Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 0603d70e authored by Yan Yan's avatar Yan Yan Committed by Gerrit Code Review
Browse files

Merge changes from topic "migrate-vcn" into main

* changes:
  Allow SystemServer to create VCN service with a service initializer
  Migrate VCN to separate non-updatable libraries
parents af71583a a28a59ed
Loading
Loading
Loading
Loading
+0 −20
Original line number Original line Diff line number Diff line
@@ -49,7 +49,6 @@ aconfig_declarations_group {
        "android.media.tv.flags-aconfig-java",
        "android.media.tv.flags-aconfig-java",
        "android.multiuser.flags-aconfig-java",
        "android.multiuser.flags-aconfig-java",
        "android.net.platform.flags-aconfig-java",
        "android.net.platform.flags-aconfig-java",
        "android.net.vcn.flags-aconfig-java-export",
        "android.net.wifi.flags-aconfig-java",
        "android.net.wifi.flags-aconfig-java",
        "android.nfc.flags-aconfig-java",
        "android.nfc.flags-aconfig-java",
        "android.os.flags-aconfig-java",
        "android.os.flags-aconfig-java",
@@ -1068,25 +1067,6 @@ java_aconfig_library {
    defaults: ["framework-minus-apex-aconfig-java-defaults"],
    defaults: ["framework-minus-apex-aconfig-java-defaults"],
}
}


// VCN
// TODO:376339506 Move the VCN code, the flag declaration and
// java_aconfig_library to framework-connectivity-b
aconfig_declarations {
    name: "android.net.vcn.flags-aconfig",
    package: "android.net.vcn",
    container: "com.android.tethering",
    exportable: true,
    srcs: ["core/java/android/net/vcn/*.aconfig"],
}

java_aconfig_library {
    name: "android.net.vcn.flags-aconfig-java-export",
    aconfig_declarations: "android.net.vcn.flags-aconfig",
    mode: "exported",
    min_sdk_version: "35",
    defaults: ["framework-minus-apex-aconfig-java-defaults"],
}

// DevicePolicy
// DevicePolicy
aconfig_declarations {
aconfig_declarations {
    name: "device_policy_aconfig_flags",
    name: "device_policy_aconfig_flags",
+3 −1
Original line number Original line Diff line number Diff line
@@ -87,6 +87,7 @@ filegroup {
        ":framework-wifi-non-updatable-sources",
        ":framework-wifi-non-updatable-sources",
        ":PacProcessor-aidl-sources",
        ":PacProcessor-aidl-sources",
        ":ProxyHandler-aidl-sources",
        ":ProxyHandler-aidl-sources",
        ":vcn-utils-platform-sources",
        ":net-utils-framework-common-srcs",
        ":net-utils-framework-common-srcs",


        // AIDL from frameworks/base/native/
        // AIDL from frameworks/base/native/
@@ -314,6 +315,7 @@ java_defaults {
            ":framework-telephony-sources",
            ":framework-telephony-sources",
            ":framework-wifi-annotations",
            ":framework-wifi-annotations",
            ":framework-wifi-non-updatable-sources",
            ":framework-wifi-non-updatable-sources",
            ":vcn-utils-platform-sources",
            ":PacProcessor-aidl-sources",
            ":PacProcessor-aidl-sources",
            ":ProxyHandler-aidl-sources",
            ":ProxyHandler-aidl-sources",
            ":net-utils-framework-common-srcs",
            ":net-utils-framework-common-srcs",
@@ -582,7 +584,7 @@ filegroup {
    srcs: [
    srcs: [
        "core/java/com/android/internal/util/HexDump.java",
        "core/java/com/android/internal/util/HexDump.java",
        "core/java/com/android/internal/util/WakeupMessage.java",
        "core/java/com/android/internal/util/WakeupMessage.java",
        "core/java/android/net/vcn/util/PersistableBundleUtils.java",
        "packages/Vcn/framework-b/src/android/net/vcn/util/PersistableBundleUtils.java",
        "telephony/java/android/telephony/Annotation.java",
        "telephony/java/android/telephony/Annotation.java",
    ],
    ],
}
}
+0 −122
Original line number Original line Diff line number Diff line
@@ -29468,128 +29468,6 @@ package android.net.sip {
}
}
package android.net.vcn {
  public final class VcnCellUnderlyingNetworkTemplate extends android.net.vcn.VcnUnderlyingNetworkTemplate {
    method public int getCbs();
    method public int getDun();
    method public int getIms();
    method public int getInternet();
    method public int getMms();
    method @NonNull public java.util.Set<java.lang.String> getOperatorPlmnIds();
    method public int getOpportunistic();
    method public int getRcs();
    method public int getRoaming();
    method @NonNull public java.util.Set<java.lang.Integer> getSimSpecificCarrierIds();
  }
  public static final class VcnCellUnderlyingNetworkTemplate.Builder {
    ctor public VcnCellUnderlyingNetworkTemplate.Builder();
    method @NonNull public android.net.vcn.VcnCellUnderlyingNetworkTemplate build();
    method @NonNull public android.net.vcn.VcnCellUnderlyingNetworkTemplate.Builder setCbs(int);
    method @NonNull public android.net.vcn.VcnCellUnderlyingNetworkTemplate.Builder setDun(int);
    method @NonNull public android.net.vcn.VcnCellUnderlyingNetworkTemplate.Builder setIms(int);
    method @NonNull public android.net.vcn.VcnCellUnderlyingNetworkTemplate.Builder setInternet(int);
    method @NonNull public android.net.vcn.VcnCellUnderlyingNetworkTemplate.Builder setMetered(int);
    method @NonNull public android.net.vcn.VcnCellUnderlyingNetworkTemplate.Builder setMinDownstreamBandwidthKbps(int, int);
    method @NonNull public android.net.vcn.VcnCellUnderlyingNetworkTemplate.Builder setMinUpstreamBandwidthKbps(int, int);
    method @NonNull public android.net.vcn.VcnCellUnderlyingNetworkTemplate.Builder setMms(int);
    method @NonNull public android.net.vcn.VcnCellUnderlyingNetworkTemplate.Builder setOperatorPlmnIds(@NonNull java.util.Set<java.lang.String>);
    method @NonNull public android.net.vcn.VcnCellUnderlyingNetworkTemplate.Builder setOpportunistic(int);
    method @NonNull public android.net.vcn.VcnCellUnderlyingNetworkTemplate.Builder setRcs(int);
    method @NonNull public android.net.vcn.VcnCellUnderlyingNetworkTemplate.Builder setRoaming(int);
    method @NonNull public android.net.vcn.VcnCellUnderlyingNetworkTemplate.Builder setSimSpecificCarrierIds(@NonNull java.util.Set<java.lang.Integer>);
  }
  public final class VcnConfig implements android.os.Parcelable {
    method public int describeContents();
    method @NonNull public java.util.Set<android.net.vcn.VcnGatewayConnectionConfig> getGatewayConnectionConfigs();
    method @NonNull public java.util.Set<java.lang.Integer> getRestrictedUnderlyingNetworkTransports();
    method public void writeToParcel(@NonNull android.os.Parcel, int);
    field @NonNull public static final android.os.Parcelable.Creator<android.net.vcn.VcnConfig> CREATOR;
  }
  public static final class VcnConfig.Builder {
    ctor public VcnConfig.Builder(@NonNull android.content.Context);
    method @NonNull public android.net.vcn.VcnConfig.Builder addGatewayConnectionConfig(@NonNull android.net.vcn.VcnGatewayConnectionConfig);
    method @NonNull public android.net.vcn.VcnConfig build();
    method @NonNull public android.net.vcn.VcnConfig.Builder setRestrictedUnderlyingNetworkTransports(@NonNull java.util.Set<java.lang.Integer>);
  }
  public final class VcnGatewayConnectionConfig {
    method @NonNull public int[] getExposedCapabilities();
    method @NonNull public String getGatewayConnectionName();
    method @IntRange(from=0x500) public int getMaxMtu();
    method public int getMinUdpPort4500NatTimeoutSeconds();
    method @NonNull public long[] getRetryIntervalsMillis();
    method @NonNull public java.util.List<android.net.vcn.VcnUnderlyingNetworkTemplate> getVcnUnderlyingNetworkPriorities();
    method public boolean hasGatewayOption(int);
    method @FlaggedApi("android.net.vcn.safe_mode_config") public boolean isSafeModeEnabled();
    field @FlaggedApi("android.net.vcn.mainline_vcn_module_api") public static final int MIN_UDP_PORT_4500_NAT_TIMEOUT_UNSET = -1; // 0xffffffff
    field public static final int VCN_GATEWAY_OPTION_ENABLE_DATA_STALL_RECOVERY_WITH_MOBILITY = 0; // 0x0
  }
  public static final class VcnGatewayConnectionConfig.Builder {
    ctor public VcnGatewayConnectionConfig.Builder(@NonNull String, @NonNull android.net.ipsec.ike.IkeTunnelConnectionParams);
    method @NonNull public android.net.vcn.VcnGatewayConnectionConfig.Builder addExposedCapability(int);
    method @NonNull public android.net.vcn.VcnGatewayConnectionConfig.Builder addGatewayOption(int);
    method @NonNull public android.net.vcn.VcnGatewayConnectionConfig build();
    method @NonNull public android.net.vcn.VcnGatewayConnectionConfig.Builder removeExposedCapability(int);
    method @NonNull public android.net.vcn.VcnGatewayConnectionConfig.Builder removeGatewayOption(int);
    method @NonNull public android.net.vcn.VcnGatewayConnectionConfig.Builder setMaxMtu(@IntRange(from=0x500) int);
    method @NonNull public android.net.vcn.VcnGatewayConnectionConfig.Builder setMinUdpPort4500NatTimeoutSeconds(@IntRange(from=0x78) int);
    method @NonNull public android.net.vcn.VcnGatewayConnectionConfig.Builder setRetryIntervalsMillis(@NonNull long[]);
    method @FlaggedApi("android.net.vcn.safe_mode_config") @NonNull public android.net.vcn.VcnGatewayConnectionConfig.Builder setSafeModeEnabled(boolean);
    method @NonNull public android.net.vcn.VcnGatewayConnectionConfig.Builder setVcnUnderlyingNetworkPriorities(@NonNull java.util.List<android.net.vcn.VcnUnderlyingNetworkTemplate>);
  }
  public class VcnManager {
    method @RequiresPermission("carrier privileges") public void clearVcnConfig(@NonNull android.os.ParcelUuid) throws java.io.IOException;
    method @NonNull public java.util.List<android.os.ParcelUuid> getConfiguredSubscriptionGroups();
    method public void registerVcnStatusCallback(@NonNull android.os.ParcelUuid, @NonNull java.util.concurrent.Executor, @NonNull android.net.vcn.VcnManager.VcnStatusCallback);
    method @RequiresPermission("carrier privileges") public void setVcnConfig(@NonNull android.os.ParcelUuid, @NonNull android.net.vcn.VcnConfig) throws java.io.IOException;
    method public void unregisterVcnStatusCallback(@NonNull android.net.vcn.VcnManager.VcnStatusCallback);
    field public static final int VCN_ERROR_CODE_CONFIG_ERROR = 1; // 0x1
    field public static final int VCN_ERROR_CODE_INTERNAL_ERROR = 0; // 0x0
    field public static final int VCN_ERROR_CODE_NETWORK_ERROR = 2; // 0x2
    field public static final int VCN_STATUS_CODE_ACTIVE = 2; // 0x2
    field public static final int VCN_STATUS_CODE_INACTIVE = 1; // 0x1
    field public static final int VCN_STATUS_CODE_NOT_CONFIGURED = 0; // 0x0
    field public static final int VCN_STATUS_CODE_SAFE_MODE = 3; // 0x3
  }
  public abstract static class VcnManager.VcnStatusCallback {
    ctor public VcnManager.VcnStatusCallback();
    method public abstract void onGatewayConnectionError(@NonNull String, int, @Nullable Throwable);
    method public abstract void onStatusChanged(int);
  }
  public abstract class VcnUnderlyingNetworkTemplate {
    method public int getMetered();
    method public int getMinEntryDownstreamBandwidthKbps();
    method public int getMinEntryUpstreamBandwidthKbps();
    method public int getMinExitDownstreamBandwidthKbps();
    method public int getMinExitUpstreamBandwidthKbps();
    field public static final int MATCH_ANY = 0; // 0x0
    field public static final int MATCH_FORBIDDEN = 2; // 0x2
    field public static final int MATCH_REQUIRED = 1; // 0x1
  }
  public final class VcnWifiUnderlyingNetworkTemplate extends android.net.vcn.VcnUnderlyingNetworkTemplate {
    method @NonNull public java.util.Set<java.lang.String> getSsids();
  }
  public static final class VcnWifiUnderlyingNetworkTemplate.Builder {
    ctor public VcnWifiUnderlyingNetworkTemplate.Builder();
    method @NonNull public android.net.vcn.VcnWifiUnderlyingNetworkTemplate build();
    method @NonNull public android.net.vcn.VcnWifiUnderlyingNetworkTemplate.Builder setMetered(int);
    method @NonNull public android.net.vcn.VcnWifiUnderlyingNetworkTemplate.Builder setMinDownstreamBandwidthKbps(int, int);
    method @NonNull public android.net.vcn.VcnWifiUnderlyingNetworkTemplate.Builder setMinUpstreamBandwidthKbps(int, int);
    method @NonNull public android.net.vcn.VcnWifiUnderlyingNetworkTemplate.Builder setSsids(@NonNull java.util.Set<java.lang.String>);
  }
}
package android.opengl {
package android.opengl {
  public class EGL14 {
  public class EGL14 {
+0 −23
Original line number Original line Diff line number Diff line
@@ -273,10 +273,6 @@ package android.media.session {


package android.net {
package android.net {


  @FlaggedApi("android.net.vcn.mainline_vcn_module_api") public final class ConnectivityFrameworkInitializerBaklava {
    method @FlaggedApi("android.net.vcn.mainline_vcn_module_api") public static void registerServiceWrappers();
  }

  public class LocalSocket implements java.io.Closeable {
  public class LocalSocket implements java.io.Closeable {
    ctor public LocalSocket(@NonNull java.io.FileDescriptor);
    ctor public LocalSocket(@NonNull java.io.FileDescriptor);
  }
  }
@@ -336,25 +332,6 @@ package android.net.netstats {


}
}


package android.net.vcn {

  @FlaggedApi("android.net.vcn.mainline_vcn_module_api") public final class VcnTransportInfo implements android.os.Parcelable android.net.TransportInfo {
    method @FlaggedApi("android.net.vcn.mainline_vcn_module_api") public int describeContents();
    method @FlaggedApi("android.net.vcn.mainline_vcn_module_api") public long getApplicableRedactions();
    method @FlaggedApi("android.net.vcn.mainline_vcn_module_api") public int getMinUdpPort4500NatTimeoutSeconds();
    method @FlaggedApi("android.net.vcn.mainline_vcn_module_api") @NonNull public android.net.TransportInfo makeCopy(long);
    method @FlaggedApi("android.net.vcn.mainline_vcn_module_api") public void writeToParcel(@NonNull android.os.Parcel, int);
    field @FlaggedApi("android.net.vcn.mainline_vcn_module_api") @NonNull public static final android.os.Parcelable.Creator<android.net.vcn.VcnTransportInfo> CREATOR;
  }

  @FlaggedApi("android.net.vcn.mainline_vcn_module_api") public static final class VcnTransportInfo.Builder {
    ctor @FlaggedApi("android.net.vcn.mainline_vcn_module_api") public VcnTransportInfo.Builder();
    method @FlaggedApi("android.net.vcn.mainline_vcn_module_api") @NonNull public android.net.vcn.VcnTransportInfo build();
    method @FlaggedApi("android.net.vcn.mainline_vcn_module_api") @NonNull public android.net.vcn.VcnTransportInfo.Builder setMinUdpPort4500NatTimeoutSeconds(@IntRange(from=0x78) int);
  }

}

package android.nfc {
package android.nfc {


  public class NfcServiceManager {
  public class NfcServiceManager {
+0 −22
Original line number Original line Diff line number Diff line
@@ -9977,28 +9977,6 @@ package android.net.util {
}
}
package android.net.vcn {
  public class VcnManager {
    method @RequiresPermission(android.Manifest.permission.NETWORK_FACTORY) public void addVcnNetworkPolicyChangeListener(@NonNull java.util.concurrent.Executor, @NonNull android.net.vcn.VcnManager.VcnNetworkPolicyChangeListener);
    method @NonNull @RequiresPermission(android.Manifest.permission.NETWORK_FACTORY) public android.net.vcn.VcnNetworkPolicyResult applyVcnNetworkPolicy(@NonNull android.net.NetworkCapabilities, @NonNull android.net.LinkProperties);
    method @RequiresPermission(android.Manifest.permission.NETWORK_FACTORY) public void removeVcnNetworkPolicyChangeListener(@NonNull android.net.vcn.VcnManager.VcnNetworkPolicyChangeListener);
  }
  public static interface VcnManager.VcnNetworkPolicyChangeListener {
    method public void onPolicyChanged();
  }
  public final class VcnNetworkPolicyResult implements android.os.Parcelable {
    method public int describeContents();
    method @NonNull public android.net.NetworkCapabilities getNetworkCapabilities();
    method public boolean isTeardownRequested();
    method public void writeToParcel(@NonNull android.os.Parcel, int);
    field @NonNull public static final android.os.Parcelable.Creator<android.net.vcn.VcnNetworkPolicyResult> CREATOR;
  }
}
package android.net.wifi {
package android.net.wifi {
  public final class WifiKeystore {
  public final class WifiKeystore {
Loading