clj-artnet.impl.shell.policy
Art-Net 4 protocol policy enforcement.
Provides pure functions to validate compliance, specifically regarding broadcast restrictions for certain opcodes.
broadcast-target?
(broadcast-target? {:keys [host broadcast?]})Determines if a target is a broadcast address.
Checks both the explicit :broadcast? flag and 255.255.255.255 address.
check-broadcast-policy
(check-broadcast-policy op broadcast?)Validates Art-Net 4 broadcast restrictions.
Throws ex-info if a forbidden opcode is targeted for broadcast.
no-broadcast-ops
Set of opcodes strictly forbidden from broadcast by Art-Net 4 spec (Table 1). Includes: :artdmx, :artpollreply, :artrdm, :arttoddata.