NMIfupdownConnection* nm_ifupdown_connection_new (if_block *block) { GObject *object; GError *error = NULL; g_return_val_if_fail (block != NULL, NULL); object = g_object_new (NM_TYPE_IFUPDOWN_CONNECTION, NULL); if (!ifupdown_update_connection_from_if_block (NM_CONNECTION (object), block, &error)) { nm_log_warn (LOGD_SETTINGS, "%s.%d - invalid connection read from /etc/network/interfaces: %s", __FILE__, __LINE__, error->message); g_object_unref (object); return NULL; } return (NMIfupdownConnection *) object; }
static GObject * constructor (GType type, guint n_construct_params, GObjectConstructParam *construct_params) { GObject *object; NMIfupdownConnectionPrivate *priv; GError *error = NULL; object = G_OBJECT_CLASS (nm_ifupdown_connection_parent_class)->constructor (type, n_construct_params, construct_params); g_return_val_if_fail (object, NULL); priv = NM_IFUPDOWN_CONNECTION_GET_PRIVATE (object); if (!priv) { nm_log_warn (LOGD_SETTINGS, "%s.%d - no private instance.", __FILE__, __LINE__); goto err; } if (!priv->ifblock) { nm_log_warn (LOGD_SETTINGS, "(ifupdown) ifblock not provided to constructor."); goto err; } if (!ifupdown_update_connection_from_if_block (NM_CONNECTION (object), priv->ifblock, &error)) { nm_log_warn (LOGD_SETTINGS, "%s.%d - invalid connection read from /etc/network/interfaces: (%d) %s", __FILE__, __LINE__, error ? error->code : -1, error && error->message ? error->message : "(unknown)"); goto err; } return object; err: g_object_unref (object); return NULL; }