summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorSander Vrijders <sander.vrijders@ugent.be>2018-10-08 21:41:03 +0200
committerDimitri Staessens <dimitri.staessens@ugent.be>2018-10-09 09:45:04 +0200
commitff847419e54f283872d883a85ecea082e2c98790 (patch)
treed672dc5bf9840bf623337cc4b467ff189a20b902 /include
parentd9ad3852613cda026d4520b5c608ada7433dd7d9 (diff)
downloadouroboros-ff847419e54f283872d883a85ecea082e2c98790.tar.gz
ouroboros-ff847419e54f283872d883a85ecea082e2c98790.zip
lib: Define QoS specs inside header file0.12.1
The QoS specs were defined in the source file instead of in the header file, which resulted in uninitialized structs being used, which gave rise to weird behavior in the library. Signed-off-by: Sander Vrijders <sander.vrijders@ugent.be> Signed-off-by: Dimitri Staessens <dimitri.staessens@ugent.be>
Diffstat (limited to 'include')
-rw-r--r--include/ouroboros/qos.h65
1 files changed, 59 insertions, 6 deletions
diff --git a/include/ouroboros/qos.h b/include/ouroboros/qos.h
index 2b93f1d0..3475b086 100644
--- a/include/ouroboros/qos.h
+++ b/include/ouroboros/qos.h
@@ -36,11 +36,64 @@ typedef struct qos_spec {
uint32_t max_gap; /* In ms */
} qosspec_t;
-qosspec_t qos_raw;
-qosspec_t qos_raw_no_errors;
-qosspec_t qos_best_effort;
-qosspec_t qos_video;
-qosspec_t qos_voice;
-qosspec_t qos_data;
+static const qosspec_t qos_raw = {
+ .delay = UINT32_MAX,
+ .bandwidth = 0,
+ .availability = 0,
+ .loss = 1,
+ .ber = 1,
+ .in_order = 0,
+ .max_gap = UINT32_MAX
+};
+
+static const qosspec_t qos_raw_no_errors = {
+ .delay = UINT32_MAX,
+ .bandwidth = 0,
+ .availability = 0,
+ .loss = 1,
+ .ber = 0,
+ .in_order = 0,
+ .max_gap = UINT32_MAX
+};
+
+static const qosspec_t qos_best_effort = {
+ .delay = UINT32_MAX,
+ .bandwidth = 0,
+ .availability = 0,
+ .loss = 1,
+ .ber = 0,
+ .in_order = 1,
+ .max_gap = UINT32_MAX
+};
+
+static const qosspec_t qos_video = {
+ .delay = 100,
+ .bandwidth = UINT64_MAX,
+ .availability = 3,
+ .loss = 1,
+ .ber = 0,
+ .in_order = 1,
+ .max_gap = 100
+};
+
+static const qosspec_t qos_voice = {
+ .delay = 50,
+ .bandwidth = 100000,
+ .availability = 5,
+ .loss = 1,
+ .ber = 0,
+ .in_order = 1,
+ .max_gap = 50
+};
+
+static const qosspec_t qos_data = {
+ .delay = 1000,
+ .bandwidth = 0,
+ .availability = 0,
+ .loss = 0,
+ .ber = 0,
+ .in_order = 1,
+ .max_gap = 2000
+};
#endif /* OUROBOROS_QOS_H */