From patchwork Thu Sep 29 00:16:42 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: David Gibson X-Patchwork-Id: 9355441 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork.web.codeaurora.org (Postfix) with ESMTP id 264286077B for ; Thu, 29 Sep 2016 00:17:31 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 13B572962B for ; Thu, 29 Sep 2016 00:17:31 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 084352964D; Thu, 29 Sep 2016 00:17:31 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-6.8 required=2.0 tests=BAYES_00,DKIM_SIGNED, RCVD_IN_DNSWL_HI,T_DKIM_INVALID autolearn=ham version=3.3.1 Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) (using TLSv1 with cipher AES256-SHA (256/256 bits)) (No client certificate requested) by mail.wl.linuxfoundation.org (Postfix) with ESMTPS id 1F23C2962B for ; Thu, 29 Sep 2016 00:17:30 +0000 (UTC) Received: from localhost ([::1]:33936 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bpP2X-0002MV-9Y for patchwork-qemu-devel@patchwork.kernel.org; Wed, 28 Sep 2016 20:17:29 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:60570) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bpP23-0002HF-J4 for qemu-devel@nongnu.org; Wed, 28 Sep 2016 20:17:00 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1bpP1z-0002zU-8q for qemu-devel@nongnu.org; Wed, 28 Sep 2016 20:16:58 -0400 Received: from ozlabs.org ([103.22.144.67]:42451) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bpP1y-0002yQ-Gf for qemu-devel@nongnu.org; Wed, 28 Sep 2016 20:16:55 -0400 Received: by ozlabs.org (Postfix, from userid 1007) id 3skw9b2PzJz9s5w; Thu, 29 Sep 2016 10:16:51 +1000 (AEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=gibson.dropbear.id.au; s=201602; t=1475108211; bh=1XfaprSJ2ojGa47IMKmzer/itKNAqhTf8ZaaKp5AKM0=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=Ibtt+0HcPJotzthiqxmQ9zmCc8s7Q9Bz4Ec/umgGKE+y4AjUutPQF4vVS/2N2F6vF VszqiQDg9qJlsBdAppVDKdpkA8ne4hssZCNhOrnu/uckbZ/qpiFDZleL20SSg9mMdb FJPYSZpqa+rLAa0SDV8Cn1L1gU0ZxPqD64dZrpCU= From: David Gibson To: afaerber@suse.de, peter.maydell@linaro.org Date: Thu, 29 Sep 2016 10:16:42 +1000 Message-Id: <1475108205-6043-2-git-send-email-david@gibson.dropbear.id.au> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1475108205-6043-1-git-send-email-david@gibson.dropbear.id.au> References: <1475108205-6043-1-git-send-email-david@gibson.dropbear.id.au> X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 103.22.144.67 Subject: [Qemu-devel] [RFC 1/4] qcrypto: Remove usage of class properties X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: qemu-devel@nongnu.org, pbonzini@redhat.com, David Gibson , armbru@redhat.com, lcapitulino@redhat.com Errors-To: qemu-devel-bounces+patchwork-qemu-devel=patchwork.kernel.org@nongnu.org Sender: "Qemu-devel" X-Virus-Scanned: ClamAV using ClamSMTP qcrypto is one of the few users of QOM class properties, as opposed to instance properties. In anticipation of removing class properties, convert qcrypto to use instance properties instead. Signed-off-by: David Gibson --- crypto/secret.c | 58 +++++++++++++++++++++++++++------------------------ crypto/tlscreds.c | 44 +++++++++++++++++--------------------- crypto/tlscredsanon.c | 16 +++++++++----- crypto/tlscredsx509.c | 26 +++++++++++------------ 4 files changed, 74 insertions(+), 70 deletions(-) diff --git a/crypto/secret.c b/crypto/secret.c index 285ab7a..92905d9 100644 --- a/crypto/secret.c +++ b/crypto/secret.c @@ -352,6 +352,36 @@ qcrypto_secret_complete(UserCreatable *uc, Error **errp) object_property_set_bool(OBJECT(uc), true, "loaded", errp); } +static void +qcrypto_secret_instance_init(Object *obj) +{ + object_property_add_bool(obj, "loaded", + qcrypto_secret_prop_get_loaded, + qcrypto_secret_prop_set_loaded, + NULL); + object_property_add_enum(obj, "format", + "QCryptoSecretFormat", + QCryptoSecretFormat_lookup, + qcrypto_secret_prop_get_format, + qcrypto_secret_prop_set_format, + NULL); + object_property_add_str(obj, "data", + qcrypto_secret_prop_get_data, + qcrypto_secret_prop_set_data, + NULL); + object_property_add_str(obj, "file", + qcrypto_secret_prop_get_file, + qcrypto_secret_prop_set_file, + NULL); + object_property_add_str(obj, "keyid", + qcrypto_secret_prop_get_keyid, + qcrypto_secret_prop_set_keyid, + NULL); + object_property_add_str(obj, "iv", + qcrypto_secret_prop_get_iv, + qcrypto_secret_prop_set_iv, + NULL); +} static void qcrypto_secret_finalize(Object *obj) @@ -371,33 +401,6 @@ qcrypto_secret_class_init(ObjectClass *oc, void *data) UserCreatableClass *ucc = USER_CREATABLE_CLASS(oc); ucc->complete = qcrypto_secret_complete; - - object_class_property_add_bool(oc, "loaded", - qcrypto_secret_prop_get_loaded, - qcrypto_secret_prop_set_loaded, - NULL); - object_class_property_add_enum(oc, "format", - "QCryptoSecretFormat", - QCryptoSecretFormat_lookup, - qcrypto_secret_prop_get_format, - qcrypto_secret_prop_set_format, - NULL); - object_class_property_add_str(oc, "data", - qcrypto_secret_prop_get_data, - qcrypto_secret_prop_set_data, - NULL); - object_class_property_add_str(oc, "file", - qcrypto_secret_prop_get_file, - qcrypto_secret_prop_set_file, - NULL); - object_class_property_add_str(oc, "keyid", - qcrypto_secret_prop_get_keyid, - qcrypto_secret_prop_set_keyid, - NULL); - object_class_property_add_str(oc, "iv", - qcrypto_secret_prop_get_iv, - qcrypto_secret_prop_set_iv, - NULL); } @@ -489,6 +492,7 @@ static const TypeInfo qcrypto_secret_info = { .parent = TYPE_OBJECT, .name = TYPE_QCRYPTO_SECRET, .instance_size = sizeof(QCryptoSecret), + .instance_init = qcrypto_secret_instance_init, .instance_finalize = qcrypto_secret_finalize, .class_size = sizeof(QCryptoSecretClass), .class_init = qcrypto_secret_class_init, diff --git a/crypto/tlscreds.c b/crypto/tlscreds.c index a896553..4aafdd5 100644 --- a/crypto/tlscreds.c +++ b/crypto/tlscreds.c @@ -221,35 +221,30 @@ qcrypto_tls_creds_prop_get_endpoint(Object *obj, static void -qcrypto_tls_creds_class_init(ObjectClass *oc, void *data) -{ - object_class_property_add_bool(oc, "verify-peer", - qcrypto_tls_creds_prop_get_verify, - qcrypto_tls_creds_prop_set_verify, - NULL); - object_class_property_add_str(oc, "dir", - qcrypto_tls_creds_prop_get_dir, - qcrypto_tls_creds_prop_set_dir, - NULL); - object_class_property_add_enum(oc, "endpoint", - "QCryptoTLSCredsEndpoint", - QCryptoTLSCredsEndpoint_lookup, - qcrypto_tls_creds_prop_get_endpoint, - qcrypto_tls_creds_prop_set_endpoint, - NULL); - object_class_property_add_str(oc, "priority", - qcrypto_tls_creds_prop_get_priority, - qcrypto_tls_creds_prop_set_priority, - NULL); -} - - -static void qcrypto_tls_creds_init(Object *obj) { QCryptoTLSCreds *creds = QCRYPTO_TLS_CREDS(obj); creds->verifyPeer = true; + + object_property_add_bool(obj, "verify-peer", + qcrypto_tls_creds_prop_get_verify, + qcrypto_tls_creds_prop_set_verify, + NULL); + object_property_add_str(obj, "dir", + qcrypto_tls_creds_prop_get_dir, + qcrypto_tls_creds_prop_set_dir, + NULL); + object_property_add_enum(obj, "endpoint", + "QCryptoTLSCredsEndpoint", + QCryptoTLSCredsEndpoint_lookup, + qcrypto_tls_creds_prop_get_endpoint, + qcrypto_tls_creds_prop_set_endpoint, + NULL); + object_property_add_str(obj, "priority", + qcrypto_tls_creds_prop_get_priority, + qcrypto_tls_creds_prop_set_priority, + NULL); } @@ -269,7 +264,6 @@ static const TypeInfo qcrypto_tls_creds_info = { .instance_size = sizeof(QCryptoTLSCreds), .instance_init = qcrypto_tls_creds_init, .instance_finalize = qcrypto_tls_creds_finalize, - .class_init = qcrypto_tls_creds_class_init, .class_size = sizeof(QCryptoTLSCredsClass), .abstract = true, }; diff --git a/crypto/tlscredsanon.c b/crypto/tlscredsanon.c index 1464220..7e86760 100644 --- a/crypto/tlscredsanon.c +++ b/crypto/tlscredsanon.c @@ -173,6 +173,16 @@ qcrypto_tls_creds_anon_complete(UserCreatable *uc, Error **errp) static void +qcrypto_tls_creds_anon_instance_init(Object *obj) +{ + object_property_add_bool(obj, "loaded", + qcrypto_tls_creds_anon_prop_get_loaded, + qcrypto_tls_creds_anon_prop_set_loaded, + NULL); +} + + +static void qcrypto_tls_creds_anon_finalize(Object *obj) { QCryptoTLSCredsAnon *creds = QCRYPTO_TLS_CREDS_ANON(obj); @@ -187,11 +197,6 @@ qcrypto_tls_creds_anon_class_init(ObjectClass *oc, void *data) UserCreatableClass *ucc = USER_CREATABLE_CLASS(oc); ucc->complete = qcrypto_tls_creds_anon_complete; - - object_class_property_add_bool(oc, "loaded", - qcrypto_tls_creds_anon_prop_get_loaded, - qcrypto_tls_creds_anon_prop_set_loaded, - NULL); } @@ -199,6 +204,7 @@ static const TypeInfo qcrypto_tls_creds_anon_info = { .parent = TYPE_QCRYPTO_TLS_CREDS, .name = TYPE_QCRYPTO_TLS_CREDS_ANON, .instance_size = sizeof(QCryptoTLSCredsAnon), + .instance_init = qcrypto_tls_creds_anon_instance_init, .instance_finalize = qcrypto_tls_creds_anon_finalize, .class_size = sizeof(QCryptoTLSCredsAnonClass), .class_init = qcrypto_tls_creds_anon_class_init, diff --git a/crypto/tlscredsx509.c b/crypto/tlscredsx509.c index 50eb54f..7213849 100644 --- a/crypto/tlscredsx509.c +++ b/crypto/tlscredsx509.c @@ -810,6 +810,19 @@ qcrypto_tls_creds_x509_init(Object *obj) QCryptoTLSCredsX509 *creds = QCRYPTO_TLS_CREDS_X509(obj); creds->sanityCheck = true; + + object_property_add_bool(obj, "loaded", + qcrypto_tls_creds_x509_prop_get_loaded, + qcrypto_tls_creds_x509_prop_set_loaded, + NULL); + object_property_add_bool(obj, "sanity-check", + qcrypto_tls_creds_x509_prop_get_sanity, + qcrypto_tls_creds_x509_prop_set_sanity, + NULL); + object_property_add_str(obj, "passwordid", + qcrypto_tls_creds_x509_prop_get_passwordid, + qcrypto_tls_creds_x509_prop_set_passwordid, + NULL); } @@ -829,19 +842,6 @@ qcrypto_tls_creds_x509_class_init(ObjectClass *oc, void *data) UserCreatableClass *ucc = USER_CREATABLE_CLASS(oc); ucc->complete = qcrypto_tls_creds_x509_complete; - - object_class_property_add_bool(oc, "loaded", - qcrypto_tls_creds_x509_prop_get_loaded, - qcrypto_tls_creds_x509_prop_set_loaded, - NULL); - object_class_property_add_bool(oc, "sanity-check", - qcrypto_tls_creds_x509_prop_get_sanity, - qcrypto_tls_creds_x509_prop_set_sanity, - NULL); - object_class_property_add_str(oc, "passwordid", - qcrypto_tls_creds_x509_prop_get_passwordid, - qcrypto_tls_creds_x509_prop_set_passwordid, - NULL); }