unrhodecode/rhodecode/model/validation_schema/validators.py
Marcin Kuzminski 198c6fda61 gists: use colander schema to validate input data.
- brings consistent validation acros API and web
- use nicer and stricter schemas to validate data
- fixes #4118
2016-07-31 20:11:12 +02:00

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)