diff options
Diffstat (limited to 'src/lib/libcrypto/rand/rand_vms.c')
| -rw-r--r-- | src/lib/libcrypto/rand/rand_vms.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/src/lib/libcrypto/rand/rand_vms.c b/src/lib/libcrypto/rand/rand_vms.c index 29b2d7af0b..1267a3acae 100644 --- a/src/lib/libcrypto/rand/rand_vms.c +++ b/src/lib/libcrypto/rand/rand_vms.c | |||
| @@ -101,11 +101,12 @@ int RAND_poll(void) | |||
| 101 | pitem = item; | 101 | pitem = item; |
| 102 | 102 | ||
| 103 | /* Setup */ | 103 | /* Setup */ |
| 104 | while (pitems_data->length) | 104 | while (pitems_data->length |
| 105 | && (total_length + pitems_data->length <= 256)) | ||
| 105 | { | 106 | { |
| 106 | pitem->length = pitems_data->length; | 107 | pitem->length = pitems_data->length; |
| 107 | pitem->code = pitems_data->code; | 108 | pitem->code = pitems_data->code; |
| 108 | pitem->buffer = (long *)data_buffer[total_length]; | 109 | pitem->buffer = (long *)&data_buffer[total_length]; |
| 109 | pitem->retlen = 0; | 110 | pitem->retlen = 0; |
| 110 | total_length += pitems_data->length; | 111 | total_length += pitems_data->length; |
| 111 | pitems_data++; | 112 | pitems_data++; |
