static void self_destruct (GkmObject *self) { GkmTransaction *transaction; CK_RV rv; transaction = gkm_transaction_new (); gkm_object_destroy (self, transaction); gkm_transaction_complete (transaction); rv = gkm_transaction_get_result (transaction); g_object_unref (transaction); if (rv != CKR_OK) g_warning ("Unexpected failure to auto destruct object (code: %lu)", (gulong)rv); }
static void self_destruct (GkmCredential *self) { GkmTransaction *transaction; CK_RV rv; g_assert (GKM_IS_CREDENTIAL (self)); transaction = gkm_transaction_new (); /* Destroy ourselves */ gkm_object_destroy (GKM_OBJECT (self), transaction); gkm_transaction_complete (transaction); rv = gkm_transaction_get_result (transaction); g_object_unref (transaction); if (rv != CKR_OK) g_warning ("Couldn't destroy credential object: (code %lu)", (gulong)rv); }