1 #include <stdio.h> // perror
2 #include <stdlib.h> // exit
3 #include <unistd.h> // sleep
6 #include "frescan_bwres.h"
8 #define ERROR(s) {perror (s); exit (-1);}
16 frescan_init_params_t init_params;
18 frescan_contract_t contract;
20 frescan_server_params_t server_params;
22 init_params.net = NETWORK;
23 init_params.node = LOCAL_NODE;
24 init_params.tx_fp_max_prio = 10;
25 init_params.rx_num_of_channels = 10;
26 init_params.rx_channel_max_prio = NULL;
28 printf("Initializing FRESCAN\n");
29 ret = frescan_init(&init_params);
30 if (ret != 0) ERROR ("could not init FRESCAN");
32 printf("Initializing BWRES\n");
33 ret = frescan_bwres_init(NETWORK);
34 if (ret != 0) ERROR ("could not init BWRES");
36 contract.min_values.budget = 5;
37 contract.min_values.period.tv_sec = 3;
38 contract.min_values.period.tv_nsec = 69;
41 ret = frescan_bwres_negotiate(NETWORK, &contract, &ss, &accepted);
42 if (ret != 0) ERROR ("could not negotiate");
45 printf("The contract was accepted, ss:%u\n", ss);
46 ret = frescan_servers_get_data(NETWORK, &server_params, ss);
47 if (ret != 0) ERROR ("could not get servers data");
49 printf("B:%u, T=(%u,%u), P:%u\n",
50 server_params.values.budget,
51 server_params.values.period.tv_sec,
52 server_params.values.period.tv_nsec,
55 printf("The contract was not accepted\n");