def convert(self, value, param, ctx):
if value.startswith('ext:'):
ip, _, port = value[4:].partition(':')
try:
IPv4Address(ip.decode('UTF-8', 'ignore'))
except AddressValueError:
self.fail('invalid IP address: {}'.format(ip), param, ctx)
if port:
try:
port = int(port, 0)
except ValueError:
self.fail('invalid port number: {}'.format(port), param, ctx)
else:
port = None
return ip, port
return super(NATChoiceType, self).convert(value, param, ctx)
评论列表
文章目录