2022-12-19 08:31:42 +00:00
|
|
|
/* SPDX-FileCopyrightText: 2016 Matthias Schiffer <mschiffer@universe-factory.net> */
|
|
|
|
/* SPDX-License-Identifier: BSD-2-Clause */
|
2016-02-02 05:38:03 +00:00
|
|
|
|
|
|
|
|
|
|
|
#ifndef _LIBGLUON_LIBGLUON_H_
|
|
|
|
#define _LIBGLUON_LIBGLUON_H_
|
|
|
|
|
2020-06-01 16:03:50 +00:00
|
|
|
#include <net/if.h>
|
2017-08-10 18:08:52 +00:00
|
|
|
#include <netinet/in.h>
|
|
|
|
#include <stdbool.h>
|
|
|
|
|
|
|
|
|
2016-02-02 05:38:03 +00:00
|
|
|
char * gluonutil_read_line(const char *filename);
|
|
|
|
char * gluonutil_get_sysconfig(const char *key);
|
|
|
|
char * gluonutil_get_node_id(void);
|
2020-06-01 16:03:50 +00:00
|
|
|
|
|
|
|
enum gluonutil_interface_type {
|
|
|
|
GLUONUTIL_INTERFACE_TYPE_UNKNOWN,
|
|
|
|
GLUONUTIL_INTERFACE_TYPE_WIRED,
|
|
|
|
GLUONUTIL_INTERFACE_TYPE_WIRELESS,
|
|
|
|
GLUONUTIL_INTERFACE_TYPE_TUNNEL,
|
|
|
|
};
|
|
|
|
|
|
|
|
void gluonutil_get_interface_lower(char out[IF_NAMESIZE], const char *ifname);
|
2016-02-02 05:38:03 +00:00
|
|
|
char * gluonutil_get_interface_address(const char *ifname);
|
2020-06-01 16:03:50 +00:00
|
|
|
enum gluonutil_interface_type gluonutil_get_interface_type(const char *ifname);
|
|
|
|
|
2017-08-10 18:08:52 +00:00
|
|
|
bool gluonutil_get_node_prefix6(struct in6_addr *prefix);
|
2016-02-02 05:38:03 +00:00
|
|
|
|
|
|
|
struct json_object * gluonutil_wrap_string(const char *str);
|
|
|
|
struct json_object * gluonutil_wrap_and_free_string(char *str);
|
|
|
|
|
2017-10-28 15:05:53 +00:00
|
|
|
bool gluonutil_has_domains(void);
|
|
|
|
char * gluonutil_get_domain(void);
|
2021-01-12 03:29:08 +00:00
|
|
|
char * gluonutil_get_primary_domain(void);
|
2016-02-02 05:38:03 +00:00
|
|
|
struct json_object * gluonutil_load_site_config(void);
|
|
|
|
|
|
|
|
#endif /* _LIBGLUON_LIBGLUON_H_ */
|