70 lines
2.5 KiB
C
70 lines
2.5 KiB
C
// SPDX-License-Identifier: LGPL-2.1+
|
|
/*
|
|
* Copyright 2014 - 2015 Red Hat, Inc.
|
|
*/
|
|
|
|
#include "NetworkManager.h"
|
|
|
|
#include "nm-utils/nm-test-utils.h"
|
|
|
|
typedef struct {
|
|
GDBusConnection *bus;
|
|
GDBusProxy *proxy;
|
|
GPid pid;
|
|
int keepalive_fd;
|
|
} NMTstcServiceInfo;
|
|
|
|
NMTstcServiceInfo *nmtstc_service_init (void);
|
|
void nmtstc_service_cleanup (NMTstcServiceInfo *info);
|
|
NMTstcServiceInfo *nmtstc_service_available (NMTstcServiceInfo *info);
|
|
|
|
static inline void _nmtstc_auto_service_cleanup (NMTstcServiceInfo **info)
|
|
{
|
|
nmtstc_service_cleanup (g_steal_pointer (info));
|
|
}
|
|
#define nmtstc_auto_service_cleanup nm_auto(_nmtstc_auto_service_cleanup)
|
|
|
|
#define NMTSTC_SERVICE_INFO_SETUP(sinfo) \
|
|
NM_PRAGMA_WARNING_DISABLE ("-Wunused-variable") \
|
|
nmtstc_auto_service_cleanup NMTstcServiceInfo *sinfo = ({ \
|
|
NMTstcServiceInfo *_sinfo; \
|
|
\
|
|
_sinfo = nmtstc_service_init (); \
|
|
if (!nmtstc_service_available (_sinfo)) \
|
|
return; \
|
|
_sinfo; \
|
|
}); \
|
|
NM_PRAGMA_WARNING_REENABLE
|
|
|
|
NMDevice *nmtstc_service_add_device (NMTstcServiceInfo *info,
|
|
NMClient *client,
|
|
const char *method,
|
|
const char *ifname);
|
|
|
|
NMDevice * nmtstc_service_add_wired_device (NMTstcServiceInfo *sinfo,
|
|
NMClient *client,
|
|
const char *ifname,
|
|
const char *hwaddr,
|
|
const char **subchannels);
|
|
|
|
void nmtstc_service_add_connection (NMTstcServiceInfo *sinfo,
|
|
NMConnection *connection,
|
|
gboolean verify_connection,
|
|
char **out_path);
|
|
|
|
void nmtstc_service_add_connection_variant (NMTstcServiceInfo *sinfo,
|
|
GVariant *connection,
|
|
gboolean verify_connection,
|
|
char **out_path);
|
|
|
|
void nmtstc_service_update_connection (NMTstcServiceInfo *sinfo,
|
|
const char *path,
|
|
NMConnection *connection,
|
|
gboolean verify_connection);
|
|
|
|
void nmtstc_service_update_connection_variant (NMTstcServiceInfo *sinfo,
|
|
const char *path,
|
|
GVariant *connection,
|
|
gboolean verify_connection);
|
|
|