mirror of
https://github.com/zerotier/ZeroTierOne.git
synced 2025-01-30 16:13:55 +00:00
Small rule compiler fix with tag defaults.
This commit is contained in:
parent
855361b5b8
commit
b959148447
@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "zerotier-rule-compiler",
|
"name": "zerotier-rule-compiler",
|
||||||
"version": "1.2.0-1",
|
"version": "1.2.2-1",
|
||||||
"description": "ZeroTier Rule Script Compiler",
|
"description": "ZeroTier Rule Script Compiler",
|
||||||
"main": "cli.js",
|
"main": "cli.js",
|
||||||
"scripts": {
|
"scripts": {
|
||||||
|
@ -762,7 +762,7 @@ function compile(src,rules,caps,tags)
|
|||||||
return [ tag[k][1],tag[k][2],'Duplicate tag default directive.' ];
|
return [ tag[k][1],tag[k][2],'Duplicate tag default directive.' ];
|
||||||
if ((k + 1) >= tag.length)
|
if ((k + 1) >= tag.length)
|
||||||
return [ tag[k][1],tag[k][2],'Missing value for default.' ];
|
return [ tag[k][1],tag[k][2],'Missing value for default.' ];
|
||||||
dfl = tag[++k][0]||null;
|
dfl = tag[++k][0]||0;
|
||||||
} else if (tkeyword === 'flag') {
|
} else if (tkeyword === 'flag') {
|
||||||
if ((k + 2) >= tag.length)
|
if ((k + 2) >= tag.length)
|
||||||
return [ tag[k][1],tag[k][2],'Missing tag flag name or bit index.' ];
|
return [ tag[k][1],tag[k][2],'Missing tag flag name or bit index.' ];
|
||||||
@ -806,7 +806,7 @@ function compile(src,rules,caps,tags)
|
|||||||
if (id < 0)
|
if (id < 0)
|
||||||
return [ tag[0][1],tag[0][2],'Tag definition is missing a numeric ID.' ];
|
return [ tag[0][1],tag[0][2],'Tag definition is missing a numeric ID.' ];
|
||||||
|
|
||||||
if (dfl) {
|
if (dfl !== null) {
|
||||||
let dfl2 = enums[dfl];
|
let dfl2 = enums[dfl];
|
||||||
if (typeof dfl2 === 'number') {
|
if (typeof dfl2 === 'number') {
|
||||||
dfl = dfl2;
|
dfl = dfl2;
|
||||||
@ -815,10 +815,7 @@ function compile(src,rules,caps,tags)
|
|||||||
if (typeof dfl2 === 'number') {
|
if (typeof dfl2 === 'number') {
|
||||||
dfl = dfl2;
|
dfl = dfl2;
|
||||||
} else {
|
} else {
|
||||||
dfl = _parseNum(dfl)||0;
|
dfl = Math.abs(_parseNum(dfl)||0) & 0xffffffff;
|
||||||
if (dfl < 0)
|
|
||||||
dfl = 0;
|
|
||||||
else dfl &= 0xffffffff;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user