mirror of
https://gitlab.freedesktop.org/NetworkManager/NetworkManager.git
synced 2025-12-24 09:00:08 +01:00
core: cache pointer to private-data in NMIP{4,6}Config structure
This is the same as 04c70c76bc for the
NMIP4Config and NMIP6Config structures. The new field makes debugging
of issues related to IP configuration much easier.
This commit is contained in:
parent
24d8604637
commit
c37c36e7ec
4 changed files with 32 additions and 12 deletions
|
|
@ -39,9 +39,9 @@
|
|||
|
||||
G_DEFINE_TYPE (NMIP4Config, nm_ip4_config, NM_TYPE_EXPORTED_OBJECT)
|
||||
|
||||
#define NM_IP4_CONFIG_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), NM_TYPE_IP4_CONFIG, NMIP4ConfigPrivate))
|
||||
#define NM_IP4_CONFIG_GET_PRIVATE(o) ((o)->priv)
|
||||
|
||||
typedef struct {
|
||||
typedef struct _NMIP4ConfigPrivate {
|
||||
gboolean never_default;
|
||||
guint32 gateway;
|
||||
gboolean has_gateway;
|
||||
|
|
@ -2120,7 +2120,10 @@ nm_ip4_config_equal (const NMIP4Config *a, const NMIP4Config *b)
|
|||
static void
|
||||
nm_ip4_config_init (NMIP4Config *config)
|
||||
{
|
||||
NMIP4ConfigPrivate *priv = NM_IP4_CONFIG_GET_PRIVATE (config);
|
||||
NMIP4ConfigPrivate *priv;
|
||||
|
||||
priv = G_TYPE_INSTANCE_GET_PRIVATE (config, NM_TYPE_IP4_CONFIG, NMIP4ConfigPrivate);
|
||||
config->priv = priv;
|
||||
|
||||
priv->addresses = g_array_new (FALSE, FALSE, sizeof (NMPlatformIP4Address));
|
||||
priv->routes = g_array_new (FALSE, FALSE, sizeof (NMPlatformIP4Route));
|
||||
|
|
@ -2136,7 +2139,8 @@ nm_ip4_config_init (NMIP4Config *config)
|
|||
static void
|
||||
finalize (GObject *object)
|
||||
{
|
||||
NMIP4ConfigPrivate *priv = NM_IP4_CONFIG_GET_PRIVATE (object);
|
||||
NMIP4Config *self = NM_IP4_CONFIG (object);
|
||||
NMIP4ConfigPrivate *priv = NM_IP4_CONFIG_GET_PRIVATE (self);
|
||||
|
||||
g_array_unref (priv->addresses);
|
||||
g_array_unref (priv->routes);
|
||||
|
|
@ -2156,7 +2160,7 @@ get_property (GObject *object, guint prop_id,
|
|||
GValue *value, GParamSpec *pspec)
|
||||
{
|
||||
NMIP4Config *config = NM_IP4_CONFIG (object);
|
||||
NMIP4ConfigPrivate *priv = NM_IP4_CONFIG_GET_PRIVATE (object);
|
||||
NMIP4ConfigPrivate *priv = NM_IP4_CONFIG_GET_PRIVATE (config);
|
||||
|
||||
switch (prop_id) {
|
||||
case PROP_IFINDEX:
|
||||
|
|
@ -2322,7 +2326,8 @@ set_property (GObject *object,
|
|||
const GValue *value,
|
||||
GParamSpec *pspec)
|
||||
{
|
||||
NMIP4ConfigPrivate *priv = NM_IP4_CONFIG_GET_PRIVATE (object);
|
||||
NMIP4Config *self = NM_IP4_CONFIG (object);
|
||||
NMIP4ConfigPrivate *priv = NM_IP4_CONFIG_GET_PRIVATE (self);
|
||||
|
||||
switch (prop_id) {
|
||||
case PROP_IFINDEX:
|
||||
|
|
|
|||
|
|
@ -31,8 +31,13 @@
|
|||
#define NM_IS_IP4_CONFIG_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), NM_TYPE_IP4_CONFIG))
|
||||
#define NM_IP4_CONFIG_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), NM_TYPE_IP4_CONFIG, NMIP4ConfigClass))
|
||||
|
||||
struct _NMIP4ConfigPrivate;
|
||||
|
||||
struct _NMIP4Config {
|
||||
NMExportedObject parent;
|
||||
|
||||
/* private */
|
||||
struct _NMIP4ConfigPrivate *priv;
|
||||
};
|
||||
|
||||
typedef struct {
|
||||
|
|
|
|||
|
|
@ -38,9 +38,9 @@
|
|||
|
||||
G_DEFINE_TYPE (NMIP6Config, nm_ip6_config, NM_TYPE_EXPORTED_OBJECT)
|
||||
|
||||
#define NM_IP6_CONFIG_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), NM_TYPE_IP6_CONFIG, NMIP6ConfigPrivate))
|
||||
#define NM_IP6_CONFIG_GET_PRIVATE(o) ((o)->priv)
|
||||
|
||||
typedef struct {
|
||||
typedef struct _NMIP6ConfigPrivate {
|
||||
gboolean never_default;
|
||||
struct in6_addr gateway;
|
||||
GArray *addresses;
|
||||
|
|
@ -1874,7 +1874,10 @@ nm_ip6_config_equal (const NMIP6Config *a, const NMIP6Config *b)
|
|||
static void
|
||||
nm_ip6_config_init (NMIP6Config *config)
|
||||
{
|
||||
NMIP6ConfigPrivate *priv = NM_IP6_CONFIG_GET_PRIVATE (config);
|
||||
NMIP6ConfigPrivate *priv;
|
||||
|
||||
priv = G_TYPE_INSTANCE_GET_PRIVATE (config, NM_TYPE_IP6_CONFIG, NMIP6ConfigPrivate);
|
||||
config->priv = priv;
|
||||
|
||||
priv->addresses = g_array_new (FALSE, TRUE, sizeof (NMPlatformIP6Address));
|
||||
priv->routes = g_array_new (FALSE, TRUE, sizeof (NMPlatformIP6Route));
|
||||
|
|
@ -1888,7 +1891,8 @@ nm_ip6_config_init (NMIP6Config *config)
|
|||
static void
|
||||
finalize (GObject *object)
|
||||
{
|
||||
NMIP6ConfigPrivate *priv = NM_IP6_CONFIG_GET_PRIVATE (object);
|
||||
NMIP6Config *self = NM_IP6_CONFIG (object);
|
||||
NMIP6ConfigPrivate *priv = NM_IP6_CONFIG_GET_PRIVATE (self);
|
||||
|
||||
g_array_unref (priv->addresses);
|
||||
g_array_unref (priv->routes);
|
||||
|
|
@ -1925,7 +1929,7 @@ get_property (GObject *object, guint prop_id,
|
|||
GValue *value, GParamSpec *pspec)
|
||||
{
|
||||
NMIP6Config *config = NM_IP6_CONFIG (object);
|
||||
NMIP6ConfigPrivate *priv = NM_IP6_CONFIG_GET_PRIVATE (object);
|
||||
NMIP6ConfigPrivate *priv = NM_IP6_CONFIG_GET_PRIVATE (config);
|
||||
|
||||
switch (prop_id) {
|
||||
case PROP_IFINDEX:
|
||||
|
|
@ -2074,7 +2078,8 @@ set_property (GObject *object,
|
|||
const GValue *value,
|
||||
GParamSpec *pspec)
|
||||
{
|
||||
NMIP6ConfigPrivate *priv = NM_IP6_CONFIG_GET_PRIVATE (object);
|
||||
NMIP6Config *config = NM_IP6_CONFIG (object);
|
||||
NMIP6ConfigPrivate *priv = NM_IP6_CONFIG_GET_PRIVATE (config);
|
||||
|
||||
switch (prop_id) {
|
||||
case PROP_IFINDEX:
|
||||
|
|
|
|||
|
|
@ -33,8 +33,13 @@
|
|||
#define NM_IS_IP6_CONFIG_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), NM_TYPE_IP6_CONFIG))
|
||||
#define NM_IP6_CONFIG_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), NM_TYPE_IP6_CONFIG, NMIP6ConfigClass))
|
||||
|
||||
struct _NMIP6ConfigPrivate;
|
||||
|
||||
struct _NMIP6Config {
|
||||
NMExportedObject parent;
|
||||
|
||||
/* private */
|
||||
struct _NMIP6ConfigPrivate *priv;
|
||||
};
|
||||
|
||||
typedef struct {
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue