1 /*************************************************************************
3 * Copyright 2020 highstreet technologies GmbH and others
5 * Licensed under the Apache License, Version 2.0 (the "License");
6 * you may not use this file except in compliance with the License.
7 * You may obtain a copy of the License at
9 * http://www.apache.org/licenses/LICENSE-2.0
11 * Unless required by applicable law or agreed to in writing, software
12 * distributed under the License is distributed on an "AS IS" BASIS,
13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 * See the License for the specific language governing permissions and
15 * limitations under the License.
16 ***************************************************************************/
22 #include <libyang/libyang.h>
32 char *mount_point_addressing_method;
37 } manager_network_function_instance_t;
41 manager_network_function_instance_t *instance;
45 struct lys_ident *function_type;
46 char *function_type_string;
47 const char *docker_image_name;
50 int started_instances;
51 int mounted_instances;
53 char *docker_instance_name;
54 char *docker_version_tag;
55 char *docker_repository;
57 char *mount_point_addressing_method;
58 } manager_network_function_type;
61 int manager_run(void);
63 //manager_operations.c
64 void manager_operations_init(void);
66 int manager_start_instance(manager_network_function_type *function_type);
67 int manager_config_instance(manager_network_function_type *function_type, manager_network_function_instance_t *instance);
68 int manager_stop_instance(manager_network_function_type *function_type);
69 int manager_mount_instance(manager_network_function_type *function_type);
70 int manager_unmount_instance(manager_network_function_type *function_type);