ZeroTierOne
ZeroTierOne copied to clipboard
`macsrc` and `macdest` matches values are improperly parsed
The rules compiler (featured in the official controller) automatically reformat MAC addresses to separate bytes with colon characters. For example, 0123456789AB
becomes 01:23:45:67:89:AB
. Matches macsrc
(MATCH_MAC_SOURCE
in JSON) and macdest
(MATCH_MAC_DEST
in JSON) are parsed in a way that doesn't ignore the :
character, and treat it as if it was carrying address information (the current implementation treats it as a 0
). In the end, the filtering engine doesn't get the valid MAC address and thus comparisons with packet MAC addresses fails.