rng-random.c (525009d04fa49567b0eba43f9ff3c17e560dabb7) rng-random.c (a3d3ee6c1357749013aa700c929682f41475b158)
1/*
2 * QEMU Random Number Generator Backend
3 *
4 * Copyright IBM, Corp. 2012
5 *
6 * Authors:
7 * Anthony Liguori <aliguori@us.ibm.com>
8 *

--- 94 unchanged lines hidden (view full) ---

103 g_free(s->filename);
104 s->filename = g_strdup(filename);
105}
106
107static void rng_random_init(Object *obj)
108{
109 RngRandom *s = RNG_RANDOM(obj);
110
1/*
2 * QEMU Random Number Generator Backend
3 *
4 * Copyright IBM, Corp. 2012
5 *
6 * Authors:
7 * Anthony Liguori <aliguori@us.ibm.com>
8 *

--- 94 unchanged lines hidden (view full) ---

103 g_free(s->filename);
104 s->filename = g_strdup(filename);
105}
106
107static void rng_random_init(Object *obj)
108{
109 RngRandom *s = RNG_RANDOM(obj);
110
111 object_property_add_str(obj, "filename",
112 rng_random_get_filename,
113 rng_random_set_filename);
114
115 s->filename = g_strdup("/dev/urandom");
116 s->fd = -1;
117}
118
119static void rng_random_finalize(Object *obj)
120{
121 RngRandom *s = RNG_RANDOM(obj);
122

--- 6 unchanged lines hidden (view full) ---

129}
130
131static void rng_random_class_init(ObjectClass *klass, void *data)
132{
133 RngBackendClass *rbc = RNG_BACKEND_CLASS(klass);
134
135 rbc->request_entropy = rng_random_request_entropy;
136 rbc->opened = rng_random_opened;
111 s->filename = g_strdup("/dev/urandom");
112 s->fd = -1;
113}
114
115static void rng_random_finalize(Object *obj)
116{
117 RngRandom *s = RNG_RANDOM(obj);
118

--- 6 unchanged lines hidden (view full) ---

125}
126
127static void rng_random_class_init(ObjectClass *klass, void *data)
128{
129 RngBackendClass *rbc = RNG_BACKEND_CLASS(klass);
130
131 rbc->request_entropy = rng_random_request_entropy;
132 rbc->opened = rng_random_opened;
133 object_class_property_add_str(klass, "filename",
134 rng_random_get_filename,
135 rng_random_set_filename);
136
137}
138
139static const TypeInfo rng_random_info = {
140 .name = TYPE_RNG_RANDOM,
141 .parent = TYPE_RNG_BACKEND,
142 .instance_size = sizeof(RngRandom),
143 .class_init = rng_random_class_init,
144 .instance_init = rng_random_init,
145 .instance_finalize = rng_random_finalize,
146};
147
148static void register_types(void)
149{
150 type_register_static(&rng_random_info);
151}
152
153type_init(register_types);
137}
138
139static const TypeInfo rng_random_info = {
140 .name = TYPE_RNG_RANDOM,
141 .parent = TYPE_RNG_BACKEND,
142 .instance_size = sizeof(RngRandom),
143 .class_init = rng_random_class_init,
144 .instance_init = rng_random_init,
145 .instance_finalize = rng_random_finalize,
146};
147
148static void register_types(void)
149{
150 type_register_static(&rng_random_info);
151}
152
153type_init(register_types);