← Back
Editing: common.cpython-38.pyc
U W[� � . @ sJ d Z ddlmZmZ ddlZddlmZ ddlmZ ddl m Z mZmZ ddl m Z mZ ddl mZ dd lmZmZmZ dd lmZ ed�\ZZZdZeej�G d d� d��Zd)dd�Zejdejdej dej!dej"dej#dej$dej%dej&dej'dej(dej)dej*dej+dej,d ej-d!ej.d"ej/d#ej0d$ej1d%ej2d&ej3d'ej4d(iZ5dS )*z> Base functionality useful to various parts of Twisted Names. � )�division�absolute_importN)�implementer)�dns)�DNSFormatError�DNSServerError�DNSNameError)�DNSNotImplementedError�DNSQueryRefusedError)�DNSUnknownError)�defer�error� interfaces)�Logger� )� r r c @ sV e Zd ZdZe� Zejeej e ejeej eejeiZdZdd� Zdd� Zd>dd�Zd d � Zd?dd�Zd@d d�ZdAdd�ZdBdd�ZdCdd�ZdDdd�ZdEdd�ZdFdd�ZdGdd�ZdHdd�Z dIdd �Z!dJd!d"�Z"dKd#d$�Z#dLd%d&�Z$dMd'd(�Z%dNd)d*�Z&dOd+d,�Z'dPd-d.�Z(dQd/d0�Z)dRd1d2�Z*dSd3d4�Z+dTd5d6�Z,dUd7d8�Z-dVd:d;�Z.d<d=� Z/dS )W�ResolverBaseaN L{ResolverBase} is a base class for implementations of L{interfaces.IResolver} which deals with a lot of the boilerplate of implementing all of the lookup methods. @cvar _errormap: A C{dict} mapping DNS protocol failure response codes to exception classes which will be used to represent those failures. Nc C s, i | _ t �� D ]\}}t| |�| j |<