Stopped people from using Unicode format characters to pretend to be the server.
This commit is contained in:
		
							parent
							
								
									85ceb708f7
								
							
						
					
					
						commit
						c3e29d6850
					
				@ -26,6 +26,7 @@ from .exceptions import ClientError, AreaError, ArgumentError, ServerError
 | 
			
		||||
from .fantacrypt import fanta_decrypt
 | 
			
		||||
from .evidence import EvidenceList
 | 
			
		||||
from .websocket import WebSocket
 | 
			
		||||
import unicodedata
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
class AOProtocol(asyncio.Protocol):
 | 
			
		||||
@ -440,6 +441,10 @@ class AOProtocol(asyncio.Protocol):
 | 
			
		||||
        if len(self.client.name) > 30:
 | 
			
		||||
            self.client.send_host_message('Your OOC name is too long! Limit it to 30 characters.')
 | 
			
		||||
            return
 | 
			
		||||
        for c in self.client.name:
 | 
			
		||||
            if unicodedata.category(c) == 'Cf':
 | 
			
		||||
                self.client.send_host_message('You cannot use format characters in your name!')
 | 
			
		||||
                return
 | 
			
		||||
        if self.client.name.startswith(self.server.config['hostname']) or self.client.name.startswith('<dollar>G'):
 | 
			
		||||
            self.client.send_host_message('That name is reserved!')
 | 
			
		||||
            return
 | 
			
		||||
 | 
			
		||||
		Loading…
	
		Reference in New Issue
	
	Block a user