|
Packit Service |
dff8e4 |
/* SPDX-License-Identifier: LGPL-2.1-or-later */
|
|
Packit Service |
dff8e4 |
|
|
Packit Service |
dff8e4 |
#ifndef __NM_CLOUD_SETUP_UTILS_H__
|
|
Packit Service |
dff8e4 |
#define __NM_CLOUD_SETUP_UTILS_H__
|
|
Packit Service |
dff8e4 |
|
|
Packit Service |
dff8e4 |
#include "libnm-glib-aux/nm-logging-fwd.h"
|
|
Packit Service |
dff8e4 |
|
|
Packit Service |
dff8e4 |
/*****************************************************************************/
|
|
Packit Service |
dff8e4 |
|
|
Packit Service |
dff8e4 |
/* mark names for variables that can be used as configuration. Search
|
|
Packit Service |
dff8e4 |
* for NMCS_ENV_VARIABLE() to find all honored environment variables. */
|
|
Packit Service |
dff8e4 |
#define NMCS_ENV_VARIABLE(var) "" var ""
|
|
Packit Service |
dff8e4 |
|
|
Packit Service |
dff8e4 |
/*****************************************************************************/
|
|
Packit Service |
dff8e4 |
|
|
Packit Service |
dff8e4 |
extern volatile NMLogLevel _nm_logging_configured_level;
|
|
Packit Service |
dff8e4 |
|
|
Packit Service |
dff8e4 |
static inline gboolean
|
|
Packit Service |
dff8e4 |
nm_logging_enabled(NMLogLevel level)
|
|
Packit Service |
dff8e4 |
{
|
|
Packit Service |
dff8e4 |
return level >= _nm_logging_configured_level;
|
|
Packit Service |
dff8e4 |
}
|
|
Packit Service |
dff8e4 |
|
|
Packit Service |
dff8e4 |
void _nm_logging_enabled_init(const char *level_str);
|
|
Packit Service |
dff8e4 |
|
|
Packit Service |
dff8e4 |
void _nm_log_impl_cs(NMLogLevel level, const char *fmt, ...) _nm_printf(2, 3);
|
|
Packit Service |
dff8e4 |
|
|
Packit Service |
dff8e4 |
#define _nm_log(level, ...) _nm_log_impl_cs((level), __VA_ARGS__);
|
|
Packit Service |
dff8e4 |
|
|
Packit Service |
dff8e4 |
#define _NMLOG(level, ...) \
|
|
Packit Service |
dff8e4 |
G_STMT_START \
|
|
Packit Service |
dff8e4 |
{ \
|
|
Packit Service |
dff8e4 |
const NMLogLevel _level = (level); \
|
|
Packit Service |
dff8e4 |
\
|
|
Packit Service |
dff8e4 |
if (nm_logging_enabled(_level)) { \
|
|
Packit Service |
dff8e4 |
_nm_log(_level, __VA_ARGS__); \
|
|
Packit Service |
dff8e4 |
} \
|
|
Packit Service |
dff8e4 |
} \
|
|
Packit Service |
dff8e4 |
G_STMT_END
|
|
Packit Service |
dff8e4 |
|
|
Packit Service |
dff8e4 |
/*****************************************************************************/
|
|
Packit Service |
dff8e4 |
|
|
Packit Service |
dff8e4 |
#ifndef NM_DIST_VERSION
|
|
Packit Service |
dff8e4 |
#define NM_DIST_VERSION VERSION
|
|
Packit Service |
dff8e4 |
#endif
|
|
Packit Service |
dff8e4 |
|
|
Packit Service |
dff8e4 |
/*****************************************************************************/
|
|
Packit Service |
dff8e4 |
|
|
Packit Service |
dff8e4 |
gpointer nmcs_wait_for_objects_register(gpointer target);
|
|
Packit Service |
dff8e4 |
|
|
Packit Service |
dff8e4 |
gboolean nmcs_wait_for_objects_iterate_until_done(GMainContext *context, int timeout_msec);
|
|
Packit Service |
dff8e4 |
|
|
Packit Service |
dff8e4 |
/*****************************************************************************/
|
|
Packit Service |
dff8e4 |
|
|
Packit Service |
dff8e4 |
typedef void (*NMCSUtilsPollProbeStartFcn)(GCancellable * cancellable,
|
|
Packit Service |
dff8e4 |
gpointer probe_user_data,
|
|
Packit Service |
dff8e4 |
GAsyncReadyCallback callback,
|
|
Packit Service |
dff8e4 |
gpointer user_data);
|
|
Packit Service |
dff8e4 |
|
|
Packit Service |
dff8e4 |
typedef gboolean (*NMCSUtilsPollProbeFinishFcn)(GObject * source,
|
|
Packit Service |
dff8e4 |
GAsyncResult *result,
|
|
Packit Service |
dff8e4 |
gpointer probe_user_data,
|
|
Packit Service |
dff8e4 |
GError ** error);
|
|
Packit Service |
dff8e4 |
|
|
Packit Service |
dff8e4 |
void nmcs_utils_poll(int poll_timeout_ms,
|
|
Packit Service |
dff8e4 |
int ratelimit_timeout_ms,
|
|
Packit Service |
dff8e4 |
int sleep_timeout_ms,
|
|
Packit Service |
dff8e4 |
NMCSUtilsPollProbeStartFcn probe_start_fcn,
|
|
Packit Service |
dff8e4 |
NMCSUtilsPollProbeFinishFcn probe_finish_fcn,
|
|
Packit Service |
dff8e4 |
gpointer probe_user_data,
|
|
Packit Service |
dff8e4 |
GCancellable * cancellable,
|
|
Packit Service |
dff8e4 |
GAsyncReadyCallback callback,
|
|
Packit Service |
dff8e4 |
gpointer user_data);
|
|
Packit Service |
dff8e4 |
|
|
Packit Service |
dff8e4 |
gboolean nmcs_utils_poll_finish(GAsyncResult *result, gpointer *probe_user_data, GError **error);
|
|
Packit Service |
dff8e4 |
|
|
Packit Service |
dff8e4 |
/*****************************************************************************/
|
|
Packit Service |
dff8e4 |
|
|
Packit Service |
dff8e4 |
char *nmcs_utils_hwaddr_normalize(const char *hwaddr, gssize len);
|
|
Packit Service |
dff8e4 |
|
|
Packit Service |
dff8e4 |
static inline char *
|
|
Packit Service |
dff8e4 |
nmcs_utils_hwaddr_normalize_gbytes(GBytes *hwaddr)
|
|
Packit Service |
dff8e4 |
{
|
|
Packit Service |
dff8e4 |
const char *str;
|
|
Packit Service |
dff8e4 |
gsize len;
|
|
Packit Service |
dff8e4 |
|
|
Packit Service |
dff8e4 |
str = g_bytes_get_data(hwaddr, &len;;
|
|
Packit Service |
dff8e4 |
return nmcs_utils_hwaddr_normalize(str, len);
|
|
Packit Service |
dff8e4 |
}
|
|
Packit Service |
dff8e4 |
|
|
Packit Service |
dff8e4 |
/*****************************************************************************/
|
|
Packit Service |
dff8e4 |
|
|
Packit Service |
dff8e4 |
gboolean nmcs_utils_ipaddr_normalize_bin(int addr_family,
|
|
Packit Service |
dff8e4 |
const char *addr,
|
|
Packit Service |
dff8e4 |
gssize len,
|
|
Packit Service |
dff8e4 |
int * out_addr_family,
|
|
Packit Service |
dff8e4 |
gpointer out_addr_bin);
|
|
Packit Service |
dff8e4 |
|
|
Packit Service |
dff8e4 |
char *nmcs_utils_ipaddr_normalize(int addr_family, const char *addr, gssize len);
|
|
Packit Service |
dff8e4 |
|
|
Packit Service |
dff8e4 |
static inline char *
|
|
Packit Service |
dff8e4 |
nmcs_utils_ipaddr_normalize_gbytes(int addr_family, GBytes *addr)
|
|
Packit Service |
dff8e4 |
{
|
|
Packit Service |
dff8e4 |
const char *str;
|
|
Packit Service |
dff8e4 |
gsize len;
|
|
Packit Service |
dff8e4 |
|
|
Packit Service |
dff8e4 |
str = g_bytes_get_data(addr, &len;;
|
|
Packit Service |
dff8e4 |
return nmcs_utils_ipaddr_normalize(addr_family, str, len);
|
|
Packit Service |
dff8e4 |
}
|
|
Packit Service |
dff8e4 |
|
|
Packit Service |
dff8e4 |
/*****************************************************************************/
|
|
Packit Service |
dff8e4 |
|
|
Packit Service |
dff8e4 |
const char *nmcs_utils_parse_memmem(GBytes *mem, const char *needle);
|
|
Packit Service |
dff8e4 |
|
|
Packit Service |
dff8e4 |
const char *nmcs_utils_parse_get_full_line(GBytes *mem, const char *needle);
|
|
Packit Service |
dff8e4 |
|
|
Packit Service |
dff8e4 |
/*****************************************************************************/
|
|
Packit Service |
dff8e4 |
|
|
Packit Service |
dff8e4 |
char *nmcs_utils_uri_build_concat_v(const char *base, const char **components, gsize n_components);
|
|
Packit Service |
dff8e4 |
|
|
Packit Service |
dff8e4 |
#define nmcs_utils_uri_build_concat(base, ...) \
|
|
Packit Service |
dff8e4 |
nmcs_utils_uri_build_concat_v(base, ((const char *[]){__VA_ARGS__}), NM_NARG(__VA_ARGS__))
|
|
Packit Service |
dff8e4 |
|
|
Packit Service |
dff8e4 |
/*****************************************************************************/
|
|
Packit Service |
dff8e4 |
|
|
Packit Service |
dff8e4 |
gboolean nmcs_setting_ip_replace_ipv4_addresses(NMSettingIPConfig *s_ip,
|
|
Packit Service |
dff8e4 |
NMIPAddress ** entries_arr,
|
|
Packit Service |
dff8e4 |
guint entries_len);
|
|
Packit Service |
dff8e4 |
|
|
Packit Service |
dff8e4 |
gboolean nmcs_setting_ip_replace_ipv4_routes(NMSettingIPConfig *s_ip,
|
|
Packit Service |
dff8e4 |
NMIPRoute ** entries_arr,
|
|
Packit Service |
dff8e4 |
guint entries_len);
|
|
Packit Service |
dff8e4 |
|
|
Packit Service |
dff8e4 |
gboolean nmcs_setting_ip_replace_ipv4_rules(NMSettingIPConfig *s_ip,
|
|
Packit Service |
dff8e4 |
NMIPRoutingRule ** entries_arr,
|
|
Packit Service |
dff8e4 |
guint entries_len);
|
|
Packit Service |
dff8e4 |
|
|
Packit Service |
dff8e4 |
/*****************************************************************************/
|
|
Packit Service |
dff8e4 |
|
|
Packit Service |
dff8e4 |
NMConnection *nmcs_device_get_applied_connection(NMDevice * device,
|
|
Packit Service |
dff8e4 |
GCancellable *cancellable,
|
|
Packit Service |
dff8e4 |
guint64 * version_id,
|
|
Packit Service |
dff8e4 |
GError ** error);
|
|
Packit Service |
dff8e4 |
|
|
Packit Service |
dff8e4 |
gboolean nmcs_device_reapply(NMDevice * device,
|
|
Packit Service |
dff8e4 |
GCancellable *sigterm_cancellable,
|
|
Packit Service |
dff8e4 |
NMConnection *connection,
|
|
Packit Service |
dff8e4 |
guint64 version_id,
|
|
Packit Service |
dff8e4 |
gboolean * out_version_id_changed,
|
|
Packit Service |
dff8e4 |
GError ** error);
|
|
Packit Service |
dff8e4 |
|
|
Packit Service |
dff8e4 |
#endif /* __NM_CLOUD_SETUP_UTILS_H__ */
|