1// Copyright 2020, The Android Open Source Project 2// 3// Licensed under the Apache License, Version 2.0 (the "License"); 4// you may not use this file except in compliance with the License. 5// You may obtain a copy of the License at 6// 7// http://www.apache.org/licenses/LICENSE-2.0 8// 9// Unless required by applicable law or agreed to in writing, software 10// distributed under the License is distributed on an "AS IS" BASIS, 11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12// See the License for the specific language governing permissions and 13// limitations under the License. 14 15package { 16 // See: http://go/android-license-faq 17 // A large-scale-change added 'default_applicable_licenses' to import 18 // all of the 'license_kinds' from "system_security_license" 19 // to get the below license kinds: 20 // SPDX-license-identifier-Apache-2.0 21 default_applicable_licenses: ["system_security_license"], 22} 23 24aidl_interface { 25 name: "android.security.attestationmanager", 26 srcs: [ "android/security/attestationmanager/*.aidl", ], 27 imports: [ "android.hardware.security.keymint-V3" ], 28 unstable: true, 29 backend: { 30 java: { 31 platform_apis: true, 32 }, 33 rust: { 34 enabled: true, 35 }, 36 ndk: { 37 enabled: true, 38 apps_enabled: false, 39 } 40 }, 41} 42 43aidl_interface { 44 name: "android.security.authorization", 45 srcs: [ "android/security/authorization/*.aidl" ], 46 imports: [ 47 "android.hardware.security.keymint-V3", 48 "android.hardware.security.secureclock-V1", 49 ], 50 unstable: true, 51 backend: { 52 java: { 53 platform_apis: true, 54 }, 55 rust: { 56 enabled: true, 57 }, 58 ndk: { 59 enabled: true, 60 apps_enabled: false, 61 } 62 }, 63} 64 65aidl_interface { 66 name: "android.security.apc", 67 srcs: [ "android/security/apc/*.aidl" ], 68 unstable: true, 69 backend: { 70 java: { 71 enabled: true, 72 }, 73 rust: { 74 enabled: true, 75 }, 76 ndk: { 77 enabled: true, 78 } 79 }, 80} 81 82aidl_interface { 83 name: "android.security.compat", 84 srcs: [ "android/security/compat/*.aidl" ], 85 imports: [ 86 "android.hardware.security.keymint-V3", 87 "android.hardware.security.secureclock-V1", 88 "android.hardware.security.sharedsecret-V1", 89 ], 90 unstable: true, 91 backend: { 92 java: { 93 platform_apis: true, 94 }, 95 rust: { 96 enabled: true, 97 }, 98 ndk: { 99 enabled: true, 100 apps_enabled: false, 101 }, 102 }, 103} 104 105aidl_interface { 106 name: "android.security.maintenance", 107 srcs: [ "android/security/maintenance/*.aidl" ], 108 imports: [ 109 "android.system.keystore2-V3", 110 ], 111 unstable: true, 112 backend: { 113 java: { 114 platform_apis: true, 115 }, 116 rust: { 117 enabled: true, 118 }, 119 ndk: { 120 enabled: true, 121 apps_enabled: false, 122 } 123 }, 124} 125 126aidl_interface { 127 name: "android.security.legacykeystore", 128 srcs: [ "android/security/legacykeystore/*.aidl" ], 129 unstable: true, 130 backend: { 131 java: { 132 platform_apis: true, 133 }, 134 rust: { 135 enabled: true, 136 }, 137 ndk: { 138 enabled: true, 139 apps_enabled: false, 140 } 141 }, 142} 143 144aidl_interface { 145 name: "android.security.metrics", 146 srcs: [ "android/security/metrics/*.aidl" ], 147 imports: [ 148 "android.system.keystore2-V3", 149 ], 150 unstable: true, 151 backend: { 152 java: { 153 platform_apis: true, 154 }, 155 rust: { 156 enabled: true, 157 }, 158 ndk: { 159 enabled: true, 160 apps_enabled: false, 161 } 162 }, 163} 164 165// java_defaults that includes the latest Keystore2 AIDL library. 166// Modules that depend on KeyMint directly can include this java_defaults to avoid 167// managing dependency versions explicitly. 168java_defaults { 169 name: "keystore2_use_latest_aidl_java_static", 170 static_libs: [ 171 "android.system.keystore2-V3-java-source" 172 ], 173} 174 175java_defaults { 176 name: "keystore2_use_latest_aidl_java_shared", 177 libs: [ 178 "android.system.keystore2-V3-java-source" 179 ], 180} 181 182java_defaults { 183 name: "keystore2_use_latest_aidl_java", 184 libs: [ 185 "android.system.keystore2-V3-java" 186 ], 187} 188 189// cc_defaults that includes the latest Keystore2 AIDL library. 190// Modules that depend on KeyMint directly can include this cc_defaults to avoid 191// managing dependency versions explicitly. 192cc_defaults { 193 name: "keystore2_use_latest_aidl_ndk_static", 194 static_libs: [ 195 "android.system.keystore2-V3-ndk", 196 ], 197} 198 199cc_defaults { 200 name: "keystore2_use_latest_aidl_ndk_shared", 201 shared_libs: [ 202 "android.system.keystore2-V3-ndk", 203 ], 204} 205 206cc_defaults { 207 name: "keystore2_use_latest_aidl_cpp_shared", 208 shared_libs: [ 209 "android.system.keystore2-V3-cpp", 210 ], 211} 212 213cc_defaults { 214 name: "keystore2_use_latest_aidl_cpp_static", 215 static_libs: [ 216 "android.system.keystore2-V3-cpp", 217 ], 218} 219 220 221// A rust_defaults that includes the latest Keystore2 AIDL library. 222// Modules that depend on Keystore2 directly can include this rust_defaults to avoid 223// managing dependency versions explicitly. 224rust_defaults { 225 name: "keystore2_use_latest_aidl_rust", 226 rustlibs: [ 227 "android.system.keystore2-V3-rust", 228 ], 229} 230