From fd54ccb3c66a0ee970cbfdf7b3fe3c4297cf24c3 Mon Sep 17 00:00:00 2001 From: John Dennis Date: Thu, 11 Apr 2013 10:34:12 -0400 Subject: Replace g_variant_unref(), g_variant_iter_free() with macros which NULL pointer after freeing. --- LMI_RealmdKerberosRealmProvider.c | 59 +++++++++------------------------ LMI_RealmdRealmProvider.c | 34 ++++--------------- LMI_RealmdServiceProvider.c | 30 +++++------------ LMI_ServiceAffectsRealmdRealmProvider.c | 8 ++--- rdcp_dbus.c | 31 ++++++++--------- rdcp_realmdrealm.h | 14 ++++---- rdcp_util.c | 2 +- 7 files changed, 55 insertions(+), 123 deletions(-) diff --git a/LMI_RealmdKerberosRealmProvider.c b/LMI_RealmdKerberosRealmProvider.c index abb0dbe..bc11eaf 100644 --- a/LMI_RealmdKerberosRealmProvider.c +++ b/LMI_RealmdKerberosRealmProvider.c @@ -57,15 +57,9 @@ CMPIStatus LMI_RealmdKerberosRealm_InitFromDBusPath( } exit: - if (realm_props) { - g_variant_unref(realm_props); - } - if (kerberos_props) { - g_variant_unref(kerberos_props); - } - if (kerberos_membership_props) { - g_variant_unref(kerberos_membership_props); - } + G_VARIANT_FREE(realm_props); + G_VARIANT_FREE(kerberos_props); + G_VARIANT_FREE(kerberos_membership_props); return status; } @@ -103,6 +97,7 @@ static CMPIStatus LMI_RealmdKerberosRealmEnumInstances( CMPIStatus status; GError *g_error = NULL; GVariant *provider_props = NULL; + GVariant *realm_props = NULL; GVariantIter *iter = NULL; gchar *realm_obj_path; const char *name_space = KNameSpace(cop); @@ -117,13 +112,14 @@ static CMPIStatus LMI_RealmdKerberosRealmEnumInstances( g_variant_lookup(provider_props, "Realms", "ao", &iter); while (g_variant_iter_next(iter, "&o", &realm_obj_path)) { - GVariant *realm_props = NULL; LMI_RealmdKerberosRealm realmd_realm; GetDBusProperies(realm_props, realm_obj_path, REALM_DBUS_REALM_INTERFACE, &status); if (!SupportsDBusInterface(realm_props, REALM_DBUS_KERBEROS_INTERFACE)) { + G_VARIANT_FREE(realm_props); continue; } + G_VARIANT_FREE(realm_props); status = LMI_RealmdKerberosRealm_InitFromDBusPath(&realmd_realm, _cb, name_space, realm_obj_path); if (status.rc != CMPI_RC_OK) { @@ -134,12 +130,9 @@ static CMPIStatus LMI_RealmdKerberosRealmEnumInstances( } exit: - if (iter) { - g_variant_iter_free(iter); - } - if (provider_props) { - g_variant_unref(provider_props); - } + G_VARIANT_ITER_FREE(iter); + G_VARIANT_FREE(provider_props); + G_VARIANT_FREE(realm_props); return status; } @@ -311,11 +304,6 @@ KEXTERN KUint32 LMI_RealmdKerberosRealm_Join( goto exit; } -#ifdef RDCP_DEBUG - printf("%s: InstanceID=\"%s\" dbus_path=\"%s\"\n", - __FUNCTION__, self->InstanceID.chars, dbus_path); -#endif - switch(Owner->value) { case LMI_RealmdKerberosRealm_SupportedJoinCredentialOwners_administrator: case LMI_RealmdKerberosRealm_SupportedJoinCredentialOwners_user: @@ -437,15 +425,9 @@ KEXTERN KUint32 LMI_RealmdKerberosRealm_Join( exit: g_free(data); - if (credentials) { - g_variant_unref(credentials); - } - if (data_variant) { - g_variant_unref(data_variant); - } - if (options) { - g_variant_unref(options); - } + G_VARIANT_FREE(credentials); + G_VARIANT_FREE(data_variant); + G_VARIANT_FREE(options); return result; } @@ -503,11 +485,6 @@ KEXTERN KUint32 LMI_RealmdKerberosRealm_Leave( goto exit; } -#ifdef RDCP_DEBUG - printf("%s: InstanceID=\"%s\" dbus_path=\"%s\"\n", - __FUNCTION__, self->InstanceID.chars, dbus_path); -#endif - switch(Owner->value) { case LMI_RealmdKerberosRealm_SupportedLeaveCredentialOwners_administrator: case LMI_RealmdKerberosRealm_SupportedLeaveCredentialOwners_user: @@ -629,15 +606,9 @@ KEXTERN KUint32 LMI_RealmdKerberosRealm_Leave( exit: g_free(data); - if (credentials) { - g_variant_unref(credentials); - } - if (data_variant) { - g_variant_unref(data_variant); - } - if (options) { - g_variant_unref(options); - } + G_VARIANT_FREE(credentials); + G_VARIANT_FREE(data_variant); + G_VARIANT_FREE(options); return result; } diff --git a/LMI_RealmdRealmProvider.c b/LMI_RealmdRealmProvider.c index 30039f5..f73c766 100644 --- a/LMI_RealmdRealmProvider.c +++ b/LMI_RealmdRealmProvider.c @@ -46,9 +46,7 @@ CMPIStatus LMI_RealmdRealm_InitFromDBusPath( LMI_InitFromDBusRealmProps(LMI_RealmdRealm, self, realm_props); exit: - if (realm_props) { - g_variant_unref(realm_props); - } + G_VARIANT_FREE(realm_props); return status; } @@ -109,12 +107,8 @@ static CMPIStatus LMI_RealmdRealmEnumInstances( } exit: - if (iter) { - g_variant_iter_free(iter); - } - if (provider_props) { - g_variant_unref(provider_props); - } + G_VARIANT_ITER_FREE(iter); + G_VARIANT_FREE(provider_props); return status; } @@ -141,11 +135,6 @@ static CMPIStatus LMI_RealmdRealmGetInstance( "dbus_path_from_instance_id() failed"); } -#ifdef RDCP_DEBUG - printf("%s: InstanceID=\"%s\" dbus_path=\"%s\"\n", - __FUNCTION__, realmdrealm_ref.InstanceID.chars, dbus_path); -#endif - KReturnIf(LMI_RealmdRealm_InitFromDBusPath(&realmd_realm, _cb, KNameSpace(cop), dbus_path)); KReturnInstance(cr, realmd_realm); @@ -279,11 +268,6 @@ KUint32 LMI_RealmdRealm_ChangeLoginPolicy( goto exit; } -#ifdef RDCP_DEBUG - printf("%s: InstanceID=\"%s\" dbus_path=\"%s\"\n", - __FUNCTION__, self->InstanceID.chars, dbus_path); -#endif - if (!build_g_variant_string_array_from_KStringA(PermittedAdd, &permitted_add, &g_error)) { handle_g_error(&g_error, cb, status, CMPI_RC_ERR_FAILED, "failed to convert PermittedAdd to gvariant array"); @@ -312,15 +296,9 @@ KUint32 LMI_RealmdRealm_ChangeLoginPolicy( exit: - if (permitted_add) { - g_variant_unref(permitted_add); - } - if (permitted_remove) { - g_variant_unref(permitted_remove); - } - if (options) { - g_variant_unref(options); - } + G_VARIANT_FREE(permitted_add); + G_VARIANT_FREE(permitted_remove); + G_VARIANT_FREE(options); return result; } diff --git a/LMI_RealmdServiceProvider.c b/LMI_RealmdServiceProvider.c index d269469..2d0dc09 100644 --- a/LMI_RealmdServiceProvider.c +++ b/LMI_RealmdServiceProvider.c @@ -121,7 +121,6 @@ static CMPIStatus LMI_RealmdServiceEnumInstances( #endif LMI_RealmdService_Set_Realms(&lmi_realmd_service, i, realm_obj_path); } - g_variant_iter_free(iter); if (g_variant_lookup(provider_props, "Name", "&s", &name)) { LMI_RealmdService_Set_RealmdName(&lmi_realmd_service, name); @@ -138,10 +137,8 @@ static CMPIStatus LMI_RealmdServiceEnumInstances( KReturnInstance(cr, lmi_realmd_service); exit: - if (provider_props) { - g_variant_unref(provider_props); - } - + G_VARIANT_ITER_FREE(iter); + G_VARIANT_FREE(provider_props); g_free(joined_domain); return status; @@ -350,9 +347,7 @@ KUint32 LMI_RealmdService_Discover( exit: - if (options) { - g_variant_unref(options); - } + G_VARIANT_FREE(options); g_strfreev(paths); return result; @@ -565,21 +560,12 @@ KUint32 LMI_RealmdService_Join_Leave_Domain( exit: - if (realm_props) { - g_variant_unref(realm_props); - } - - if (kerberos_membership_props) { - g_variant_unref(kerberos_membership_props); - } - - if (options) { - g_variant_unref(options); - } + G_VARIANT_FREE(supported_creds); + G_VARIANT_FREE(realm_props); + G_VARIANT_FREE(kerberos_membership_props); + G_VARIANT_FREE(credentials); + G_VARIANT_FREE(options); g_strfreev(paths); - if (credentials) { - g_variant_unref(credentials); - } return result; } diff --git a/LMI_ServiceAffectsRealmdRealmProvider.c b/LMI_ServiceAffectsRealmdRealmProvider.c index 58785b7..68f97e3 100644 --- a/LMI_ServiceAffectsRealmdRealmProvider.c +++ b/LMI_ServiceAffectsRealmdRealmProvider.c @@ -78,12 +78,8 @@ static CMPIStatus LMI_ServiceAffectsRealmdRealmEnumInstances( } exit: - if (iter) { - g_variant_iter_free(iter); - } - if (provider_props) { - g_variant_unref(provider_props); - } + G_VARIANT_ITER_FREE(iter); + G_VARIANT_FREE(provider_props); return status; } diff --git a/rdcp_dbus.c b/rdcp_dbus.c index e879fff..0e213aa 100644 --- a/rdcp_dbus.c +++ b/rdcp_dbus.c @@ -4,6 +4,7 @@ #include "realm-dbus-constants.h" #include "rdcp_dbus.h" +#include "rdcp_util.h" /*----------------------------------------------------------------------------*/ @@ -549,11 +550,11 @@ append_g_variant_to_dbus_msg_iter(DBusMessageIter *iter, GVariant *value, GError g_variant_get_type_string(child), &sub); if (!append_g_variant_to_dbus_msg_iter(&sub, child, g_error)) { - g_variant_unref(child); + G_VARIANT_FREE(child); goto fail; } dbus_message_iter_close_container(iter, &sub); - g_variant_unref(child); + G_VARIANT_FREE(child); } break; case G_VARIANT_CLASS_MAYBE: { GVariant *child; @@ -565,10 +566,10 @@ append_g_variant_to_dbus_msg_iter(DBusMessageIter *iter, GVariant *value, GError } else { child = g_variant_get_child_value(value, 0); if (!append_g_variant_to_dbus_msg_iter(iter, child, g_error)) { - g_variant_unref(child); + G_VARIANT_FREE(child); goto fail; } - g_variant_unref(child); + G_VARIANT_FREE(child); } } break; case G_VARIANT_CLASS_ARRAY: { @@ -588,10 +589,10 @@ append_g_variant_to_dbus_msg_iter(DBusMessageIter *iter, GVariant *value, GError for (i = 0; i < n; i++) { child = g_variant_get_child_value(value, i); if (!append_g_variant_to_dbus_msg_iter(&dbus_iter, child, g_error)) { - g_variant_unref(child); + G_VARIANT_FREE(child); goto fail; } - g_variant_unref(child); + G_VARIANT_FREE(child); } dbus_message_iter_close_container(iter, &dbus_iter); @@ -609,10 +610,10 @@ append_g_variant_to_dbus_msg_iter(DBusMessageIter *iter, GVariant *value, GError for (i = 0; i < n; i++) { child = g_variant_get_child_value(value, i); if (!append_g_variant_to_dbus_msg_iter(&dbus_iter, child, g_error)) { - g_variant_unref(child); + G_VARIANT_FREE(child); goto fail; } - g_variant_unref(child); + G_VARIANT_FREE(child); } dbus_message_iter_close_container(iter, &dbus_iter); @@ -626,17 +627,17 @@ append_g_variant_to_dbus_msg_iter(DBusMessageIter *iter, GVariant *value, GError NULL, &dbus_iter); key = g_variant_get_child_value(value, 0); if (!append_g_variant_to_dbus_msg_iter(&dbus_iter, key, g_error)) { - g_variant_unref(key); + G_VARIANT_FREE(key); goto fail; } - g_variant_unref(key); + G_VARIANT_FREE(key); val = g_variant_get_child_value(value, 1); if (!append_g_variant_to_dbus_msg_iter(&dbus_iter, val, g_error)) { - g_variant_unref(val); + G_VARIANT_FREE(val); goto fail; } - g_variant_unref(val); + G_VARIANT_FREE(val); dbus_message_iter_close_container(iter, &dbus_iter); } break; @@ -710,10 +711,10 @@ dbus_method_append_args_tuple(DBusMessage *message, GVariant *args, GError **g_ for (i = 0; i < n; i++) { arg = g_variant_get_child_value(args, i); if (!append_g_variant_to_dbus_msg_iter(&iter, arg, g_error)) { - g_variant_unref(arg); + G_VARIANT_FREE(arg); return FALSE; } - g_variant_unref(arg); + G_VARIANT_FREE(arg); } } @@ -1563,7 +1564,7 @@ dbus_discover_unmarshal(DBusMessage *reply, gint32 *relevance_return, gchar ***p } g_variant_get(g_variant_reply, "(i^ao)", relevance_return, paths_return); - g_variant_unref(g_variant_reply); + G_VARIANT_FREE(g_variant_reply); return TRUE; } diff --git a/rdcp_realmdrealm.h b/rdcp_realmdrealm.h index a59957c..491bc73 100644 --- a/rdcp_realmdrealm.h +++ b/rdcp_realmdrealm.h @@ -157,7 +157,7 @@ KINLINE bool SupportsDBusInterface(GVariant *dbus_props, const char *dbus_interf break; } } - g_variant_iter_free(iter); + G_VARIANT_ITER_FREE(iter); } return result; } @@ -192,7 +192,7 @@ KINLINE bool SupportsDBusInterface(GVariant *dbus_props, const char *dbus_interf klass##_Set_SupportedInterfaces(obj, i, interface_name); \ g_free(interface_name); \ } \ - g_variant_iter_free(iter); \ + G_VARIANT_ITER_FREE(iter); \ } \ \ if (g_variant_lookup(dbus_props, "Details", "a(ss)", &iter)) { \ @@ -203,7 +203,7 @@ KINLINE bool SupportsDBusInterface(GVariant *dbus_props, const char *dbus_interf klass##_Set_DetailNames(obj, i, name); \ klass##_Set_DetailValues(obj, i, value); \ } \ - g_variant_iter_free(iter); \ + G_VARIANT_ITER_FREE(iter); \ } \ \ if (g_variant_lookup(dbus_props, "LoginFormats", "as", &iter)) { \ @@ -212,7 +212,7 @@ KINLINE bool SupportsDBusInterface(GVariant *dbus_props, const char *dbus_interf for (i = 0; g_variant_iter_next(iter, "&s", &value); i++) { \ klass##_Set_LoginFormats(obj, i, value); \ } \ - g_variant_iter_free(iter); \ + G_VARIANT_ITER_FREE(iter); \ } \ \ if (g_variant_lookup(dbus_props, "LoginPolicy", "&s", &value)) { \ @@ -225,7 +225,7 @@ KINLINE bool SupportsDBusInterface(GVariant *dbus_props, const char *dbus_interf for (i = 0; g_variant_iter_next(iter, "&s", &value); i++) { \ klass##_Set_PermittedLogins(obj, i, value); \ } \ - g_variant_iter_free(iter); \ + G_VARIANT_ITER_FREE(iter); \ } \ } @@ -265,7 +265,7 @@ KINLINE bool SupportsDBusInterface(GVariant *dbus_props, const char *dbus_interf klass##_Set_SupportedJoinCredentialOwners(obj, i, \ SupportedJoinCredentialOwners_name_to_enum(owner)); \ } \ - g_variant_iter_free(iter); \ + G_VARIANT_ITER_FREE(iter); \ } \ \ if (g_variant_lookup(dbus_props, "SupportedLeaveCredentials", "a(ss)", &iter)) { \ @@ -278,7 +278,7 @@ KINLINE bool SupportsDBusInterface(GVariant *dbus_props, const char *dbus_interf klass##_Set_SupportedLeaveCredentialOwners(obj, i, \ SupportedLeaveCredentialOwners_name_to_enum(owner)); \ } \ - g_variant_iter_free(iter); \ + G_VARIANT_ITER_FREE(iter); \ } \ } diff --git a/rdcp_util.c b/rdcp_util.c index ac9b57a..73ba17b 100644 --- a/rdcp_util.c +++ b/rdcp_util.c @@ -39,7 +39,7 @@ print_properties (GVariant *properties, gchar *format, ...) value_as_string = g_variant_print(child, TRUE); printf(" %s", value_as_string); g_free(value_as_string); - g_variant_unref(child); + G_VARIANT_FREE(child); if (i < n_children-1) { printf("\n"); } else { -- cgit