From 1c9fb59004974701c529baee54b2bb8044ce5da9 Mon Sep 17 00:00:00 2001 From: Yang Sun Date: Mon, 19 Feb 2024 10:37:26 +0800 Subject: [PATCH] Include structs lib in service-connectivity-pre-jarjar To use the java struct definitions for multicast routing in connectivity service, a new lib is defined and included in service-connectivity-pre-jarjar. Bug: 323503345 Test: presubmit Change-Id: I664602fd0fa0a5da136ea28fd3c4d9068c5b46ab --- framework/Android.bp | 2 -- service/Android.bp | 1 + staticlibs/Android.bp | 27 +++++++++++++++++++++++++++ 3 files changed, 28 insertions(+), 2 deletions(-) diff --git a/framework/Android.bp b/framework/Android.bp index 1356eea1ef..4dbe2db8e3 100644 --- a/framework/Android.bp +++ b/framework/Android.bp @@ -96,7 +96,6 @@ java_defaults { ], impl_only_static_libs: [ "net-utils-device-common-bpf", - "net-utils-device-common-struct", ], libs: [ "androidx.annotation_annotation", @@ -125,7 +124,6 @@ java_library { // Even if the library is included in "impl_only_static_libs" of defaults. This is still // needed because java_library which doesn't understand "impl_only_static_libs". "net-utils-device-common-bpf", - "net-utils-device-common-struct", ], libs: [ // This cannot be in the defaults clause above because if it were, it would be used diff --git a/service/Android.bp b/service/Android.bp index c6ecaddf21..89c83bda81 100644 --- a/service/Android.bp +++ b/service/Android.bp @@ -197,6 +197,7 @@ java_library { "PlatformProperties", "service-connectivity-protos", "service-connectivity-stats-protos", + "net-utils-multicast-forwarding-structs", ], apex_available: [ "com.android.tethering", diff --git a/staticlibs/Android.bp b/staticlibs/Android.bp index 3cbabcce0d..eaa7ea9c60 100644 --- a/staticlibs/Android.bp +++ b/staticlibs/Android.bp @@ -188,6 +188,33 @@ java_library { }, } +// The net-utils-multicast-forwarding-structs library requires the callers to +// contain net-utils-device-common-bpf. +java_library { + name: "net-utils-multicast-forwarding-structs", + srcs: [ + "device/com/android/net/module/util/structs/StructMf6cctl.java", + "device/com/android/net/module/util/structs/StructMif6ctl.java", + "device/com/android/net/module/util/structs/StructMrt6Msg.java", + ], + sdk_version: "module_current", + min_sdk_version: "30", + visibility: [ + "//packages/modules/Connectivity:__subpackages__", + ], + libs: [ + // Only Struct.java is needed from "net-utils-device-common-bpf" + "net-utils-device-common-bpf", + ], + apex_available: [ + "com.android.tethering", + ], + lint: { + strict_updatability_linting: true, + error_checks: ["NewApi"], + }, +} + // The net-utils-device-common-netlink library requires the callers to contain // net-utils-device-common-struct. java_library {