Check if the current settings conform to the RFC and fix where possible

def sanitize(self):
        '''
        Check if the current settings conform to the RFC and fix where possible
        '''
        # Check ports
        if not isinstance(self.source_port, numbers.Integral) \
        or self.source_port < 0 \
        or self.source_port >= 2 ** 16:
            raise ValueError('Invalid source port')

        if not isinstance(self.destination_port, numbers.Integral) \
        or self.destination_port < 0 \
        or self.destination_port >= 2 ** 16:
            raise ValueError('Invalid destination port')