summaryrefslogtreecommitdiff
path: root/src/lib/qos.c
diff options
context:
space:
mode:
authorDimitri Staessens <dimitri.staessens@ugent.be>2018-06-05 18:39:10 +0200
committerSander Vrijders <sander.vrijders@ugent.be>2018-06-05 19:53:41 +0200
commit85e8b0a4476fc0aff1b9192c36e807cb68f5320e (patch)
treedb57e6d21937f071d27c648d322bdb561124ab32 /src/lib/qos.c
parentdf526d95a9e4d7c251713c50436d88546c33c2f0 (diff)
downloadouroboros-85e8b0a4476fc0aff1b9192c36e807cb68f5320e.tar.gz
ouroboros-85e8b0a4476fc0aff1b9192c36e807cb68f5320e.zip
lib: Define default qosspecs in qos sources
This moves the definition of the predefined qosspecs to qos.h and qos.c. This allows applications to select them using qos_best_effort etc. Signed-off-by: Dimitri Staessens <dimitri.staessens@ugent.be> Signed-off-by: Sander Vrijders <sander.vrijders@ugent.be>
Diffstat (limited to 'src/lib/qos.c')
-rw-r--r--src/lib/qos.c32
1 files changed, 32 insertions, 0 deletions
diff --git a/src/lib/qos.c b/src/lib/qos.c
index 7a830b8b..f5fbf1fb 100644
--- a/src/lib/qos.c
+++ b/src/lib/qos.c
@@ -26,6 +26,38 @@
#include <stdint.h>
#include <stddef.h>
+qosspec_t qos_raw = {
+ .delay = UINT32_MAX,
+ .bandwidth = UINT64_MAX,
+ .availability = 0,
+ .in_order = 0,
+ .maximum_interruption = UINT32_MAX
+};
+
+qosspec_t qos_best_effort = {
+ .delay = UINT32_MAX,
+ .bandwidth = UINT64_MAX,
+ .availability = 0,
+ .in_order = 1,
+ .maximum_interruption = UINT32_MAX
+};
+
+qosspec_t qos_video = {
+ .delay = 100,
+ .bandwidth = UINT64_MAX,
+ .availability = 3,
+ .in_order = 1,
+ .maximum_interruption = 100
+};
+
+qosspec_t qos_voice = {
+ .delay = 10,
+ .bandwidth = 100000,
+ .availability = 5,
+ .in_order = 1,
+ .maximum_interruption = 50
+};
+
int qosspec_init(qosspec_t * qs)
{
if (qs == NULL)