fix dns only classifiers and add missing class-selectors

Signed-off-by: John Crispin <john@phrozen.org>
This commit is contained in:
John Crispin
2021-11-04 15:02:22 +01:00
parent 4d2c2970dd
commit dbb2aaf11e
6 changed files with 27 additions and 10 deletions

View File

@@ -6,6 +6,7 @@ if (!length(wmm))
return;
let class = {
"CS0": 0,
"CS1": 8,
"CS2": 16,
"CS3": 24,
@@ -26,6 +27,8 @@ let class = {
"AF42": 36,
"AF43": 38,
"EF": 46,
"VA": 44,
"LE" 1,
"DF": 0,
};

View File

@@ -27,8 +27,6 @@ function get_range(port) {
let fs = require("fs");
let file = fs.open("/tmp/qosify.conf", "w");
for (let class in quality_of_service.classifier) {
if (!length(class.ports))
continue;
for (let port in class.ports)
for (let proto in get_proto(port.protocol))
file.write(sprintf("%s:%d%s %s%s\n", proto, port.port,
@@ -43,8 +41,8 @@ for (let class in quality_of_service.classifier) {
file.close();
%}
set qosify.@defaults[0].bulk_trigger_pps={{ quality_of_service.bulk_detection.packets_per_second }}
set qosify.@defaults[0].dscp_bulk={{ quality_of_service.bulk_detection.dscp }}
set qosify.@defaults[0].bulk_trigger_pps={{ quality_of_service?.bulk_detection?.packets_per_second || 0}}
set qosify.@defaults[0].dscp_bulk={{ quality_of_service?.bulk_detection?.dscp }}
{% for (let dev in egress): %}
set qosify.{{ dev }}=device

View File

@@ -2,12 +2,14 @@ type: array
items:
type: string
enum:
- CS0
- CS1
- CS2
- CS3
- CS4
- CS5
- CS6
- CS7
- AF11
- AF12
- AF13
@@ -22,3 +24,5 @@ items:
- AF43
- DF
- EF
- VA
- LE

View File

@@ -1,11 +1,13 @@
type: string
enum:
- CS0
- CS1
- CS2
- CS3
- CS4
- CS5
- CS6
- CS7
- AF11
- AF12
- AF13
@@ -20,3 +22,5 @@ enum:
- AF43
- DF
- EF
- VA
- LE

View File

@@ -152,8 +152,8 @@ function instantiateGlobalsWirelessMultimediaClassSelector(location, value, erro
if (type(value) != "string")
push(errors, [ location, "must be of type string" ]);
if (!(value in [ "CS1", "CS2", "CS3", "CS4", "CS5", "CS6", "AF11", "AF12", "AF13", "AF21", "AF22", "AF23", "AF31", "AF32", "AF33", "AF41", "AF42", "AF43", "DF", "EF" ]))
push(errors, [ location, "must be one of \"CS1\", \"CS2\", \"CS3\", \"CS4\", \"CS5\", \"CS6\", \"AF11\", \"AF12\", \"AF13\", \"AF21\", \"AF22\", \"AF23\", \"AF31\", \"AF32\", \"AF33\", \"AF41\", \"AF42\", \"AF43\", \"DF\" or \"EF\"" ]);
if (!(value in [ "CS0", "CS1", "CS2", "CS3", "CS4", "CS5", "CS6", "CS7", "AF11", "AF12", "AF13", "AF21", "AF22", "AF23", "AF31", "AF32", "AF33", "AF41", "AF42", "AF43", "DF", "EF", "VA", "LE" ]))
push(errors, [ location, "must be one of \"CS0\", \"CS1\", \"CS2\", \"CS3\", \"CS4\", \"CS5\", \"CS6\", \"CS7\", \"AF11\", \"AF12\", \"AF13\", \"AF21\", \"AF22\", \"AF23\", \"AF31\", \"AF32\", \"AF33\", \"AF41\", \"AF42\", \"AF43\", \"DF\", \"EF\", \"VA\" or \"LE\"" ]);
return value;
}
@@ -5277,8 +5277,8 @@ function instantiateServiceQualityOfServiceClassSelector(location, value, errors
if (type(value) != "string")
push(errors, [ location, "must be of type string" ]);
if (!(value in [ "CS1", "CS2", "CS3", "CS4", "CS5", "CS6", "AF11", "AF12", "AF13", "AF21", "AF22", "AF23", "AF31", "AF32", "AF33", "AF41", "AF42", "AF43", "DF", "EF" ]))
push(errors, [ location, "must be one of \"CS1\", \"CS2\", \"CS3\", \"CS4\", \"CS5\", \"CS6\", \"AF11\", \"AF12\", \"AF13\", \"AF21\", \"AF22\", \"AF23\", \"AF31\", \"AF32\", \"AF33\", \"AF41\", \"AF42\", \"AF43\", \"DF\" or \"EF\"" ]);
if (!(value in [ "CS0", "CS1", "CS2", "CS3", "CS4", "CS5", "CS6", "CS7", "AF11", "AF12", "AF13", "AF21", "AF22", "AF23", "AF31", "AF32", "AF33", "AF41", "AF42", "AF43", "DF", "EF", "VA", "LE" ]))
push(errors, [ location, "must be one of \"CS0\", \"CS1\", \"CS2\", \"CS3\", \"CS4\", \"CS5\", \"CS6\", \"CS7\", \"AF11\", \"AF12\", \"AF13\", \"AF21\", \"AF22\", \"AF23\", \"AF31\", \"AF32\", \"AF33\", \"AF41\", \"AF42\", \"AF43\", \"DF\", \"EF\", \"VA\" or \"LE\"" ]);
return value;
}

View File

@@ -83,12 +83,14 @@
"items": {
"type": "string",
"enum": [
"CS0",
"CS1",
"CS2",
"CS3",
"CS4",
"CS5",
"CS6",
"CS7",
"AF11",
"AF12",
"AF13",
@@ -102,7 +104,9 @@
"AF42",
"AF43",
"DF",
"EF"
"EF",
"VA",
"LE"
]
}
},
@@ -2006,12 +2010,14 @@
"service.quality-of-service.class-selector": {
"type": "string",
"enum": [
"CS0",
"CS1",
"CS2",
"CS3",
"CS4",
"CS5",
"CS6",
"CS7",
"AF11",
"AF12",
"AF13",
@@ -2025,7 +2031,9 @@
"AF42",
"AF43",
"DF",
"EF"
"EF",
"VA",
"LE"
]
},
"service.quality-of-service": {