1 /*
2  * This file is auto-generated.  DO NOT MODIFY.
3  * Using: out/host/linux-x86/bin/aidl --lang=cpp --structured --version 3 --hash 9563bb511840955a304b5eb06c39710c56e81559 -t --min_sdk_version current --ninja -d out/soong/.intermediates/system/update_engine/stable/libupdate_engine_stable-V3-cpp-source/gen/staging/android/os/IUpdateEngineStable.cpp.d -h out/soong/.intermediates/system/update_engine/stable/libupdate_engine_stable-V3-cpp-source/gen/include/staging -o out/soong/.intermediates/system/update_engine/stable/libupdate_engine_stable-V3-cpp-source/gen/staging -Nsystem/update_engine/stable/aidl_api/libupdate_engine_stable/3 system/update_engine/stable/aidl_api/libupdate_engine_stable/3/android/os/IUpdateEngineStable.aidl
4  *
5  * DO NOT CHECK THIS FILE INTO A CODE TREE (e.g. git, etc..).
6  * ALWAYS GENERATE THIS FILE FROM UPDATED AIDL COMPILER
7  * AS A BUILD INTERMEDIATE ONLY. THIS IS NOT SOURCE CODE.
8  */
9 #include <android/os/IUpdateEngineStable.h>
10 #include <android/os/BpUpdateEngineStable.h>
11 namespace android {
12 namespace os {
13 DO_NOT_DIRECTLY_USE_ME_IMPLEMENT_META_INTERFACE(UpdateEngineStable, "android.os.IUpdateEngineStable")
14 }  // namespace os
15 }  // namespace android
16 #include <android/os/BpUpdateEngineStable.h>
17 #include <android/os/BnUpdateEngineStable.h>
18 #include <binder/Parcel.h>
19 
20 namespace android {
21 namespace os {
22 
BpUpdateEngineStable(const::android::sp<::android::IBinder> & _aidl_impl)23 BpUpdateEngineStable::BpUpdateEngineStable(const ::android::sp<::android::IBinder>& _aidl_impl)
24     : BpInterface<IUpdateEngineStable>(_aidl_impl){
25 }
26 
applyPayloadFd(const::android::os::ParcelFileDescriptor & pfd,int64_t payload_offset,int64_t payload_size,const::std::vector<::android::String16> & headerKeyValuePairs)27 ::android::binder::Status BpUpdateEngineStable::applyPayloadFd(const ::android::os::ParcelFileDescriptor& pfd, int64_t payload_offset, int64_t payload_size, const ::std::vector<::android::String16>& headerKeyValuePairs) {
28   ::android::Parcel _aidl_data;
29   _aidl_data.markForBinder(remoteStrong());
30   ::android::Parcel _aidl_reply;
31   ::android::status_t _aidl_ret_status = ::android::OK;
32   ::android::binder::Status _aidl_status;
33   ::android::binder::ScopedTrace _aidl_trace(ATRACE_TAG_AIDL, "AIDL::cpp::IUpdateEngineStable::applyPayloadFd::cppClient");
34   _aidl_ret_status = _aidl_data.writeInterfaceToken(getInterfaceDescriptor());
35   if (((_aidl_ret_status) != (::android::OK))) {
36     goto _aidl_error;
37   }
38   _aidl_ret_status = _aidl_data.writeParcelable(pfd);
39   if (((_aidl_ret_status) != (::android::OK))) {
40     goto _aidl_error;
41   }
42   _aidl_ret_status = _aidl_data.writeInt64(payload_offset);
43   if (((_aidl_ret_status) != (::android::OK))) {
44     goto _aidl_error;
45   }
46   _aidl_ret_status = _aidl_data.writeInt64(payload_size);
47   if (((_aidl_ret_status) != (::android::OK))) {
48     goto _aidl_error;
49   }
50   _aidl_ret_status = _aidl_data.writeString16Vector(headerKeyValuePairs);
51   if (((_aidl_ret_status) != (::android::OK))) {
52     goto _aidl_error;
53   }
54   _aidl_ret_status = remote()->transact(BnUpdateEngineStable::TRANSACTION_applyPayloadFd, _aidl_data, &_aidl_reply, 0);
55   if (_aidl_ret_status == ::android::UNKNOWN_TRANSACTION && IUpdateEngineStable::getDefaultImpl()) [[unlikely]] {
56      return IUpdateEngineStable::getDefaultImpl()->applyPayloadFd(pfd, payload_offset, payload_size, headerKeyValuePairs);
57   }
58   if (((_aidl_ret_status) != (::android::OK))) {
59     goto _aidl_error;
60   }
61   _aidl_ret_status = _aidl_status.readFromParcel(_aidl_reply);
62   if (((_aidl_ret_status) != (::android::OK))) {
63     goto _aidl_error;
64   }
65   if (!_aidl_status.isOk()) {
66     return _aidl_status;
67   }
68   _aidl_error:
69   _aidl_status.setFromStatusT(_aidl_ret_status);
70   return _aidl_status;
71 }
72 
bind(const::android::sp<::android::os::IUpdateEngineStableCallback> & callback,bool * _aidl_return)73 ::android::binder::Status BpUpdateEngineStable::bind(const ::android::sp<::android::os::IUpdateEngineStableCallback>& callback, bool* _aidl_return) {
74   ::android::Parcel _aidl_data;
75   _aidl_data.markForBinder(remoteStrong());
76   ::android::Parcel _aidl_reply;
77   ::android::status_t _aidl_ret_status = ::android::OK;
78   ::android::binder::Status _aidl_status;
79   ::android::binder::ScopedTrace _aidl_trace(ATRACE_TAG_AIDL, "AIDL::cpp::IUpdateEngineStable::bind::cppClient");
80   _aidl_ret_status = _aidl_data.writeInterfaceToken(getInterfaceDescriptor());
81   if (((_aidl_ret_status) != (::android::OK))) {
82     goto _aidl_error;
83   }
84   _aidl_ret_status = _aidl_data.writeStrongBinder(callback);
85   if (((_aidl_ret_status) != (::android::OK))) {
86     goto _aidl_error;
87   }
88   _aidl_ret_status = remote()->transact(BnUpdateEngineStable::TRANSACTION_bind, _aidl_data, &_aidl_reply, 0);
89   if (_aidl_ret_status == ::android::UNKNOWN_TRANSACTION && IUpdateEngineStable::getDefaultImpl()) [[unlikely]] {
90      return IUpdateEngineStable::getDefaultImpl()->bind(callback, _aidl_return);
91   }
92   if (((_aidl_ret_status) != (::android::OK))) {
93     goto _aidl_error;
94   }
95   _aidl_ret_status = _aidl_status.readFromParcel(_aidl_reply);
96   if (((_aidl_ret_status) != (::android::OK))) {
97     goto _aidl_error;
98   }
99   if (!_aidl_status.isOk()) {
100     return _aidl_status;
101   }
102   _aidl_ret_status = _aidl_reply.readBool(_aidl_return);
103   if (((_aidl_ret_status) != (::android::OK))) {
104     goto _aidl_error;
105   }
106   _aidl_error:
107   _aidl_status.setFromStatusT(_aidl_ret_status);
108   return _aidl_status;
109 }
110 
unbind(const::android::sp<::android::os::IUpdateEngineStableCallback> & callback,bool * _aidl_return)111 ::android::binder::Status BpUpdateEngineStable::unbind(const ::android::sp<::android::os::IUpdateEngineStableCallback>& callback, bool* _aidl_return) {
112   ::android::Parcel _aidl_data;
113   _aidl_data.markForBinder(remoteStrong());
114   ::android::Parcel _aidl_reply;
115   ::android::status_t _aidl_ret_status = ::android::OK;
116   ::android::binder::Status _aidl_status;
117   ::android::binder::ScopedTrace _aidl_trace(ATRACE_TAG_AIDL, "AIDL::cpp::IUpdateEngineStable::unbind::cppClient");
118   _aidl_ret_status = _aidl_data.writeInterfaceToken(getInterfaceDescriptor());
119   if (((_aidl_ret_status) != (::android::OK))) {
120     goto _aidl_error;
121   }
122   _aidl_ret_status = _aidl_data.writeStrongBinder(callback);
123   if (((_aidl_ret_status) != (::android::OK))) {
124     goto _aidl_error;
125   }
126   _aidl_ret_status = remote()->transact(BnUpdateEngineStable::TRANSACTION_unbind, _aidl_data, &_aidl_reply, 0);
127   if (_aidl_ret_status == ::android::UNKNOWN_TRANSACTION && IUpdateEngineStable::getDefaultImpl()) [[unlikely]] {
128      return IUpdateEngineStable::getDefaultImpl()->unbind(callback, _aidl_return);
129   }
130   if (((_aidl_ret_status) != (::android::OK))) {
131     goto _aidl_error;
132   }
133   _aidl_ret_status = _aidl_status.readFromParcel(_aidl_reply);
134   if (((_aidl_ret_status) != (::android::OK))) {
135     goto _aidl_error;
136   }
137   if (!_aidl_status.isOk()) {
138     return _aidl_status;
139   }
140   _aidl_ret_status = _aidl_reply.readBool(_aidl_return);
141   if (((_aidl_ret_status) != (::android::OK))) {
142     goto _aidl_error;
143   }
144   _aidl_error:
145   _aidl_status.setFromStatusT(_aidl_ret_status);
146   return _aidl_status;
147 }
148 
triggerPostinstall(const::android::String16 & partition)149 ::android::binder::Status BpUpdateEngineStable::triggerPostinstall(const ::android::String16& partition) {
150   ::android::Parcel _aidl_data;
151   _aidl_data.markForBinder(remoteStrong());
152   ::android::Parcel _aidl_reply;
153   ::android::status_t _aidl_ret_status = ::android::OK;
154   ::android::binder::Status _aidl_status;
155   ::android::binder::ScopedTrace _aidl_trace(ATRACE_TAG_AIDL, "AIDL::cpp::IUpdateEngineStable::triggerPostinstall::cppClient");
156   _aidl_ret_status = _aidl_data.writeInterfaceToken(getInterfaceDescriptor());
157   if (((_aidl_ret_status) != (::android::OK))) {
158     goto _aidl_error;
159   }
160   _aidl_ret_status = _aidl_data.writeString16(partition);
161   if (((_aidl_ret_status) != (::android::OK))) {
162     goto _aidl_error;
163   }
164   _aidl_ret_status = remote()->transact(BnUpdateEngineStable::TRANSACTION_triggerPostinstall, _aidl_data, &_aidl_reply, 0);
165   if (_aidl_ret_status == ::android::UNKNOWN_TRANSACTION && IUpdateEngineStable::getDefaultImpl()) [[unlikely]] {
166      return IUpdateEngineStable::getDefaultImpl()->triggerPostinstall(partition);
167   }
168   if (((_aidl_ret_status) != (::android::OK))) {
169     goto _aidl_error;
170   }
171   _aidl_ret_status = _aidl_status.readFromParcel(_aidl_reply);
172   if (((_aidl_ret_status) != (::android::OK))) {
173     goto _aidl_error;
174   }
175   if (!_aidl_status.isOk()) {
176     return _aidl_status;
177   }
178   _aidl_error:
179   _aidl_status.setFromStatusT(_aidl_ret_status);
180   return _aidl_status;
181 }
182 
getInterfaceVersion()183 int32_t BpUpdateEngineStable::getInterfaceVersion() {
184   if (cached_version_ == -1) {
185     ::android::Parcel data;
186     ::android::Parcel reply;
187     data.writeInterfaceToken(getInterfaceDescriptor());
188     ::android::status_t err = remote()->transact(BnUpdateEngineStable::TRANSACTION_getInterfaceVersion, data, &reply);
189     if (err == ::android::OK) {
190       ::android::binder::Status _aidl_status;
191       err = _aidl_status.readFromParcel(reply);
192       if (err == ::android::OK && _aidl_status.isOk()) {
193         cached_version_ = reply.readInt32();
194       }
195     }
196   }
197   return cached_version_;
198 }
199 
200 
getInterfaceHash()201 std::string BpUpdateEngineStable::getInterfaceHash() {
202   std::lock_guard<std::mutex> lockGuard(cached_hash_mutex_);
203   if (cached_hash_ == "-1") {
204     ::android::Parcel data;
205     ::android::Parcel reply;
206     data.writeInterfaceToken(getInterfaceDescriptor());
207     ::android::status_t err = remote()->transact(BnUpdateEngineStable::TRANSACTION_getInterfaceHash, data, &reply);
208     if (err == ::android::OK) {
209       ::android::binder::Status _aidl_status;
210       err = _aidl_status.readFromParcel(reply);
211       if (err == ::android::OK && _aidl_status.isOk()) {
212         reply.readUtf8FromUtf16(&cached_hash_);
213       }
214     }
215   }
216   return cached_hash_;
217 }
218 
219 }  // namespace os
220 }  // namespace android
221 #include <android/os/BnUpdateEngineStable.h>
222 #include <binder/Parcel.h>
223 #include <binder/Stability.h>
224 
225 namespace android {
226 namespace os {
227 
BnUpdateEngineStable()228 BnUpdateEngineStable::BnUpdateEngineStable()
229 {
230   ::android::internal::Stability::markCompilationUnit(this);
231 }
232 
onTransact(uint32_t _aidl_code,const::android::Parcel & _aidl_data,::android::Parcel * _aidl_reply,uint32_t _aidl_flags)233 ::android::status_t BnUpdateEngineStable::onTransact(uint32_t _aidl_code, const ::android::Parcel& _aidl_data, ::android::Parcel* _aidl_reply, uint32_t _aidl_flags) {
234   ::android::status_t _aidl_ret_status = ::android::OK;
235   switch (_aidl_code) {
236   case BnUpdateEngineStable::TRANSACTION_applyPayloadFd:
237   {
238     ::android::os::ParcelFileDescriptor in_pfd;
239     int64_t in_payload_offset;
240     int64_t in_payload_size;
241     ::std::vector<::android::String16> in_headerKeyValuePairs;
242     if (!(_aidl_data.checkInterface(this))) {
243       _aidl_ret_status = ::android::BAD_TYPE;
244       break;
245     }
246     ::android::binder::ScopedTrace _aidl_trace(ATRACE_TAG_AIDL, "AIDL::cpp::IUpdateEngineStable::applyPayloadFd::cppServer");
247     _aidl_ret_status = _aidl_data.readParcelable(&in_pfd);
248     if (((_aidl_ret_status) != (::android::OK))) {
249       break;
250     }
251     _aidl_ret_status = _aidl_data.readInt64(&in_payload_offset);
252     if (((_aidl_ret_status) != (::android::OK))) {
253       break;
254     }
255     _aidl_ret_status = _aidl_data.readInt64(&in_payload_size);
256     if (((_aidl_ret_status) != (::android::OK))) {
257       break;
258     }
259     _aidl_ret_status = _aidl_data.readString16Vector(&in_headerKeyValuePairs);
260     if (((_aidl_ret_status) != (::android::OK))) {
261       break;
262     }
263     if (auto st = _aidl_data.enforceNoDataAvail(); !st.isOk()) {
264       _aidl_ret_status = st.writeToParcel(_aidl_reply);
265       break;
266     }
267     ::android::binder::Status _aidl_status(applyPayloadFd(in_pfd, in_payload_offset, in_payload_size, in_headerKeyValuePairs));
268     _aidl_ret_status = _aidl_status.writeToParcel(_aidl_reply);
269     if (((_aidl_ret_status) != (::android::OK))) {
270       break;
271     }
272     if (!_aidl_status.isOk()) {
273       break;
274     }
275   }
276   break;
277   case BnUpdateEngineStable::TRANSACTION_bind:
278   {
279     ::android::sp<::android::os::IUpdateEngineStableCallback> in_callback;
280     bool _aidl_return;
281     if (!(_aidl_data.checkInterface(this))) {
282       _aidl_ret_status = ::android::BAD_TYPE;
283       break;
284     }
285     ::android::binder::ScopedTrace _aidl_trace(ATRACE_TAG_AIDL, "AIDL::cpp::IUpdateEngineStable::bind::cppServer");
286     _aidl_ret_status = _aidl_data.readStrongBinder(&in_callback);
287     if (((_aidl_ret_status) != (::android::OK))) {
288       break;
289     }
290     if (auto st = _aidl_data.enforceNoDataAvail(); !st.isOk()) {
291       _aidl_ret_status = st.writeToParcel(_aidl_reply);
292       break;
293     }
294     ::android::binder::Status _aidl_status(bind(in_callback, &_aidl_return));
295     _aidl_ret_status = _aidl_status.writeToParcel(_aidl_reply);
296     if (((_aidl_ret_status) != (::android::OK))) {
297       break;
298     }
299     if (!_aidl_status.isOk()) {
300       break;
301     }
302     _aidl_ret_status = _aidl_reply->writeBool(_aidl_return);
303     if (((_aidl_ret_status) != (::android::OK))) {
304       break;
305     }
306   }
307   break;
308   case BnUpdateEngineStable::TRANSACTION_unbind:
309   {
310     ::android::sp<::android::os::IUpdateEngineStableCallback> in_callback;
311     bool _aidl_return;
312     if (!(_aidl_data.checkInterface(this))) {
313       _aidl_ret_status = ::android::BAD_TYPE;
314       break;
315     }
316     ::android::binder::ScopedTrace _aidl_trace(ATRACE_TAG_AIDL, "AIDL::cpp::IUpdateEngineStable::unbind::cppServer");
317     _aidl_ret_status = _aidl_data.readStrongBinder(&in_callback);
318     if (((_aidl_ret_status) != (::android::OK))) {
319       break;
320     }
321     if (auto st = _aidl_data.enforceNoDataAvail(); !st.isOk()) {
322       _aidl_ret_status = st.writeToParcel(_aidl_reply);
323       break;
324     }
325     ::android::binder::Status _aidl_status(unbind(in_callback, &_aidl_return));
326     _aidl_ret_status = _aidl_status.writeToParcel(_aidl_reply);
327     if (((_aidl_ret_status) != (::android::OK))) {
328       break;
329     }
330     if (!_aidl_status.isOk()) {
331       break;
332     }
333     _aidl_ret_status = _aidl_reply->writeBool(_aidl_return);
334     if (((_aidl_ret_status) != (::android::OK))) {
335       break;
336     }
337   }
338   break;
339   case BnUpdateEngineStable::TRANSACTION_triggerPostinstall:
340   {
341     ::android::String16 in_partition;
342     if (!(_aidl_data.checkInterface(this))) {
343       _aidl_ret_status = ::android::BAD_TYPE;
344       break;
345     }
346     ::android::binder::ScopedTrace _aidl_trace(ATRACE_TAG_AIDL, "AIDL::cpp::IUpdateEngineStable::triggerPostinstall::cppServer");
347     _aidl_ret_status = _aidl_data.readString16(&in_partition);
348     if (((_aidl_ret_status) != (::android::OK))) {
349       break;
350     }
351     if (auto st = _aidl_data.enforceNoDataAvail(); !st.isOk()) {
352       _aidl_ret_status = st.writeToParcel(_aidl_reply);
353       break;
354     }
355     ::android::binder::Status _aidl_status(triggerPostinstall(in_partition));
356     _aidl_ret_status = _aidl_status.writeToParcel(_aidl_reply);
357     if (((_aidl_ret_status) != (::android::OK))) {
358       break;
359     }
360     if (!_aidl_status.isOk()) {
361       break;
362     }
363   }
364   break;
365   case BnUpdateEngineStable::TRANSACTION_getInterfaceVersion:
366   {
367     _aidl_data.checkInterface(this);
368     _aidl_reply->writeNoException();
369     _aidl_reply->writeInt32(IUpdateEngineStable::VERSION);
370   }
371   break;
372   case BnUpdateEngineStable::TRANSACTION_getInterfaceHash:
373   {
374     _aidl_data.checkInterface(this);
375     _aidl_reply->writeNoException();
376     _aidl_reply->writeUtf8AsUtf16(IUpdateEngineStable::HASH);
377   }
378   break;
379   default:
380   {
381     _aidl_ret_status = ::android::BBinder::onTransact(_aidl_code, _aidl_data, _aidl_reply, _aidl_flags);
382   }
383   break;
384   }
385   if (_aidl_ret_status == ::android::UNEXPECTED_NULL) {
386     _aidl_ret_status = ::android::binder::Status::fromExceptionCode(::android::binder::Status::EX_NULL_POINTER).writeOverParcel(_aidl_reply);
387   }
388   return _aidl_ret_status;
389 }
390 
getInterfaceVersion()391 int32_t BnUpdateEngineStable::getInterfaceVersion() {
392   return IUpdateEngineStable::VERSION;
393 }
getInterfaceHash()394 std::string BnUpdateEngineStable::getInterfaceHash() {
395   return IUpdateEngineStable::HASH;
396 }
397 }  // namespace os
398 }  // namespace android
399