@@ -46,8 +46,9 @@ def hostname(
4646 value : str ,
4747 / ,
4848 * ,
49+ skip_ipv6_addr : bool = False ,
50+ skip_ipv4_addr : bool = False ,
4951 may_have_port : bool = True ,
50- skip_ip_addr : bool = False ,
5152 maybe_simple : bool = True ,
5253 rfc_1034 : bool = False ,
5354 rfc_2782 : bool = False ,
@@ -79,10 +80,12 @@ def hostname(
7980 Args:
8081 value:
8182 Hostname string to validate.
83+ skip_ipv6_addr:
84+ When hostname string cannot be an IPv6 address.
85+ skip_ipv4_addr:
86+ When hostname string cannot be an IPv4 address.
8287 may_have_port:
8388 Hostname string may contain port number.
84- skip_ip_addr:
85- When hostname string cannot be an IP address.
8689 maybe_simple:
8790 Hostname string maybe only hyphens and alpha-numerals.
8891 rfc_1034:
@@ -104,13 +107,13 @@ def hostname(
104107 return (
105108 (_simple_hostname_regex ().match (host_seg ) if maybe_simple else False )
106109 or domain (host_seg , rfc_1034 = rfc_1034 , rfc_2782 = rfc_2782 )
107- or (False if skip_ip_addr else ipv4 (host_seg , cidr = False ))
108- or (False if skip_ip_addr else ipv6 (host_seg , cidr = False ))
110+ or (False if skip_ipv4_addr else ipv4 (host_seg , cidr = False ))
111+ or (False if skip_ipv6_addr else ipv6 (host_seg , cidr = False ))
109112 )
110113
111114 return (
112115 (_simple_hostname_regex ().match (value ) if maybe_simple else False )
113116 or domain (value , rfc_1034 = rfc_1034 , rfc_2782 = rfc_2782 )
114- or (False if skip_ip_addr else ipv4 (value , cidr = False ))
115- or (False if skip_ip_addr else ipv6 (value , cidr = False ))
117+ or (False if skip_ipv4_addr else ipv4 (value , cidr = False ))
118+ or (False if skip_ipv6_addr else ipv6 (value , cidr = False ))
116119 )
0 commit comments