mirror of
https://github.com/ACL4SSR/ACL4SSR.git
synced 2026-06-13 07:52:31 +00:00
fix some bugs
This commit is contained in:
@@ -16,8 +16,12 @@ def is_ip(s):
|
|||||||
if all(0 <= int(p) <= 255 for p in parts):
|
if all(0 <= int(p) <= 255 for p in parts):
|
||||||
return True
|
return True
|
||||||
if ':' in s:
|
if ':' in s:
|
||||||
valid_chars = set('0123456789abcdefABCDEF:')
|
ipv6_pattern = r'^([0-9a-fA-F]{0,4}:){1,7}[0-9a-fA-F]{0,4}$|^(::)$|^::1$'
|
||||||
if all(c in valid_chars for c in s):
|
if re.match(ipv6_pattern, s):
|
||||||
|
return True
|
||||||
|
if s.startswith('::ffff:'):
|
||||||
|
ipv4_in_v6_pattern = r'^::ffff:(\d{1,3}\.){3}\d{1,3}$'
|
||||||
|
if re.match(ipv4_in_v6_pattern, s):
|
||||||
return True
|
return True
|
||||||
return False
|
return False
|
||||||
return False
|
return False
|
||||||
|
|||||||
Reference in New Issue
Block a user