b728119955816555d596d4412c421d2e7a1316db
[platform/upstream/iotivity.git] / resource / csdk / connectivity / src / ip_adapter / android / caifaddrs.h
1 /******************************************************************
2 *
3 * Copyright 2016 Samsung Electronics All Rights Reserved.
4 *
5 *
6 *
7 * Licensed under the Apache License, Version 2.0 (the "License");
8 * you may not use this file except in compliance with the License.
9 * You may obtain a copy of the License at
10 *
11 *      http://www.apache.org/licenses/LICENSE-2.0
12 *
13 * Unless required by applicable law or agreed to in writing, software
14 * distributed under the License is distributed on an "AS IS" BASIS,
15 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16 * See the License for the specific language governing permissions and
17 * limitations under the License.
18 *
19 ******************************************************************/
20 #include "cacommon.h"
21
22 /**
23  * CA partial define for the structure ifaddrs.
24  */
25 struct ifaddrs
26 {
27     struct ifaddrs     *ifa_next;
28     char               *ifa_name;
29     unsigned int       ifa_flags;
30     struct sockaddr    *ifa_addr;
31 };
32
33 /**
34  * CA internal definition for getifaddrs.
35  *
36  * @param[out]  ifap    List of ifaddrs.
37  * @return  On success, returns CA_STATUS_OK; on error, CA error code is returned.
38  */
39 CAResult_t CAGetIfaddrsUsingNetlink(struct ifaddrs **ifap);
40
41 /**
42  * CA internal definition for freeifaddrs
43  *
44  * @param[in]  ifa      List of ifaddrs.
45  */
46 void CAFreeIfAddrs(struct ifaddrs *ifa);
47