1 //
2 // Copyright (C) 2020 The Android Open Source Project
3 //
4 // Licensed under the Apache License, Version 2.0 (the "License");
5 // you may not use this file except in compliance with the License.
6 // You may obtain a copy of the License at
7 //
8 // http://www.apache.org/licenses/LICENSE-2.0
9 //
10 // Unless required by applicable law or agreed to in writing, software
11 // distributed under the License is distributed on an "AS IS" BASIS,
12 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 // See the License for the specific language governing permissions and
14 // limitations under the License.
15 //
16
17 // clang-format off
18 #include "native_bridge_support/vdso/interceptable_functions.h"
19
20 DEFINE_INTERCEPTABLE_STUB_FUNCTION(ABinderProcess_handlePolledCommands);
21 DEFINE_INTERCEPTABLE_STUB_FUNCTION(ABinderProcess_joinThreadPool);
22 DEFINE_INTERCEPTABLE_STUB_FUNCTION(ABinderProcess_setThreadPoolMaxThreadCount);
23 DEFINE_INTERCEPTABLE_STUB_FUNCTION(ABinderProcess_setupPolling);
24 DEFINE_INTERCEPTABLE_STUB_FUNCTION(ABinderProcess_startThreadPool);
25 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AIBinder_Class_define);
26 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AIBinder_Class_getDescriptor);
27 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AIBinder_Class_setHandleShellCommand);
28 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AIBinder_Class_setOnDump);
29 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AIBinder_DeathRecipient_delete);
30 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AIBinder_DeathRecipient_new);
31 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AIBinder_Weak_clone);
32 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AIBinder_Weak_delete);
33 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AIBinder_Weak_lt);
34 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AIBinder_Weak_new);
35 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AIBinder_Weak_promote);
36 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AIBinder_associateClass);
37 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AIBinder_debugGetRefCount);
38 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AIBinder_decStrong);
39 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AIBinder_dump);
40 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AIBinder_forceDowngradeToSystemStability);
41 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AIBinder_forceDowngradeToVendorStability);
42 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AIBinder_fromJavaBinder);
43 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AIBinder_getCallingPid);
44 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AIBinder_getCallingSid);
45 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AIBinder_getCallingUid);
46 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AIBinder_getClass);
47 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AIBinder_getExtension);
48 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AIBinder_getUserData);
49 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AIBinder_incStrong);
50 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AIBinder_isAlive);
51 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AIBinder_isRemote);
52 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AIBinder_linkToDeath);
53 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AIBinder_lt);
54 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AIBinder_markSystemStability);
55 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AIBinder_markVendorStability);
56 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AIBinder_markVintfStability);
57 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AIBinder_new);
58 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AIBinder_ping);
59 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AIBinder_prepareTransaction);
60 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AIBinder_setExtension);
61 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AIBinder_setRequestingSid);
62 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AIBinder_toJavaBinder);
63 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AIBinder_transact);
64 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AIBinder_unlinkToDeath);
65 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AParcel_appendFrom);
66 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AParcel_create);
67 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AParcel_delete);
68 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AParcel_fromJavaParcel);
69 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AParcel_getAllowFds);
70 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AParcel_getDataPosition);
71 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AParcel_getDataSize);
72 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AParcel_markSensitive);
73 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AParcel_readBool);
74 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AParcel_readBoolArray);
75 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AParcel_readByte);
76 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AParcel_readByteArray);
77 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AParcel_readChar);
78 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AParcel_readCharArray);
79 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AParcel_readDouble);
80 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AParcel_readDoubleArray);
81 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AParcel_readFloat);
82 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AParcel_readFloatArray);
83 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AParcel_readInt32);
84 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AParcel_readInt32Array);
85 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AParcel_readInt64);
86 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AParcel_readInt64Array);
87 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AParcel_readParcelFileDescriptor);
88 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AParcel_readParcelableArray);
89 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AParcel_readStatusHeader);
90 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AParcel_readString);
91 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AParcel_readStringArray);
92 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AParcel_readStrongBinder);
93 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AParcel_readUint32);
94 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AParcel_readUint32Array);
95 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AParcel_readUint64);
96 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AParcel_readUint64Array);
97 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AParcel_reset);
98 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AParcel_setDataPosition);
99 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AParcel_writeBool);
100 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AParcel_writeBoolArray);
101 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AParcel_writeByte);
102 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AParcel_writeByteArray);
103 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AParcel_writeChar);
104 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AParcel_writeCharArray);
105 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AParcel_writeDouble);
106 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AParcel_writeDoubleArray);
107 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AParcel_writeFloat);
108 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AParcel_writeFloatArray);
109 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AParcel_writeInt32);
110 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AParcel_writeInt32Array);
111 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AParcel_writeInt64);
112 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AParcel_writeInt64Array);
113 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AParcel_writeParcelFileDescriptor);
114 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AParcel_writeParcelableArray);
115 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AParcel_writeStatusHeader);
116 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AParcel_writeString);
117 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AParcel_writeStringArray);
118 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AParcel_writeStrongBinder);
119 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AParcel_writeUint32);
120 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AParcel_writeUint32Array);
121 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AParcel_writeUint64);
122 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AParcel_writeUint64Array);
123 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AServiceManager_addService);
124 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AServiceManager_checkService);
125 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AServiceManager_forEachDeclaredInstance);
126 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AServiceManager_forceLazyServicesPersist);
127 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AServiceManager_getService);
128 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AServiceManager_isDeclared);
129 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AServiceManager_isUpdatableViaApex);
130 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AServiceManager_reRegister);
131 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AServiceManager_registerLazyService);
132 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AServiceManager_setActiveServicesCallback);
133 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AServiceManager_tryUnregister);
134 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AServiceManager_waitForService);
135 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AStatus_delete);
136 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AStatus_deleteDescription);
137 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AStatus_fromExceptionCode);
138 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AStatus_fromExceptionCodeWithMessage);
139 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AStatus_fromServiceSpecificError);
140 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AStatus_fromServiceSpecificErrorWithMessage);
141 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AStatus_fromStatus);
142 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AStatus_getDescription);
143 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AStatus_getExceptionCode);
144 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AStatus_getMessage);
145 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AStatus_getServiceSpecificError);
146 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AStatus_getStatus);
147 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AStatus_isOk);
148 DEFINE_INTERCEPTABLE_STUB_FUNCTION(AStatus_newOk);
149 DEFINE_INTERCEPTABLE_STUB_FUNCTION(_Z25AIBinder_toPlatformBinderP8AIBinder);
150 DEFINE_INTERCEPTABLE_STUB_FUNCTION(_Z27AIBinder_fromPlatformBinderRKN7android2spINS_7IBinderEEE);
151
init_stub_library()152 static void __attribute__((constructor(0))) init_stub_library() {
153 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", ABinderProcess_handlePolledCommands);
154 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", ABinderProcess_joinThreadPool);
155 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", ABinderProcess_setThreadPoolMaxThreadCount);
156 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", ABinderProcess_setupPolling);
157 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", ABinderProcess_startThreadPool);
158 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AIBinder_Class_define);
159 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AIBinder_Class_getDescriptor);
160 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AIBinder_Class_setHandleShellCommand);
161 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AIBinder_Class_setOnDump);
162 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AIBinder_DeathRecipient_delete);
163 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AIBinder_DeathRecipient_new);
164 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AIBinder_Weak_clone);
165 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AIBinder_Weak_delete);
166 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AIBinder_Weak_lt);
167 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AIBinder_Weak_new);
168 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AIBinder_Weak_promote);
169 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AIBinder_associateClass);
170 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AIBinder_debugGetRefCount);
171 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AIBinder_decStrong);
172 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AIBinder_dump);
173 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AIBinder_forceDowngradeToSystemStability);
174 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AIBinder_forceDowngradeToVendorStability);
175 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AIBinder_fromJavaBinder);
176 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AIBinder_getCallingPid);
177 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AIBinder_getCallingSid);
178 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AIBinder_getCallingUid);
179 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AIBinder_getClass);
180 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AIBinder_getExtension);
181 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AIBinder_getUserData);
182 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AIBinder_incStrong);
183 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AIBinder_isAlive);
184 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AIBinder_isRemote);
185 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AIBinder_linkToDeath);
186 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AIBinder_lt);
187 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AIBinder_markSystemStability);
188 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AIBinder_markVendorStability);
189 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AIBinder_markVintfStability);
190 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AIBinder_new);
191 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AIBinder_ping);
192 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AIBinder_prepareTransaction);
193 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AIBinder_setExtension);
194 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AIBinder_setRequestingSid);
195 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AIBinder_toJavaBinder);
196 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AIBinder_transact);
197 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AIBinder_unlinkToDeath);
198 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AParcel_appendFrom);
199 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AParcel_create);
200 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AParcel_delete);
201 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AParcel_fromJavaParcel);
202 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AParcel_getAllowFds);
203 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AParcel_getDataPosition);
204 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AParcel_getDataSize);
205 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AParcel_markSensitive);
206 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AParcel_readBool);
207 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AParcel_readBoolArray);
208 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AParcel_readByte);
209 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AParcel_readByteArray);
210 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AParcel_readChar);
211 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AParcel_readCharArray);
212 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AParcel_readDouble);
213 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AParcel_readDoubleArray);
214 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AParcel_readFloat);
215 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AParcel_readFloatArray);
216 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AParcel_readInt32);
217 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AParcel_readInt32Array);
218 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AParcel_readInt64);
219 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AParcel_readInt64Array);
220 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AParcel_readParcelFileDescriptor);
221 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AParcel_readParcelableArray);
222 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AParcel_readStatusHeader);
223 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AParcel_readString);
224 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AParcel_readStringArray);
225 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AParcel_readStrongBinder);
226 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AParcel_readUint32);
227 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AParcel_readUint32Array);
228 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AParcel_readUint64);
229 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AParcel_readUint64Array);
230 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AParcel_reset);
231 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AParcel_setDataPosition);
232 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AParcel_writeBool);
233 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AParcel_writeBoolArray);
234 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AParcel_writeByte);
235 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AParcel_writeByteArray);
236 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AParcel_writeChar);
237 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AParcel_writeCharArray);
238 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AParcel_writeDouble);
239 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AParcel_writeDoubleArray);
240 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AParcel_writeFloat);
241 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AParcel_writeFloatArray);
242 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AParcel_writeInt32);
243 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AParcel_writeInt32Array);
244 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AParcel_writeInt64);
245 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AParcel_writeInt64Array);
246 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AParcel_writeParcelFileDescriptor);
247 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AParcel_writeParcelableArray);
248 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AParcel_writeStatusHeader);
249 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AParcel_writeString);
250 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AParcel_writeStringArray);
251 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AParcel_writeStrongBinder);
252 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AParcel_writeUint32);
253 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AParcel_writeUint32Array);
254 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AParcel_writeUint64);
255 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AParcel_writeUint64Array);
256 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AServiceManager_addService);
257 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AServiceManager_checkService);
258 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AServiceManager_forEachDeclaredInstance);
259 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AServiceManager_forceLazyServicesPersist);
260 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AServiceManager_getService);
261 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AServiceManager_isDeclared);
262 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AServiceManager_isUpdatableViaApex);
263 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AServiceManager_reRegister);
264 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AServiceManager_registerLazyService);
265 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AServiceManager_setActiveServicesCallback);
266 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AServiceManager_tryUnregister);
267 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AServiceManager_waitForService);
268 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AStatus_delete);
269 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AStatus_deleteDescription);
270 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AStatus_fromExceptionCode);
271 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AStatus_fromExceptionCodeWithMessage);
272 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AStatus_fromServiceSpecificError);
273 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AStatus_fromServiceSpecificErrorWithMessage);
274 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AStatus_fromStatus);
275 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AStatus_getDescription);
276 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AStatus_getExceptionCode);
277 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AStatus_getMessage);
278 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AStatus_getServiceSpecificError);
279 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AStatus_getStatus);
280 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AStatus_isOk);
281 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", AStatus_newOk);
282 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", _Z25AIBinder_toPlatformBinderP8AIBinder);
283 INIT_INTERCEPTABLE_STUB_FUNCTION("libbinder_ndk.so", _Z27AIBinder_fromPlatformBinderRKN7android2spINS_7IBinderEEE);
284 }
285 // clang-format on
286