@@ -186,13 +186,6 @@ static char *rng_egd_get_chardev(Object *obj, Error **errp)
return NULL;
}
-static void rng_egd_init(Object *obj)
-{
- object_property_add_str(obj, "chardev",
- rng_egd_get_chardev, rng_egd_set_chardev,
- NULL);
-}
-
static void rng_egd_finalize(Object *obj)
{
RngEgd *s = RNG_EGD(obj);
@@ -214,6 +207,10 @@ static void rng_egd_class_init(ObjectClass *klass, void *data)
rbc->request_entropy = rng_egd_request_entropy;
rbc->cancel_requests = rng_egd_cancel_requests;
rbc->opened = rng_egd_opened;
+
+ object_class_property_add_str(klass, "chardev",
+ rng_egd_get_chardev, rng_egd_set_chardev,
+ NULL);
}
static const TypeInfo rng_egd_info = {
@@ -221,7 +218,6 @@ static const TypeInfo rng_egd_info = {
.parent = TYPE_RNG_BACKEND,
.instance_size = sizeof(RngEgd),
.class_init = rng_egd_class_init,
- .instance_init = rng_egd_init,
.instance_finalize = rng_egd_finalize,
};
@@ -110,11 +110,6 @@ static void rng_random_init(Object *obj)
{
RndRandom *s = RNG_RANDOM(obj);
- object_property_add_str(obj, "filename",
- rng_random_get_filename,
- rng_random_set_filename,
- NULL);
-
s->filename = g_strdup("/dev/random");
s->fd = -1;
}
@@ -137,6 +132,11 @@ static void rng_random_class_init(ObjectClass *klass, void *data)
rbc->request_entropy = rng_random_request_entropy;
rbc->opened = rng_random_opened;
+
+ object_class_property_add_str(klass, "filename",
+ rng_random_get_filename,
+ rng_random_set_filename,
+ NULL);
}
static const TypeInfo rng_random_info = {
@@ -72,26 +72,22 @@ static void rng_backend_prop_set_opened(Object *obj, bool value, Error **errp)
s->opened = true;
}
-static void rng_backend_init(Object *obj)
-{
- object_property_add_bool(obj, "opened",
- rng_backend_prop_get_opened,
- rng_backend_prop_set_opened,
- NULL);
-}
-
static void rng_backend_class_init(ObjectClass *oc, void *data)
{
UserCreatableClass *ucc = USER_CREATABLE_CLASS(oc);
ucc->complete = rng_backend_complete;
+
+ object_class_property_add_bool(oc, "opened",
+ rng_backend_prop_get_opened,
+ rng_backend_prop_set_opened,
+ NULL);
}
static const TypeInfo rng_backend_info = {
.name = TYPE_RNG_BACKEND,
.parent = TYPE_OBJECT,
.instance_size = sizeof(RngBackend),
- .instance_init = rng_backend_init,
.class_size = sizeof(RngBackendClass),
.class_init = rng_backend_class_init,
.abstract = true,
This converts the rng, rng-egd & rng-random objects to register their properties against the class rather than object. Signed-off-by: Daniel P. Berrange <berrange@redhat.com> --- backends/rng-egd.c | 12 ++++-------- backends/rng-random.c | 10 +++++----- backends/rng.c | 14 +++++--------- 3 files changed, 14 insertions(+), 22 deletions(-)