1 /*
2  * This file is auto-generated.  DO NOT MODIFY.
3  * Using: out/host/linux-x86/bin/aidl --lang=ndk --structured --version 15 --hash 638faa4a7decbe576465ac472371727d077aa246 -t --min_sdk_version 30 -pout/soong/.intermediates/packages/modules/Connectivity/staticlibs/netd/netd_event_listener_interface_interface/1/preprocessed.aidl --log --ninja -d out/soong/.intermediates/packages/modules/DnsResolver/dnsresolver_aidl_interface-V15-ndk-source/gen/staging/android/net/IDnsResolver.cpp.d -h out/soong/.intermediates/packages/modules/DnsResolver/dnsresolver_aidl_interface-V15-ndk-source/gen/include/staging -o out/soong/.intermediates/packages/modules/DnsResolver/dnsresolver_aidl_interface-V15-ndk-source/gen/staging -Npackages/modules/DnsResolver/aidl_api/dnsresolver_aidl_interface/15 packages/modules/DnsResolver/aidl_api/dnsresolver_aidl_interface/15/android/net/IDnsResolver.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 #pragma once
10 
11 #include <chrono>
12 #include <cstdint>
13 #include <functional>
14 #include <memory>
15 #include <optional>
16 #include <sstream>
17 #include <string>
18 #include <vector>
19 #include <android/binder_interface_utils.h>
20 #include <aidl/android/net/ResolverOptionsParcel.h>
21 #include <aidl/android/net/ResolverParamsParcel.h>
22 #include <aidl/android/net/metrics/INetdEventListener.h>
23 #include <aidl/android/net/resolv/aidl/IDnsResolverUnsolicitedEventListener.h>
24 #ifdef BINDER_STABILITY_SUPPORT
25 #include <android/binder_stability.h>
26 #endif  // BINDER_STABILITY_SUPPORT
27 
28 namespace aidl::android::net {
29 class ResolverOptionsParcel;
30 class ResolverParamsParcel;
31 }  // namespace aidl::android::net
32 namespace aidl::android::net::metrics {
33 class INetdEventListener;
34 }  // namespace aidl::android::net::metrics
35 namespace aidl::android::net::resolv::aidl {
36 class IDnsResolverUnsolicitedEventListener;
37 }  // namespace aidl::android::net::resolv::aidl
38 namespace aidl {
39 namespace android {
40 namespace net {
41 class IDnsResolverDelegator;
42 
43 class IDnsResolver : public ::ndk::ICInterface {
44 public:
45   typedef IDnsResolverDelegator DefaultDelegator;
46   static const char* descriptor;
47   IDnsResolver();
48   virtual ~IDnsResolver();
49 
50   enum : int32_t { RESOLVER_PARAMS_SAMPLE_VALIDITY = 0 };
51   enum : int32_t { RESOLVER_PARAMS_SUCCESS_THRESHOLD = 1 };
52   enum : int32_t { RESOLVER_PARAMS_MIN_SAMPLES = 2 };
53   enum : int32_t { RESOLVER_PARAMS_MAX_SAMPLES = 3 };
54   enum : int32_t { RESOLVER_PARAMS_BASE_TIMEOUT_MSEC = 4 };
55   enum : int32_t { RESOLVER_PARAMS_RETRY_COUNT = 5 };
56   enum : int32_t { RESOLVER_PARAMS_COUNT = 6 };
57   enum : int32_t { RESOLVER_STATS_SUCCESSES = 0 };
58   enum : int32_t { RESOLVER_STATS_ERRORS = 1 };
59   enum : int32_t { RESOLVER_STATS_TIMEOUTS = 2 };
60   enum : int32_t { RESOLVER_STATS_INTERNAL_ERRORS = 3 };
61   enum : int32_t { RESOLVER_STATS_RTT_AVG = 4 };
62   enum : int32_t { RESOLVER_STATS_LAST_SAMPLE_TIME = 5 };
63   enum : int32_t { RESOLVER_STATS_USABLE = 6 };
64   enum : int32_t { RESOLVER_STATS_COUNT = 7 };
65   enum : int32_t { DNS_RESOLVER_LOG_VERBOSE = 0 };
66   enum : int32_t { DNS_RESOLVER_LOG_DEBUG = 1 };
67   enum : int32_t { DNS_RESOLVER_LOG_INFO = 2 };
68   enum : int32_t { DNS_RESOLVER_LOG_WARNING = 3 };
69   enum : int32_t { DNS_RESOLVER_LOG_ERROR = 4 };
70   enum : int32_t { TC_MODE_DEFAULT = 0 };
71   enum : int32_t { TC_MODE_UDP_TCP = 1 };
72   enum : int32_t { TRANSPORT_UNKNOWN = -1 };
73   enum : int32_t { TRANSPORT_CELLULAR = 0 };
74   enum : int32_t { TRANSPORT_WIFI = 1 };
75   enum : int32_t { TRANSPORT_BLUETOOTH = 2 };
76   enum : int32_t { TRANSPORT_ETHERNET = 3 };
77   enum : int32_t { TRANSPORT_VPN = 4 };
78   enum : int32_t { TRANSPORT_WIFI_AWARE = 5 };
79   enum : int32_t { TRANSPORT_LOWPAN = 6 };
80   enum : int32_t { TRANSPORT_TEST = 7 };
81   enum : int32_t { TRANSPORT_USB = 8 };
82   enum : int32_t { TRANSPORT_THREAD = 9 };
83   enum : int32_t { TRANSPORT_SATELLITE = 10 };
84   static inline const int32_t version = 15;
85   static inline const std::string hash = "638faa4a7decbe576465ac472371727d077aa246";
86   static constexpr uint32_t TRANSACTION_isAlive = FIRST_CALL_TRANSACTION + 0;
87   static constexpr uint32_t TRANSACTION_registerEventListener = FIRST_CALL_TRANSACTION + 1;
88   static constexpr uint32_t TRANSACTION_setResolverConfiguration = FIRST_CALL_TRANSACTION + 2;
89   static constexpr uint32_t TRANSACTION_getResolverInfo = FIRST_CALL_TRANSACTION + 3;
90   static constexpr uint32_t TRANSACTION_startPrefix64Discovery = FIRST_CALL_TRANSACTION + 4;
91   static constexpr uint32_t TRANSACTION_stopPrefix64Discovery = FIRST_CALL_TRANSACTION + 5;
92   static constexpr uint32_t TRANSACTION_getPrefix64 = FIRST_CALL_TRANSACTION + 6;
93   static constexpr uint32_t TRANSACTION_createNetworkCache = FIRST_CALL_TRANSACTION + 7;
94   static constexpr uint32_t TRANSACTION_destroyNetworkCache = FIRST_CALL_TRANSACTION + 8;
95   static constexpr uint32_t TRANSACTION_setLogSeverity = FIRST_CALL_TRANSACTION + 9;
96   static constexpr uint32_t TRANSACTION_flushNetworkCache = FIRST_CALL_TRANSACTION + 10;
97   static constexpr uint32_t TRANSACTION_setPrefix64 = FIRST_CALL_TRANSACTION + 11;
98   static constexpr uint32_t TRANSACTION_registerUnsolicitedEventListener = FIRST_CALL_TRANSACTION + 12;
99   static constexpr uint32_t TRANSACTION_setResolverOptions = FIRST_CALL_TRANSACTION + 13;
100 
101   static std::shared_ptr<IDnsResolver> fromBinder(const ::ndk::SpAIBinder& binder);
102   static binder_status_t writeToParcel(AParcel* parcel, const std::shared_ptr<IDnsResolver>& instance);
103   static binder_status_t readFromParcel(const AParcel* parcel, std::shared_ptr<IDnsResolver>* instance);
104   static bool setDefaultImpl(const std::shared_ptr<IDnsResolver>& impl);
105   static const std::shared_ptr<IDnsResolver>& getDefaultImpl();
106   virtual ::ndk::ScopedAStatus isAlive(bool* _aidl_return) = 0;
107   virtual ::ndk::ScopedAStatus registerEventListener(const std::shared_ptr<::aidl::android::net::metrics::INetdEventListener>& in_listener) = 0;
108   virtual ::ndk::ScopedAStatus setResolverConfiguration(const ::aidl::android::net::ResolverParamsParcel& in_resolverParams) = 0;
109   virtual ::ndk::ScopedAStatus getResolverInfo(int32_t in_netId, std::vector<std::string>* out_servers, std::vector<std::string>* out_domains, std::vector<std::string>* out_tlsServers, std::vector<int32_t>* out_params, std::vector<int32_t>* out_stats, std::vector<int32_t>* out_wait_for_pending_req_timeout_count) = 0;
110   virtual ::ndk::ScopedAStatus startPrefix64Discovery(int32_t in_netId) = 0;
111   virtual ::ndk::ScopedAStatus stopPrefix64Discovery(int32_t in_netId) = 0;
112   virtual ::ndk::ScopedAStatus getPrefix64(int32_t in_netId, std::string* _aidl_return) = 0;
113   virtual ::ndk::ScopedAStatus createNetworkCache(int32_t in_netId) = 0;
114   virtual ::ndk::ScopedAStatus destroyNetworkCache(int32_t in_netId) = 0;
115   virtual ::ndk::ScopedAStatus setLogSeverity(int32_t in_logSeverity) = 0;
116   virtual ::ndk::ScopedAStatus flushNetworkCache(int32_t in_netId) = 0;
117   virtual ::ndk::ScopedAStatus setPrefix64(int32_t in_netId, const std::string& in_prefix) = 0;
118   virtual ::ndk::ScopedAStatus registerUnsolicitedEventListener(const std::shared_ptr<::aidl::android::net::resolv::aidl::IDnsResolverUnsolicitedEventListener>& in_listener) = 0;
119   virtual ::ndk::ScopedAStatus setResolverOptions(int32_t in_netId, const ::aidl::android::net::ResolverOptionsParcel& in_optionParams) = 0;
120   virtual ::ndk::ScopedAStatus getInterfaceVersion(int32_t* _aidl_return) = 0;
121   virtual ::ndk::ScopedAStatus getInterfaceHash(std::string* _aidl_return) = 0;
122 private:
123   static std::shared_ptr<IDnsResolver> default_impl;
124 };
125 class IDnsResolverDefault : public IDnsResolver {
126 public:
127   ::ndk::ScopedAStatus isAlive(bool* _aidl_return) override;
128   ::ndk::ScopedAStatus registerEventListener(const std::shared_ptr<::aidl::android::net::metrics::INetdEventListener>& in_listener) override;
129   ::ndk::ScopedAStatus setResolverConfiguration(const ::aidl::android::net::ResolverParamsParcel& in_resolverParams) override;
130   ::ndk::ScopedAStatus getResolverInfo(int32_t in_netId, std::vector<std::string>* out_servers, std::vector<std::string>* out_domains, std::vector<std::string>* out_tlsServers, std::vector<int32_t>* out_params, std::vector<int32_t>* out_stats, std::vector<int32_t>* out_wait_for_pending_req_timeout_count) override;
131   ::ndk::ScopedAStatus startPrefix64Discovery(int32_t in_netId) override;
132   ::ndk::ScopedAStatus stopPrefix64Discovery(int32_t in_netId) override;
133   ::ndk::ScopedAStatus getPrefix64(int32_t in_netId, std::string* _aidl_return) override;
134   ::ndk::ScopedAStatus createNetworkCache(int32_t in_netId) override;
135   ::ndk::ScopedAStatus destroyNetworkCache(int32_t in_netId) override;
136   ::ndk::ScopedAStatus setLogSeverity(int32_t in_logSeverity) override;
137   ::ndk::ScopedAStatus flushNetworkCache(int32_t in_netId) override;
138   ::ndk::ScopedAStatus setPrefix64(int32_t in_netId, const std::string& in_prefix) override;
139   ::ndk::ScopedAStatus registerUnsolicitedEventListener(const std::shared_ptr<::aidl::android::net::resolv::aidl::IDnsResolverUnsolicitedEventListener>& in_listener) override;
140   ::ndk::ScopedAStatus setResolverOptions(int32_t in_netId, const ::aidl::android::net::ResolverOptionsParcel& in_optionParams) override;
141   ::ndk::ScopedAStatus getInterfaceVersion(int32_t* _aidl_return) override;
142   ::ndk::ScopedAStatus getInterfaceHash(std::string* _aidl_return) override;
143   ::ndk::SpAIBinder asBinder() override;
144   bool isRemote() override;
145 };
146 }  // namespace net
147 }  // namespace android
148 }  // namespace aidl
149