Page MenuHomeVyOS Platform

vyos-1x: ipaddrcheck and validators
Closed, ResolvedPublicBUG

Description

The following commands refuse to work:

  • set system ntp allow-clients address 172.16.0.0/12 (expects IPv4 network)
  • set system ntp allow-clients address 2001:db8::/64 (expects IPv6 network)
  • set service ssh listen-address 2001:db8::2 (IPv4 addresses are working fine)
  • set service dns forwarding domain foo.com server 2001:db8::1 (IPv4 addresses are working fine)
Invalid value
Value validation failed
Set failed

Looking at the node.def file and the interface show that atleast the IPv6 validator is missing (https://github.com/c-po/vyos-1x/blob/current/interface-definitions/dns-forwarding.xml#L42-L59).

$ cat /opt/vyatta/share/vyatta-cfg/templates/service/dns/forwarding/domain/node.tag/server/node.def
multi:
type: txt
help: Domain Name Server (DNS) to forward queries
val_help: ipv4; Domain Name Server (DNS) IPv4 address
val_help: ipv6; Domain Name Server (DNS) IPv6 address
syntax:expression: exec "/opt/vyatta/libexec/validators/ipv4-address  $VAR(@)"; "Invalid value"

This is just an excerpt from the failing commands.

Looks like an ipv4-network and ipv6-network validator is needed, too.

Commit https://github.com/c-po/vyos-1x/commit/32b6793b210505a2a69dc6f7615ddd5f66ad74b8 caused the problem.

Details

Difficulty level
Unknown (require assessment)
Version
vyos-1.2.0-rolling+201805150841
Why the issue appeared?
Will be filled on close