xref: /aosp_15_r20/external/cronet/net/base/network_handle.h (revision 6777b5387eb2ff775bb5750e3f5d96f37fb7352b)
1*6777b538SAndroid Build Coastguard Worker // Copyright 2022 The Chromium Authors
2*6777b538SAndroid Build Coastguard Worker // Use of this source code is governed by a BSD-style license that can be
3*6777b538SAndroid Build Coastguard Worker // found in the LICENSE file.
4*6777b538SAndroid Build Coastguard Worker 
5*6777b538SAndroid Build Coastguard Worker #ifndef NET_BASE_NETWORK_HANDLE_H_
6*6777b538SAndroid Build Coastguard Worker #define NET_BASE_NETWORK_HANDLE_H_
7*6777b538SAndroid Build Coastguard Worker 
8*6777b538SAndroid Build Coastguard Worker #include <stdint.h>
9*6777b538SAndroid Build Coastguard Worker 
10*6777b538SAndroid Build Coastguard Worker namespace net::handles {
11*6777b538SAndroid Build Coastguard Worker 
12*6777b538SAndroid Build Coastguard Worker // Opaque handle for device-wide connection to a particular network. For
13*6777b538SAndroid Build Coastguard Worker // example an association with a particular WiFi network with a particular
14*6777b538SAndroid Build Coastguard Worker // SSID or a connection to particular cellular network.
15*6777b538SAndroid Build Coastguard Worker // The meaning of this handle is target-dependent. On Android
16*6777b538SAndroid Build Coastguard Worker // handles::NetworkHandles are equivalent to:
17*6777b538SAndroid Build Coastguard Worker //   On Lollipop, the framework's concept of NetIDs (e.g. Network.netId), and
18*6777b538SAndroid Build Coastguard Worker //   On Marshmallow and newer releases, network handles
19*6777b538SAndroid Build Coastguard Worker //           (e.g. Network.getNetworkHandle()).
20*6777b538SAndroid Build Coastguard Worker typedef int64_t NetworkHandle;
21*6777b538SAndroid Build Coastguard Worker 
22*6777b538SAndroid Build Coastguard Worker // An invalid NetworkHandle.
23*6777b538SAndroid Build Coastguard Worker inline constexpr NetworkHandle kInvalidNetworkHandle{-1};
24*6777b538SAndroid Build Coastguard Worker 
25*6777b538SAndroid Build Coastguard Worker }  // namespace net::handles
26*6777b538SAndroid Build Coastguard Worker 
27*6777b538SAndroid Build Coastguard Worker #endif  // NET_BASE_NETWORK_HANDLE_H_
28