aboutsummaryrefslogtreecommitdiff
path: root/src/ats/gnunet-service-ats_reservations.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/ats/gnunet-service-ats_reservations.h')
-rw-r--r--src/ats/gnunet-service-ats_reservations.h37
1 files changed, 37 insertions, 0 deletions
diff --git a/src/ats/gnunet-service-ats_reservations.h b/src/ats/gnunet-service-ats_reservations.h
index 63b9a5936..5112f8213 100644
--- a/src/ats/gnunet-service-ats_reservations.h
+++ b/src/ats/gnunet-service-ats_reservations.h
@@ -29,9 +29,46 @@
29#include "gnunet_util_lib.h" 29#include "gnunet_util_lib.h"
30 30
31 31
32/**
33 * Set the amount of bandwidth the other peer could currently transmit
34 * to us (as far as we know) to the given value.
35 *
36 * @param peer identity of the peer
37 * @param bandwidth_in currently available bandwidth from that peer to
38 * this peer (estimate)
39 */
40void
41GAS_reservations_set_bandwidth (const struct GNUNET_PeerIdentity *peer,
42 struct GNUNET_BANDWIDTH_Value32NBO bandwidth_in);
43
44
45/**
46 * Reserve the given amount of incoming bandwidth (in bytes) from the
47 * given peer. If a reservation is not possible right now, return how
48 * long the client should wait before trying again.
49 *
50 * @param peer peer to reserve bandwidth from
51 * @param amount number of bytes to reserve
52 * @return 0 if the reservation was successful, FOREVER if the
53 * peer is not connected, otherwise the time to wait
54 * until the reservation might succeed
55 */
32struct GNUNET_TIME_Relative 56struct GNUNET_TIME_Relative
33GAS_reservations_reserve (const struct GNUNET_PeerIdentity *peer, 57GAS_reservations_reserve (const struct GNUNET_PeerIdentity *peer,
34 int32_t amount); 58 int32_t amount);
35 59
36 60
61/**
62 * Initialize reservations subsystem.
63 */
64void
65GAS_reservations_init (void);
66
67
68/**
69 * Shutdown reservations subsystem.
70 */
71void
72GAS_reservations_done (void);
73
37#endif 74#endif