- brings consistent validation acros API and web - use nicer and stricter schemas to validate data - fixes #4118
19 lines
376 B
Python
19 lines
376 B
Python
import os
|
|
|
|
import ipaddress
|
|
import colander
|
|
|
|
from rhodecode.translation import _
|
|
|
|
|
|
def ip_addr_validator(node, value):
|
|
try:
|
|
# this raises an ValueError if address is not IpV4 or IpV6
|
|
ipaddress.ip_network(value, strict=False)
|
|
except ValueError:
|
|
msg = _(u'Please enter a valid IPv4 or IpV6 address')
|
|
raise colander.Invalid(node, msg)
|
|
|
|
|
|
|
|
|