Current File : //usr/lib64/python2.7/site-packages/dns/e164.pyc |
�
���Oc @ sg d Z d d l Z d d l Z d d l Z e j j d � Z e d � Z e e d � Z
d d � Z d S( s� DNS E.164 helpers
@var public_enum_domain: The DNS public ENUM domain, e164.arpa.
@type public_enum_domain: dns.name.Name object
i����Ns
e164.arpa.c C sN g | D] } | j � r | ^ q } | j � t j j d j | � d | �S( su Convert an E.164 number in textual form into a Name object whose
value is the ENUM domain name for that number.
@param text: an E.164 number in textual form.
@type text: str
@param origin: The domain in which the number should be constructed.
The default is e164.arpa.
@type origin: dns.name.Name object or None
@rtype: dns.name.Name object
t .t origin( t isdigitt reverset dnst namet from_textt join( t textR t dt parts( ( s. /usr/lib64/python2.7/site-packages/dns/e164.pyt from_e164 s
%
c C s� | d k r | j | � } n g | j D]* } | j � r( t | � d k r( | ^ q( } t | � t | j � k r� t j j d � � n | j � d j | � } | r� d | } n | S( s� Convert an ENUM domain name into an E.164 number.
@param name: the ENUM domain name.
@type name: dns.name.Name object.
@param origin: A domain containing the ENUM domain name. The
name is relativized to this domain before being converted to text.
@type origin: dns.name.Name object or None
@param want_plus_prefix: if True, add a '+' to the beginning of the
returned number.
@rtype: str
i s$ non-digit labels in ENUM domain namet t +N(
t Nonet
relativizet labelsR t lenR t exceptiont SyntaxErrorR R ( R R t want_plus_prefixR t dlabelsR ( ( s. /usr/lib64/python2.7/site-packages/dns/e164.pyt to_e164* s :
c C s� | d k r t j j � } n x{ | D]s } t | t t f � rU t j j | � } n t j j
| | � } y | j | d � SWq% t j j k
r� q% Xq% Wt j j � d S( s� Look for NAPTR RRs for the specified number in the specified domains.
e.g. lookup('16505551212', ['e164.dnspython.org.', 'e164.arpa.'])
t NAPTRN(
R R t resolvert get_default_resolvert
isinstancet strt unicodeR R t e164R t queryt NXDOMAIN( t numbert domainsR t domaint qname( ( s. /usr/lib64/python2.7/site-packages/dns/e164.pyR @ s
(
t __doc__t
dns.exceptionR t dns.namet dns.resolverR R t public_enum_domainR t TrueR R R ( ( ( s. /usr/lib64/python2.7/site-packages/dns/e164.pyt <module> s