summary refs log tree commit diff
path: root/src/nm-firewall-manager.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/nm-firewall-manager.c')
-rw-r--r--src/nm-firewall-manager.c94
1 files changed, 49 insertions, 45 deletions
diff --git a/src/nm-firewall-manager.c b/src/nm-firewall-manager.c
index f1d0170b..5ba3d23e 100644
--- a/src/nm-firewall-manager.c
+++ b/src/nm-firewall-manager.c
@@ -26,19 +26,19 @@
 
 #include "NetworkManagerUtils.h"
 
-#define NM_FIREWALL_MANAGER_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), \
-                                              NM_TYPE_FIREWALL_MANAGER, \
-                                              NMFirewallManagerPrivate))
+/*****************************************************************************/
 
-G_DEFINE_TYPE (NMFirewallManager, nm_firewall_manager, G_TYPE_OBJECT)
+NM_GOBJECT_PROPERTIES_DEFINE (NMFirewallManager,
+	PROP_AVAILABLE,
+);
 
-/* Properties */
 enum {
-	PROP_0 = 0,
-	PROP_AVAILABLE,
-	LAST_PROP
+	STARTED,
+	LAST_SIGNAL
 };
 
+static guint signals[LAST_SIGNAL] = { 0 };
+
 typedef struct {
 	GDBusProxy *    proxy;
 	gboolean        running;
@@ -46,17 +46,24 @@ typedef struct {
 	GHashTable     *pending_calls;
 } NMFirewallManagerPrivate;
 
-enum {
-	STARTED,
+struct _NMFirewallManager {
+	GObject parent;
+	NMFirewallManagerPrivate _priv;
+};
 
-	LAST_SIGNAL
+struct _NMFirewallManagerClass {
+	GObjectClass parent;
 };
 
-static guint signals[LAST_SIGNAL] = { 0 };
+G_DEFINE_TYPE (NMFirewallManager, nm_firewall_manager, G_TYPE_OBJECT)
+
+#define NM_FIREWALL_MANAGER_GET_PRIVATE(self) _NM_GET_PRIVATE (self, NMFirewallManager, NM_IS_FIREWALL_MANAGER)
+
+/*****************************************************************************/
 
 NM_DEFINE_SINGLETON_GETTER (NMFirewallManager, nm_firewall_manager_get, NM_TYPE_FIREWALL_MANAGER);
 
-/********************************************************************/
+/*****************************************************************************/
 
 typedef enum {
 	CB_INFO_OPS_ADD = 1,
@@ -89,7 +96,7 @@ struct _NMFirewallManagerCallId {
 };
 typedef struct _NMFirewallManagerCallId CBInfo;
 
-/********************************************************************/
+/*****************************************************************************/
 
 static const char *
 _ops_type_to_string (CBInfoOpsType ops_type)
@@ -131,7 +138,7 @@ _ops_type_to_string (CBInfoOpsType ops_type)
         } \
     } G_STMT_END
 
-/********************************************************************/
+/*****************************************************************************/
 
 static gboolean
 _cb_info_is_idle (CBInfo *info)
@@ -396,7 +403,7 @@ nm_firewall_manager_cancel_call (NMFirewallManagerCallId call)
 	}
 }
 
-/*******************************************************************/
+/*****************************************************************************/
 
 static void
 set_running (NMFirewallManager *self, gboolean now_running)
@@ -406,7 +413,7 @@ set_running (NMFirewallManager *self, gboolean now_running)
 
 	priv->running = now_running;
 	if (old_running != priv->running)
-		g_object_notify (G_OBJECT (self), NM_FIREWALL_MANAGER_AVAILABLE);
+		_notify (self, PROP_AVAILABLE);
 }
 
 static void
@@ -428,7 +435,22 @@ name_owner_changed (GObject    *object,
 	}
 }
 
-/*******************************************************************/
+/*****************************************************************************/
+
+static void
+get_property (GObject *object, guint prop_id, GValue *value, GParamSpec *pspec)
+{
+	switch (prop_id) {
+	case PROP_AVAILABLE:
+		g_value_set_boolean (value, NM_FIREWALL_MANAGER_GET_PRIVATE ((NMFirewallManager *) object)->running);
+		break;
+	default:
+		G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
+		break;
+	}
+}
+
+/*****************************************************************************/
 
 static void
 nm_firewall_manager_init (NMFirewallManager * self)
@@ -456,32 +478,18 @@ constructed (GObject *object)
 	                                             FIREWALL_DBUS_PATH,
 	                                             FIREWALL_DBUS_INTERFACE_ZONE,
 	                                             NULL, &error);
-        if (priv->proxy) {
+	if (priv->proxy) {
 		g_signal_connect (priv->proxy, "notify::g-name-owner",
-				  G_CALLBACK (name_owner_changed), self);
+		                  G_CALLBACK (name_owner_changed), self);
 		owner = g_dbus_proxy_get_name_owner (priv->proxy);
 		priv->running = (owner != NULL);
-        } else {
-                _LOGW (NULL, "could not connect to system D-Bus (%s)", error->message);
-	}
+	} else
+		_LOGW (NULL, "could not connect to system D-Bus (%s)", error->message);
 
 	_LOGD (NULL, "firewall constructed (%srunning)", priv->running ? "" : "not");
 }
 
 static void
-get_property (GObject *object, guint prop_id, GValue *value, GParamSpec *pspec)
-{
-	switch (prop_id) {
-	case PROP_AVAILABLE:
-		g_value_set_boolean (value, NM_FIREWALL_MANAGER_GET_PRIVATE (object)->running);
-		break;
-	default:
-		G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
-		break;
-	}
-}
-
-static void
 dispose (GObject *object)
 {
 	NMFirewallManager *self = NM_FIREWALL_MANAGER (object);
@@ -497,7 +505,6 @@ dispose (GObject *object)
 
 	g_clear_object (&priv->proxy);
 
-	/* Chain up to the parent class */
 	G_OBJECT_CLASS (nm_firewall_manager_parent_class)->dispose (object);
 }
 
@@ -506,27 +513,24 @@ nm_firewall_manager_class_init (NMFirewallManagerClass *klass)
 {
 	GObjectClass *object_class = G_OBJECT_CLASS (klass);
 
-	g_type_class_add_private (object_class, sizeof (NMFirewallManagerPrivate));
-
 	object_class->constructed = constructed;
 	object_class->get_property = get_property;
 	object_class->dispose = dispose;
 
-	g_object_class_install_property
-	    (object_class, PROP_AVAILABLE,
+	obj_properties[PROP_AVAILABLE] =
 	     g_param_spec_boolean (NM_FIREWALL_MANAGER_AVAILABLE, "", "",
 	                           FALSE,
 	                           G_PARAM_READABLE |
-	                           G_PARAM_STATIC_STRINGS));
+	                           G_PARAM_STATIC_STRINGS);
+
+	g_object_class_install_properties (object_class, _PROPERTY_ENUMS_LAST, obj_properties);
 
 	signals[STARTED] =
 	    g_signal_new (NM_FIREWALL_MANAGER_STARTED,
 	                  G_OBJECT_CLASS_TYPE (object_class),
 	                  G_SIGNAL_RUN_FIRST,
-	                  G_STRUCT_OFFSET (NMFirewallManagerClass, started),
+	                  0,
 	                  NULL, NULL,
 	                  g_cclosure_marshal_VOID__VOID,
 	                  G_TYPE_NONE, 0);
-
 }
-