2 * Network Configuration Module
4 * Copyright (c) 2017 Samsung Electronics Co., Ltd. All rights reserved.
6 * Licensed under the Apache License, Version 2.0 (the "License");
7 * you may not use this file except in compliance with the License.
8 * You may obtain a copy of the License at
10 * http://www.apache.org/licenses/LICENSE-2.0
12 * Unless required by applicable law or agreed to in writing, software
13 * distributed under the License is distributed on an "AS IS" BASIS,
14 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15 * See the License for the specific language governing permissions and
16 * limitations under the License.
19 #ifndef __MESH_INTERFACE_H__
20 #define __MESH_INTERFACE_H__
23 MESH_INTERFACE_UP = 1, /**< Interface up */
24 MESH_INTERFACE_DOWN, /**< Interface down */
25 MESH_INTERFACE_DO_NOTHING, /**< Do not handle up/down */
26 } mesh_set_interface_type_e;
28 int mesh_interface_set(const char* interface, const char* ip_addr,
29 mesh_set_interface_type_e type);
30 //int mesh_interface_set_mac_addr(const char* interface, const char* mac_addr);
31 int mesh_interface_initialize(mesh_interface_s *info);
32 int mesh_interface_check(const char* interface);
33 int mesh_interface_check_external_exists(
34 const char* external_interface, bool *state);
35 int mesh_interface_check_bridge_interface_exists(const char* bridge, const char* interface);
36 char* mesh_interface_get_address(const char* if_name);
38 #endif /* __MESH_INTERFACE_H__ */