Add support for private IP range 10.0.0.0-10.255.255.255 (#10)
This commit is contained in:
		
							parent
							
								
									874145f2a5
								
							
						
					
					
						commit
						23dac08e45
					
				
					 3 changed files with 7 additions and 6 deletions
				
			
		
							
								
								
									
										4
									
								
								dance.py
									
										
									
									
									
								
							
							
						
						
									
										4
									
								
								dance.py
									
										
									
									
									
								
							|  | @ -36,7 +36,7 @@ class PairingMethod(Enum): | |||
| 
 | ||||
| 
 | ||||
| REGEX_PAIRING_CODE = re.compile(r'^\d{6}$') | ||||
| REGEX_LOCAL_IP_ADDRESS = re.compile(r'^192\.168\.((\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.)(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])$') | ||||
| REGEX_LOCAL_IP_ADDRESS = re.compile(r'^(192\.168|10.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5]))\.((\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.)(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])$') | ||||
| 
 | ||||
| 
 | ||||
| async def get_device_ids(): | ||||
|  | @ -249,7 +249,7 @@ def is_valid_pairing_method(val): | |||
| def get_host_ip(): | ||||
|     try: | ||||
|         for ip in socket.gethostbyname_ex(socket.gethostname())[2]: | ||||
|             if ip.startswith('192.168'): | ||||
|             if ip.startswith('192.168') or ip.startswith('10.'): | ||||
|                 return ip | ||||
|     except Exception: | ||||
|         pass | ||||
|  |  | |||
|  | @ -149,6 +149,7 @@ class JoyDance: | |||
|         ''' Open a port on this machine so the console can connect to it ''' | ||||
|         try: | ||||
|             conn = socket.socket(socket.AF_INET, socket.SOCK_STREAM) | ||||
|             conn.settimeout(10) | ||||
|             conn.bind(('0.0.0.0', self.host_port)) | ||||
|             conn.listen(5) | ||||
| 
 | ||||
|  | @ -382,7 +383,7 @@ class JoyDance: | |||
|             if self.tls_certificate: | ||||
|                 ssl_context.load_verify_locations(cadata=self.tls_certificate) | ||||
| 
 | ||||
|             if '192.168' in self.pairing_url: | ||||
|             if self.pairing_url.startswith('192.168.') or self.pairing_url.startswith('10.'): | ||||
|                 if self.console_conn: | ||||
|                     server_hostname = self.console_conn.getpeername()[0] | ||||
|             else: | ||||
|  |  | |||
|  | @ -107,7 +107,7 @@ class PrivateIpAddress extends Component { | |||
|         let console_ip_addr = props.console_ip_addr | ||||
| 
 | ||||
|         let hostname = window.location.hostname | ||||
|         if (hostname.startsWith('192.168.')) { | ||||
|         if (hostname.startsWith('192.168.') || hostname.startsWith('10.')) { | ||||
|             host_ip_addr = hostname | ||||
|             lock_host = true | ||||
|         } | ||||
|  | @ -162,7 +162,7 @@ class PrivateIpAddress extends Component { | |||
|             `}
 | ||||
| 
 | ||||
|             ${([PairingMethod.FAST, PairingMethod.OLD].indexOf(pairing_method) > -1 || (pairing_method == PairingMethod.DEFAULT && !state.lock_host)) && html` | ||||
|                 <input required id="ipAddr" type="text" inputmode="decimal" size="15" maxlength="15" placeholder="192.168.x.x" pattern="^192\\.168\\.((\\d{1,2}|1\\d\\d|2[0-4]\\d|25[0-5])\\.)(\\d{1,2}|1\\d\\d|2[0-4]\\d|25[0-5])$" value=${addr} onKeyPress=${this.onKeyPress} onChange="${this.onChange}" /> | ||||
|                 <input required id="ipAddr" type="text" inputmode="decimal" size="15" maxlength="15" placeholder="192.168.?/10.?" pattern="^(192\\.168|10.(\\d{1,2}|1\\d\\d|2[0-4]\\d|25[0-5]))\\.((\\d{1,2}|1\\d\\d|2[0-4]\\d|25[0-5])\\.)(\\d{1,2}|1\\d\\d|2[0-4]\\d|25[0-5])$" value=${addr} onKeyPress=${this.onKeyPress} onChange="${this.onChange}" /> | ||||
|             `}
 | ||||
| 
 | ||||
|         ` | ||||
|  | @ -385,7 +385,7 @@ class App extends Component { | |||
|         const state = this.state | ||||
|         const pairing_method = state.pairing_method | ||||
|         let addr = pairing_method == PairingMethod.DEFAULT ? state.host_ip_addr : state.console_ip_addr | ||||
|         if (!addr.match(/^192\.168\.((\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.)(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])$/)) { | ||||
|         if (!addr.match(/^(192\.168|10.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5]))\.((\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.)(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])$/)) { | ||||
|             alert('ERROR: Invalid IP address!') | ||||
|             document.getElementById('ipAddr').focus() | ||||
|             return | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue