@@ -173,6 +173,7 @@ def __init__(
173173 retry_wait : float | None ,
174174 services : set [HostServiceInfo | MDNSServiceInfo ],
175175 zconf : zeroconf .Zeroconf | None ,
176+ ip_family : socket .AddressFamily = socket .AF_INET ,
176177 ) -> None :
177178 super ().__init__ ()
178179
@@ -192,6 +193,7 @@ def __init__(
192193
193194 self .host = "unknown"
194195 self .port = 8009
196+ self .ip_family = ip_family
195197
196198 self .source_id = "sender-0"
197199 self .stop = threading .Event ()
@@ -291,7 +293,7 @@ def mdns_backoff(
291293 self .socket = None
292294 self .remote_selector_key = None
293295
294- self .socket = new_socket ()
296+ self .socket = new_socket (self . ip_family )
295297 self .remote_selector_key = self .selector .register (
296298 self .socket , selectors .EVENT_READ
297299 )
@@ -1085,14 +1087,14 @@ def receive_message(self, message: CastMessage, data: dict) -> bool:
10851087 return False
10861088
10871089
1088- def new_socket () -> socket .socket :
1090+ def new_socket (family : socket . AddressFamily ) -> socket .socket :
10891091 """
10901092 Create a new socket with OS-specific parameters
10911093
10921094 Try to set SO_REUSEPORT for BSD-flavored systems if it's an option.
10931095 Catches errors if not.
10941096 """
1095- new_sock = socket .socket (socket . AF_INET , socket .SOCK_STREAM )
1097+ new_sock = socket .socket (family , socket .SOCK_STREAM )
10961098 new_sock .setsockopt (socket .SOL_SOCKET , socket .SO_REUSEADDR , 1 )
10971099
10981100 try :
0 commit comments