1/*
2 * Copyright 2019, Data61, CSIRO (ABN 41 687 119 230)
3 *
4 * SPDX-License-Identifier: BSD-2-Clause
5 */
6
7#include <stdlib.h>
8#include <stdio.h>
9
10#include <camkes.h>
11#include <camkes/dataport.h>
12
13#define SEND_DATA_LENGTH 20
14
15void create_random_string(char *data, int length)
16{
17    for (int i = 0; i < length; i++) {
18        int rand_value = (rand() % 72);
19        data[i] = '0' + rand_value;
20    }
21}
22
23void sending_data_loop(void)
24{
25    seL4_CPtr event_notification = notification_ready_notification();
26    char *data_buffer = (char *)data;
27    for (int i = 0; i < 10; i++) {
28        create_random_string(data_buffer, SEND_DATA_LENGTH);
29        data_buffer[SEND_DATA_LENGTH] = '\0';
30        notification_signal_emit_underlying();
31        seL4_Word badge;
32        seL4_Wait(event_notification, &badge);
33    }
34}
35
36int run(void)
37{
38    srand(100);
39    sending_data_loop();
40    return 0;
41}
42