diff options
author | Thomas Haller <thaller@redhat.com> | 2016-09-05 16:42:59 +0200 |
---|---|---|
committer | Thomas Haller <thaller@redhat.com> | 2016-09-08 00:21:21 +0200 |
commit | 822f01a8fdb63831c887d5db9fb06eb840f53c88 (patch) | |
tree | bb82086b072ee7322cffc471aa5504a41431249e | |
parent | cdf6ad40572f23be6f8b6971bd57b1002ffb9aaf (diff) | |
download | NetworkManager-822f01a8fdb63831c887d5db9fb06eb840f53c88.tar.gz |
dhcp-listener: refactor type definition and embed private data in @self
-rw-r--r-- | src/dhcp-manager/nm-dhcp-listener.c | 50 | ||||
-rw-r--r-- | src/dhcp-manager/nm-dhcp-listener.h | 4 |
2 files changed, 31 insertions, 23 deletions
diff --git a/src/dhcp-manager/nm-dhcp-listener.c b/src/dhcp-manager/nm-dhcp-listener.c index eadff3ec54..d3616cb636 100644 --- a/src/dhcp-manager/nm-dhcp-listener.c +++ b/src/dhcp-manager/nm-dhcp-listener.c @@ -13,12 +13,14 @@ * with this program; if not, write to the Free Software Foundation, Inc., * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. * - * Copyright 2014 Red Hat, Inc. + * Copyright 2014 - 2016 Red Hat, Inc. * */ #include "nm-default.h" +#include "nm-dhcp-listener.h" + #include <sys/socket.h> #include <sys/wait.h> #include <signal.h> @@ -27,7 +29,6 @@ #include <errno.h> #include <unistd.h> -#include "nm-dhcp-listener.h" #include "nm-core-internal.h" #include "nm-bus-manager.h" #include "NetworkManagerUtils.h" @@ -36,6 +37,8 @@ #define PRIV_SOCK_PATH NMRUNDIR "/private-dhcp" #define PRIV_SOCK_TAG "dhcp" +/*****************************************************************************/ + typedef struct { NMBusManager * dbus_mgr; gulong new_conn_id; @@ -43,17 +46,26 @@ typedef struct { GHashTable * signal_handlers; } NMDhcpListenerPrivate; -#define NM_DHCP_LISTENER_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), NM_TYPE_DHCP_LISTENER, NMDhcpListenerPrivate)) +struct _NMDhcpListener { + GObject parent; + NMDhcpListenerPrivate _priv; +}; + +struct _NMDhcpListenerClass { + GObjectClass parent_class; +}; G_DEFINE_TYPE (NMDhcpListener, nm_dhcp_listener, G_TYPE_OBJECT) +#define NM_DHCP_LISTENER_GET_PRIVATE(self) _NM_GET_PRIVATE(self, NMDhcpListener, NM_IS_DHCP_LISTENER) + enum { EVENT, LAST_SIGNAL }; static guint signals[LAST_SIGNAL] = { 0 }; -/***************************************************/ +/*****************************************************************************/ static char * get_option (GVariant *options, const char *key) @@ -188,7 +200,7 @@ nm_dhcp_listener_init (NMDhcpListener *self) { NMDhcpListenerPrivate *priv = NM_DHCP_LISTENER_GET_PRIVATE (self); - /* Maps GDBusConnection :: GDBusProxy */ + /* Maps GDBusConnection :: signal-id */ priv->signal_handlers = g_hash_table_new (NULL, NULL); priv->dbus_mgr = nm_bus_manager_get (); @@ -208,7 +220,7 @@ nm_dhcp_listener_init (NMDhcpListener *self) static void dispose (GObject *object) { - NMDhcpListenerPrivate *priv = NM_DHCP_LISTENER_GET_PRIVATE (object); + NMDhcpListenerPrivate *priv = NM_DHCP_LISTENER_GET_PRIVATE ((NMDhcpListener *) object); nm_clear_g_signal_handler (priv->dbus_mgr, &priv->new_conn_id); nm_clear_g_signal_handler (priv->dbus_mgr, &priv->dis_conn_id); @@ -224,22 +236,18 @@ nm_dhcp_listener_class_init (NMDhcpListenerClass *listener_class) { GObjectClass *object_class = G_OBJECT_CLASS (listener_class); - g_type_class_add_private (listener_class, sizeof (NMDhcpListenerPrivate)); - - /* virtual methods */ object_class->dispose = dispose; - /* signals */ signals[EVENT] = - g_signal_new (NM_DHCP_LISTENER_EVENT, - G_OBJECT_CLASS_TYPE (object_class), - G_SIGNAL_RUN_LAST, 0, - g_signal_accumulator_true_handled, - NULL, NULL, - G_TYPE_BOOLEAN, /* listeners return TRUE if handled */ - 4, - G_TYPE_STRING, /* iface */ - G_TYPE_INT, /* pid */ - G_TYPE_VARIANT, /* options */ - G_TYPE_STRING); /* reason */ + g_signal_new (NM_DHCP_LISTENER_EVENT, + G_OBJECT_CLASS_TYPE (object_class), + G_SIGNAL_RUN_LAST, 0, + g_signal_accumulator_true_handled, + NULL, NULL, + G_TYPE_BOOLEAN, /* listeners return TRUE if handled */ + 4, + G_TYPE_STRING, /* iface */ + G_TYPE_INT, /* pid */ + G_TYPE_VARIANT, /* options */ + G_TYPE_STRING); /* reason */ } diff --git a/src/dhcp-manager/nm-dhcp-listener.h b/src/dhcp-manager/nm-dhcp-listener.h index ff31fe3476..3018b97a95 100644 --- a/src/dhcp-manager/nm-dhcp-listener.h +++ b/src/dhcp-manager/nm-dhcp-listener.h @@ -26,8 +26,8 @@ #define NM_DHCP_LISTENER_EVENT "event" -typedef GObject NMDhcpListener; -typedef GObjectClass NMDhcpListenerClass; +typedef struct _NMDhcpListener NMDhcpListener; +typedef struct _NMDhcpListenerClass NMDhcpListenerClass; GType nm_dhcp_listener_get_type (void); |