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); |