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(_Z13eglBeginFramePvS_);
21 DEFINE_INTERCEPTABLE_STUB_FUNCTION(_ZN7android11egl_cache_t10initializeEPNS_13egl_display_tE);
22 DEFINE_INTERCEPTABLE_STUB_FUNCTION(_ZN7android11egl_cache_t16setCacheFilenameEPKc);
23 DEFINE_INTERCEPTABLE_STUB_FUNCTION(_ZN7android11egl_cache_t18getBlobCacheLockedEv);
24 DEFINE_INTERCEPTABLE_STUB_FUNCTION(_ZN7android11egl_cache_t3getEv);
25 DEFINE_INTERCEPTABLE_STUB_FUNCTION(_ZN7android11egl_cache_t7getBlobEPKvlPvl);
26 DEFINE_INTERCEPTABLE_STUB_FUNCTION(_ZN7android11egl_cache_t7setBlobEPKvlS2_l);
27 DEFINE_INTERCEPTABLE_STUB_FUNCTION(_ZN7android11egl_cache_t9terminateEv);
28 DEFINE_INTERCEPTABLE_STUB_FUNCTION(_ZN7android11egl_cache_tC2Ev);
29 DEFINE_INTERCEPTABLE_STUB_FUNCTION(_ZN7android11egl_cache_tD2Ev);
30 DEFINE_INTERCEPTABLE_STUB_FUNCTION(_ZN7android13egl_display_t10initializeEPiS1_);
31 DEFINE_INTERCEPTABLE_STUB_FUNCTION(_ZN7android13egl_display_t11loseCurrentEPNS_13egl_context_tE);
32 DEFINE_INTERCEPTABLE_STUB_FUNCTION(_ZN7android13egl_display_t11makeCurrentEPNS_13egl_context_tES2_PvS3_S3_S3_S3_S3_);
33 DEFINE_INTERCEPTABLE_STUB_FUNCTION(_ZN7android13egl_display_t12removeObjectEPNS_12egl_object_tE);
34 DEFINE_INTERCEPTABLE_STUB_FUNCTION(_ZN7android13egl_display_t15loseCurrentImplEPNS_13egl_context_tE);
35 DEFINE_INTERCEPTABLE_STUB_FUNCTION(_ZN7android13egl_display_t18getPlatformDisplayEPvPKi);
36 DEFINE_INTERCEPTABLE_STUB_FUNCTION(_ZN7android13egl_display_t20getFromNativeDisplayEPvPKi);
37 DEFINE_INTERCEPTABLE_STUB_FUNCTION(_ZN7android13egl_display_t3getEPv);
38 DEFINE_INTERCEPTABLE_STUB_FUNCTION(_ZN7android13egl_display_t9addObjectEPNS_12egl_object_tE);
39 DEFINE_INTERCEPTABLE_STUB_FUNCTION(_ZN7android13egl_display_t9terminateEv);
40 DEFINE_INTERCEPTABLE_STUB_FUNCTION(_ZN7android13egl_display_tC2Ev);
41 DEFINE_INTERCEPTABLE_STUB_FUNCTION(_ZN7android13egl_display_tD2Ev);
42 DEFINE_INTERCEPTABLE_STUB_FUNCTION(_ZN7android17eglBeginFrameImplEPvS0_);
43 DEFINE_INTERCEPTABLE_STUB_FUNCTION(_ZN7android18egl_get_connectionEv);
44 DEFINE_INTERCEPTABLE_STUB_FUNCTION(_ZN7android18egl_get_init_countEPv);
45 DEFINE_INTERCEPTABLE_STUB_FUNCTION(_ZN7android19setGlThreadSpecificEPKNS_10gl_hooks_tE);
46 DEFINE_INTERCEPTABLE_STUB_FUNCTION(_ZN7android22egl_set_cache_filenameEPKc);
47 DEFINE_INTERCEPTABLE_STUB_FUNCTION(_ZN7android34egl_get_string_for_current_contextEj);
48 DEFINE_INTERCEPTABLE_STUB_FUNCTION(_ZN7android34egl_get_string_for_current_contextEjj);
49 DEFINE_INTERCEPTABLE_STUB_FUNCTION(_ZN7android39eglQueryStringImplementationANDROIDImplEPvi);
50 DEFINE_INTERCEPTABLE_STUB_FUNCTION(_ZN7android42egl_get_num_extensions_for_current_contextEv);
51 DEFINE_INTERCEPTABLE_STUB_FUNCTION(_ZNK7android13egl_display_t13haveExtensionEPKcj);
52 DEFINE_INTERCEPTABLE_STUB_FUNCTION(_ZNK7android13egl_display_t9getObjectEPNS_12egl_object_tE);
53 DEFINE_INTERCEPTABLE_STUB_FUNCTION(eglBindAPI);
54 DEFINE_INTERCEPTABLE_STUB_FUNCTION(eglBindTexImage);
55 DEFINE_INTERCEPTABLE_STUB_FUNCTION(eglChooseConfig);
56 DEFINE_INTERCEPTABLE_STUB_FUNCTION(eglClientWaitSync);
57 DEFINE_INTERCEPTABLE_STUB_FUNCTION(eglClientWaitSyncKHR);
58 DEFINE_INTERCEPTABLE_STUB_FUNCTION(eglCopyBuffers);
59 DEFINE_INTERCEPTABLE_STUB_FUNCTION(eglCreateContext);
60 DEFINE_INTERCEPTABLE_STUB_FUNCTION(eglCreateImage);
61 DEFINE_INTERCEPTABLE_STUB_FUNCTION(eglCreateImageKHR);
62 DEFINE_INTERCEPTABLE_STUB_FUNCTION(eglCreatePbufferFromClientBuffer);
63 DEFINE_INTERCEPTABLE_STUB_FUNCTION(eglCreatePbufferSurface);
64 DEFINE_INTERCEPTABLE_STUB_FUNCTION(eglCreatePixmapSurface);
65 DEFINE_INTERCEPTABLE_STUB_FUNCTION(eglCreatePlatformPixmapSurface);
66 DEFINE_INTERCEPTABLE_STUB_FUNCTION(eglCreatePlatformWindowSurface);
67 DEFINE_INTERCEPTABLE_STUB_FUNCTION(eglCreateStreamFromFileDescriptorKHR);
68 DEFINE_INTERCEPTABLE_STUB_FUNCTION(eglCreateStreamKHR);
69 DEFINE_INTERCEPTABLE_STUB_FUNCTION(eglCreateStreamProducerSurfaceKHR);
70 DEFINE_INTERCEPTABLE_STUB_FUNCTION(eglCreateSync);
71 DEFINE_INTERCEPTABLE_STUB_FUNCTION(eglCreateSyncKHR);
72 DEFINE_INTERCEPTABLE_STUB_FUNCTION(eglCreateWindowSurface);
73 DEFINE_INTERCEPTABLE_STUB_FUNCTION(eglDestroyContext);
74 DEFINE_INTERCEPTABLE_STUB_FUNCTION(eglDestroyImage);
75 DEFINE_INTERCEPTABLE_STUB_FUNCTION(eglDestroyImageKHR);
76 DEFINE_INTERCEPTABLE_STUB_FUNCTION(eglDestroyStreamKHR);
77 DEFINE_INTERCEPTABLE_STUB_FUNCTION(eglDestroySurface);
78 DEFINE_INTERCEPTABLE_STUB_FUNCTION(eglDestroySync);
79 DEFINE_INTERCEPTABLE_STUB_FUNCTION(eglDestroySyncKHR);
80 DEFINE_INTERCEPTABLE_STUB_FUNCTION(eglDupNativeFenceFDANDROID);
81 DEFINE_INTERCEPTABLE_STUB_FUNCTION(eglGetCompositorTimingANDROID);
82 DEFINE_INTERCEPTABLE_STUB_FUNCTION(eglGetCompositorTimingSupportedANDROID);
83 DEFINE_INTERCEPTABLE_STUB_FUNCTION(eglGetConfigAttrib);
84 DEFINE_INTERCEPTABLE_STUB_FUNCTION(eglGetConfigs);
85 DEFINE_INTERCEPTABLE_STUB_FUNCTION(eglGetCurrentContext);
86 DEFINE_INTERCEPTABLE_STUB_FUNCTION(eglGetCurrentDisplay);
87 DEFINE_INTERCEPTABLE_STUB_FUNCTION(eglGetCurrentSurface);
88 DEFINE_INTERCEPTABLE_STUB_FUNCTION(eglGetDisplay);
89 DEFINE_INTERCEPTABLE_STUB_FUNCTION(eglGetError);
90 DEFINE_INTERCEPTABLE_STUB_FUNCTION(eglGetFrameTimestampSupportedANDROID);
91 DEFINE_INTERCEPTABLE_STUB_FUNCTION(eglGetFrameTimestampsANDROID);
92 DEFINE_INTERCEPTABLE_STUB_FUNCTION(eglGetNativeClientBufferANDROID);
93 DEFINE_INTERCEPTABLE_STUB_FUNCTION(eglGetNextFrameIdANDROID);
94 DEFINE_INTERCEPTABLE_STUB_FUNCTION(eglGetPlatformDisplay);
95 DEFINE_INTERCEPTABLE_STUB_FUNCTION(eglGetProcAddress);
96 DEFINE_INTERCEPTABLE_STUB_FUNCTION(eglGetStreamFileDescriptorKHR);
97 DEFINE_INTERCEPTABLE_STUB_FUNCTION(eglGetSyncAttrib);
98 DEFINE_INTERCEPTABLE_STUB_FUNCTION(eglGetSyncAttribKHR);
99 DEFINE_INTERCEPTABLE_STUB_FUNCTION(eglGetSystemTimeFrequencyNV);
100 DEFINE_INTERCEPTABLE_STUB_FUNCTION(eglGetSystemTimeNV);
101 DEFINE_INTERCEPTABLE_STUB_FUNCTION(eglInitialize);
102 DEFINE_INTERCEPTABLE_STUB_FUNCTION(eglLockSurfaceKHR);
103 DEFINE_INTERCEPTABLE_STUB_FUNCTION(eglMakeCurrent);
104 DEFINE_INTERCEPTABLE_STUB_FUNCTION(eglPresentationTimeANDROID);
105 DEFINE_INTERCEPTABLE_STUB_FUNCTION(eglQueryAPI);
106 DEFINE_INTERCEPTABLE_STUB_FUNCTION(eglQueryContext);
107 DEFINE_INTERCEPTABLE_STUB_FUNCTION(eglQueryStreamKHR);
108 DEFINE_INTERCEPTABLE_STUB_FUNCTION(eglQueryStreamTimeKHR);
109 DEFINE_INTERCEPTABLE_STUB_FUNCTION(eglQueryStreamu64KHR);
110 DEFINE_INTERCEPTABLE_STUB_FUNCTION(eglQueryString);
111 DEFINE_INTERCEPTABLE_STUB_FUNCTION(eglQueryStringImplementationANDROID);
112 DEFINE_INTERCEPTABLE_STUB_FUNCTION(eglQuerySurface);
113 DEFINE_INTERCEPTABLE_STUB_FUNCTION(eglReleaseTexImage);
114 DEFINE_INTERCEPTABLE_STUB_FUNCTION(eglReleaseThread);
115 DEFINE_INTERCEPTABLE_STUB_FUNCTION(eglSetDamageRegionKHR);
116 DEFINE_INTERCEPTABLE_STUB_FUNCTION(eglSignalSyncKHR);
117 DEFINE_INTERCEPTABLE_STUB_FUNCTION(eglStreamAttribKHR);
118 DEFINE_INTERCEPTABLE_STUB_FUNCTION(eglStreamConsumerAcquireKHR);
119 DEFINE_INTERCEPTABLE_STUB_FUNCTION(eglStreamConsumerGLTextureExternalKHR);
120 DEFINE_INTERCEPTABLE_STUB_FUNCTION(eglStreamConsumerReleaseKHR);
121 DEFINE_INTERCEPTABLE_STUB_FUNCTION(eglSurfaceAttrib);
122 DEFINE_INTERCEPTABLE_STUB_FUNCTION(eglSwapBuffers);
123 DEFINE_INTERCEPTABLE_STUB_FUNCTION(eglSwapBuffersWithDamageKHR);
124 DEFINE_INTERCEPTABLE_STUB_FUNCTION(eglSwapInterval);
125 DEFINE_INTERCEPTABLE_STUB_FUNCTION(eglTerminate);
126 DEFINE_INTERCEPTABLE_STUB_FUNCTION(eglUnlockSurfaceKHR);
127 DEFINE_INTERCEPTABLE_STUB_FUNCTION(eglWaitClient);
128 DEFINE_INTERCEPTABLE_STUB_FUNCTION(eglWaitGL);
129 DEFINE_INTERCEPTABLE_STUB_FUNCTION(eglWaitNative);
130 DEFINE_INTERCEPTABLE_STUB_FUNCTION(eglWaitSync);
131 DEFINE_INTERCEPTABLE_STUB_FUNCTION(eglWaitSyncKHR);
132 
init_stub_library()133 static void __attribute__((constructor(0))) init_stub_library() {
134   INIT_INTERCEPTABLE_STUB_FUNCTION("libEGL.so", _Z13eglBeginFramePvS_);
135   INIT_INTERCEPTABLE_STUB_FUNCTION("libEGL.so", _ZN7android11egl_cache_t10initializeEPNS_13egl_display_tE);
136   INIT_INTERCEPTABLE_STUB_FUNCTION("libEGL.so", _ZN7android11egl_cache_t16setCacheFilenameEPKc);
137   INIT_INTERCEPTABLE_STUB_FUNCTION("libEGL.so", _ZN7android11egl_cache_t18getBlobCacheLockedEv);
138   INIT_INTERCEPTABLE_STUB_FUNCTION("libEGL.so", _ZN7android11egl_cache_t3getEv);
139   INIT_INTERCEPTABLE_STUB_FUNCTION("libEGL.so", _ZN7android11egl_cache_t7getBlobEPKvlPvl);
140   INIT_INTERCEPTABLE_STUB_FUNCTION("libEGL.so", _ZN7android11egl_cache_t7setBlobEPKvlS2_l);
141   INIT_INTERCEPTABLE_STUB_FUNCTION("libEGL.so", _ZN7android11egl_cache_t9terminateEv);
142   INIT_INTERCEPTABLE_STUB_FUNCTION("libEGL.so", _ZN7android11egl_cache_tC2Ev);
143   INIT_INTERCEPTABLE_STUB_FUNCTION("libEGL.so", _ZN7android11egl_cache_tD2Ev);
144   INIT_INTERCEPTABLE_STUB_FUNCTION("libEGL.so", _ZN7android13egl_display_t10initializeEPiS1_);
145   INIT_INTERCEPTABLE_STUB_FUNCTION("libEGL.so", _ZN7android13egl_display_t11loseCurrentEPNS_13egl_context_tE);
146   INIT_INTERCEPTABLE_STUB_FUNCTION("libEGL.so", _ZN7android13egl_display_t11makeCurrentEPNS_13egl_context_tES2_PvS3_S3_S3_S3_S3_);
147   INIT_INTERCEPTABLE_STUB_FUNCTION("libEGL.so", _ZN7android13egl_display_t12removeObjectEPNS_12egl_object_tE);
148   INIT_INTERCEPTABLE_STUB_FUNCTION("libEGL.so", _ZN7android13egl_display_t15loseCurrentImplEPNS_13egl_context_tE);
149   INIT_INTERCEPTABLE_STUB_FUNCTION("libEGL.so", _ZN7android13egl_display_t18getPlatformDisplayEPvPKi);
150   INIT_INTERCEPTABLE_STUB_FUNCTION("libEGL.so", _ZN7android13egl_display_t20getFromNativeDisplayEPvPKi);
151   INIT_INTERCEPTABLE_STUB_FUNCTION("libEGL.so", _ZN7android13egl_display_t3getEPv);
152   INIT_INTERCEPTABLE_STUB_FUNCTION("libEGL.so", _ZN7android13egl_display_t9addObjectEPNS_12egl_object_tE);
153   INIT_INTERCEPTABLE_STUB_FUNCTION("libEGL.so", _ZN7android13egl_display_t9terminateEv);
154   INIT_INTERCEPTABLE_STUB_FUNCTION("libEGL.so", _ZN7android13egl_display_tC2Ev);
155   INIT_INTERCEPTABLE_STUB_FUNCTION("libEGL.so", _ZN7android13egl_display_tD2Ev);
156   INIT_INTERCEPTABLE_STUB_FUNCTION("libEGL.so", _ZN7android17eglBeginFrameImplEPvS0_);
157   INIT_INTERCEPTABLE_STUB_FUNCTION("libEGL.so", _ZN7android18egl_get_connectionEv);
158   INIT_INTERCEPTABLE_STUB_FUNCTION("libEGL.so", _ZN7android18egl_get_init_countEPv);
159   INIT_INTERCEPTABLE_STUB_FUNCTION("libEGL.so", _ZN7android19setGlThreadSpecificEPKNS_10gl_hooks_tE);
160   INIT_INTERCEPTABLE_STUB_FUNCTION("libEGL.so", _ZN7android22egl_set_cache_filenameEPKc);
161   INIT_INTERCEPTABLE_STUB_FUNCTION("libEGL.so", _ZN7android34egl_get_string_for_current_contextEj);
162   INIT_INTERCEPTABLE_STUB_FUNCTION("libEGL.so", _ZN7android34egl_get_string_for_current_contextEjj);
163   INIT_INTERCEPTABLE_STUB_FUNCTION("libEGL.so", _ZN7android39eglQueryStringImplementationANDROIDImplEPvi);
164   INIT_INTERCEPTABLE_STUB_FUNCTION("libEGL.so", _ZN7android42egl_get_num_extensions_for_current_contextEv);
165   INIT_INTERCEPTABLE_STUB_FUNCTION("libEGL.so", _ZNK7android13egl_display_t13haveExtensionEPKcj);
166   INIT_INTERCEPTABLE_STUB_FUNCTION("libEGL.so", _ZNK7android13egl_display_t9getObjectEPNS_12egl_object_tE);
167   INIT_INTERCEPTABLE_STUB_FUNCTION("libEGL.so", eglBindAPI);
168   INIT_INTERCEPTABLE_STUB_FUNCTION("libEGL.so", eglBindTexImage);
169   INIT_INTERCEPTABLE_STUB_FUNCTION("libEGL.so", eglChooseConfig);
170   INIT_INTERCEPTABLE_STUB_FUNCTION("libEGL.so", eglClientWaitSync);
171   INIT_INTERCEPTABLE_STUB_FUNCTION("libEGL.so", eglClientWaitSyncKHR);
172   INIT_INTERCEPTABLE_STUB_FUNCTION("libEGL.so", eglCopyBuffers);
173   INIT_INTERCEPTABLE_STUB_FUNCTION("libEGL.so", eglCreateContext);
174   INIT_INTERCEPTABLE_STUB_FUNCTION("libEGL.so", eglCreateImage);
175   INIT_INTERCEPTABLE_STUB_FUNCTION("libEGL.so", eglCreateImageKHR);
176   INIT_INTERCEPTABLE_STUB_FUNCTION("libEGL.so", eglCreatePbufferFromClientBuffer);
177   INIT_INTERCEPTABLE_STUB_FUNCTION("libEGL.so", eglCreatePbufferSurface);
178   INIT_INTERCEPTABLE_STUB_FUNCTION("libEGL.so", eglCreatePixmapSurface);
179   INIT_INTERCEPTABLE_STUB_FUNCTION("libEGL.so", eglCreatePlatformPixmapSurface);
180   INIT_INTERCEPTABLE_STUB_FUNCTION("libEGL.so", eglCreatePlatformWindowSurface);
181   INIT_INTERCEPTABLE_STUB_FUNCTION("libEGL.so", eglCreateStreamFromFileDescriptorKHR);
182   INIT_INTERCEPTABLE_STUB_FUNCTION("libEGL.so", eglCreateStreamKHR);
183   INIT_INTERCEPTABLE_STUB_FUNCTION("libEGL.so", eglCreateStreamProducerSurfaceKHR);
184   INIT_INTERCEPTABLE_STUB_FUNCTION("libEGL.so", eglCreateSync);
185   INIT_INTERCEPTABLE_STUB_FUNCTION("libEGL.so", eglCreateSyncKHR);
186   INIT_INTERCEPTABLE_STUB_FUNCTION("libEGL.so", eglCreateWindowSurface);
187   INIT_INTERCEPTABLE_STUB_FUNCTION("libEGL.so", eglDestroyContext);
188   INIT_INTERCEPTABLE_STUB_FUNCTION("libEGL.so", eglDestroyImage);
189   INIT_INTERCEPTABLE_STUB_FUNCTION("libEGL.so", eglDestroyImageKHR);
190   INIT_INTERCEPTABLE_STUB_FUNCTION("libEGL.so", eglDestroyStreamKHR);
191   INIT_INTERCEPTABLE_STUB_FUNCTION("libEGL.so", eglDestroySurface);
192   INIT_INTERCEPTABLE_STUB_FUNCTION("libEGL.so", eglDestroySync);
193   INIT_INTERCEPTABLE_STUB_FUNCTION("libEGL.so", eglDestroySyncKHR);
194   INIT_INTERCEPTABLE_STUB_FUNCTION("libEGL.so", eglDupNativeFenceFDANDROID);
195   INIT_INTERCEPTABLE_STUB_FUNCTION("libEGL.so", eglGetCompositorTimingANDROID);
196   INIT_INTERCEPTABLE_STUB_FUNCTION("libEGL.so", eglGetCompositorTimingSupportedANDROID);
197   INIT_INTERCEPTABLE_STUB_FUNCTION("libEGL.so", eglGetConfigAttrib);
198   INIT_INTERCEPTABLE_STUB_FUNCTION("libEGL.so", eglGetConfigs);
199   INIT_INTERCEPTABLE_STUB_FUNCTION("libEGL.so", eglGetCurrentContext);
200   INIT_INTERCEPTABLE_STUB_FUNCTION("libEGL.so", eglGetCurrentDisplay);
201   INIT_INTERCEPTABLE_STUB_FUNCTION("libEGL.so", eglGetCurrentSurface);
202   INIT_INTERCEPTABLE_STUB_FUNCTION("libEGL.so", eglGetDisplay);
203   INIT_INTERCEPTABLE_STUB_FUNCTION("libEGL.so", eglGetError);
204   INIT_INTERCEPTABLE_STUB_FUNCTION("libEGL.so", eglGetFrameTimestampSupportedANDROID);
205   INIT_INTERCEPTABLE_STUB_FUNCTION("libEGL.so", eglGetFrameTimestampsANDROID);
206   INIT_INTERCEPTABLE_STUB_FUNCTION("libEGL.so", eglGetNativeClientBufferANDROID);
207   INIT_INTERCEPTABLE_STUB_FUNCTION("libEGL.so", eglGetNextFrameIdANDROID);
208   INIT_INTERCEPTABLE_STUB_FUNCTION("libEGL.so", eglGetPlatformDisplay);
209   INIT_INTERCEPTABLE_STUB_FUNCTION("libEGL.so", eglGetProcAddress);
210   INIT_INTERCEPTABLE_STUB_FUNCTION("libEGL.so", eglGetStreamFileDescriptorKHR);
211   INIT_INTERCEPTABLE_STUB_FUNCTION("libEGL.so", eglGetSyncAttrib);
212   INIT_INTERCEPTABLE_STUB_FUNCTION("libEGL.so", eglGetSyncAttribKHR);
213   INIT_INTERCEPTABLE_STUB_FUNCTION("libEGL.so", eglGetSystemTimeFrequencyNV);
214   INIT_INTERCEPTABLE_STUB_FUNCTION("libEGL.so", eglGetSystemTimeNV);
215   INIT_INTERCEPTABLE_STUB_FUNCTION("libEGL.so", eglInitialize);
216   INIT_INTERCEPTABLE_STUB_FUNCTION("libEGL.so", eglLockSurfaceKHR);
217   INIT_INTERCEPTABLE_STUB_FUNCTION("libEGL.so", eglMakeCurrent);
218   INIT_INTERCEPTABLE_STUB_FUNCTION("libEGL.so", eglPresentationTimeANDROID);
219   INIT_INTERCEPTABLE_STUB_FUNCTION("libEGL.so", eglQueryAPI);
220   INIT_INTERCEPTABLE_STUB_FUNCTION("libEGL.so", eglQueryContext);
221   INIT_INTERCEPTABLE_STUB_FUNCTION("libEGL.so", eglQueryStreamKHR);
222   INIT_INTERCEPTABLE_STUB_FUNCTION("libEGL.so", eglQueryStreamTimeKHR);
223   INIT_INTERCEPTABLE_STUB_FUNCTION("libEGL.so", eglQueryStreamu64KHR);
224   INIT_INTERCEPTABLE_STUB_FUNCTION("libEGL.so", eglQueryString);
225   INIT_INTERCEPTABLE_STUB_FUNCTION("libEGL.so", eglQueryStringImplementationANDROID);
226   INIT_INTERCEPTABLE_STUB_FUNCTION("libEGL.so", eglQuerySurface);
227   INIT_INTERCEPTABLE_STUB_FUNCTION("libEGL.so", eglReleaseTexImage);
228   INIT_INTERCEPTABLE_STUB_FUNCTION("libEGL.so", eglReleaseThread);
229   INIT_INTERCEPTABLE_STUB_FUNCTION("libEGL.so", eglSetDamageRegionKHR);
230   INIT_INTERCEPTABLE_STUB_FUNCTION("libEGL.so", eglSignalSyncKHR);
231   INIT_INTERCEPTABLE_STUB_FUNCTION("libEGL.so", eglStreamAttribKHR);
232   INIT_INTERCEPTABLE_STUB_FUNCTION("libEGL.so", eglStreamConsumerAcquireKHR);
233   INIT_INTERCEPTABLE_STUB_FUNCTION("libEGL.so", eglStreamConsumerGLTextureExternalKHR);
234   INIT_INTERCEPTABLE_STUB_FUNCTION("libEGL.so", eglStreamConsumerReleaseKHR);
235   INIT_INTERCEPTABLE_STUB_FUNCTION("libEGL.so", eglSurfaceAttrib);
236   INIT_INTERCEPTABLE_STUB_FUNCTION("libEGL.so", eglSwapBuffers);
237   INIT_INTERCEPTABLE_STUB_FUNCTION("libEGL.so", eglSwapBuffersWithDamageKHR);
238   INIT_INTERCEPTABLE_STUB_FUNCTION("libEGL.so", eglSwapInterval);
239   INIT_INTERCEPTABLE_STUB_FUNCTION("libEGL.so", eglTerminate);
240   INIT_INTERCEPTABLE_STUB_FUNCTION("libEGL.so", eglUnlockSurfaceKHR);
241   INIT_INTERCEPTABLE_STUB_FUNCTION("libEGL.so", eglWaitClient);
242   INIT_INTERCEPTABLE_STUB_FUNCTION("libEGL.so", eglWaitGL);
243   INIT_INTERCEPTABLE_STUB_FUNCTION("libEGL.so", eglWaitNative);
244   INIT_INTERCEPTABLE_STUB_FUNCTION("libEGL.so", eglWaitSync);
245   INIT_INTERCEPTABLE_STUB_FUNCTION("libEGL.so", eglWaitSyncKHR);
246 }
247 // clang-format on
248