Why Gemfury? Push, build, and install  RubyGems npm packages Python packages Maven artifacts PHP packages Go Modules Debian packages RPM packages NuGet packages

Repository URL to install this package:

Details    
Size: Mime:
ó
®‹EYc@sdZddlZddlZyddlmZWnek
rKdZnXddlm	Z	ddl
mZddlm
ZmZmZmZmZmZmZmZmZdZeZ dZ!dZ"d	ed
Z#de$fd„ƒYZ%d
e%fd„ƒYZ&de&fd„ƒYZ'de%fd„ƒYZ(de%fd„ƒYZ)de%fd„ƒYZ*e%Z+ddj,dgdƒdddj,dgdƒdddj,dgdƒdddj,dgdƒdddj,dgdƒdddj,d gd	ƒdddj,d gd	ƒdd!d"j,d#gd$ƒd%d!d"j,d#gd&ƒd%f	Z-ge-D]Z.ej/e.ej0ƒ^q\Z-d'„Z1d(„Z2dd)„Z4d*„Z5d+„Z6dd,„Z
dd-„Zdd.„Zdd/„Zdd0„Zdd1„Zdd2„Zd3„Zd4„ZdS(5s›
IEEE 48-bit EUI (MAC address) logic.

Supports numerous MAC string formats including Cisco's triple hextet as well
as bare MACs containing no delimiters.
iÿÿÿÿN(tAF_LINKi0(tAddrFormatError(t_is_str(	tvalid_wordstint_to_wordstwords_to_intt
valid_bitstbits_to_inttint_to_bitst	valid_bint
int_to_bint
bin_to_inttMACiit	mac_eui48cBs>eZdZdZeeZdedZdZdZdZ	RS(s%A standard IEEE EUI-48 dialect class.iiit-s%.2Xi(
t__name__t
__module__t__doc__t	word_sizetwidtht	num_wordstmax_wordtword_septword_fmtt	word_base(((sK/home/tvault/.virtenv/lib/python2.7/site-packages/netaddr/strategy/eui48.pyR
1s
tmac_unixcBs0eZdZdZeeZdZdZdZRS(s'A UNIX-style MAC address dialect class.it:s%xi(	RRRRRRRRR(((sK/home/tvault/.virtenv/lib/python2.7/site-packages/netaddr/strategy/eui48.pyRFs
tmac_unix_expandedcBseZdZdZRS(s;A UNIX-style MAC address dialect class with leading zeroes.s%.2x(RRRR(((sK/home/tvault/.virtenv/lib/python2.7/site-packages/netaddr/strategy/eui48.pyROst	mac_ciscocBs0eZdZdZeeZdZdZdZRS(s2A Cisco 'triple hextet' MAC address dialect class.it.s%.4x(	RRRRRRRRR(((sK/home/tvault/.virtenv/lib/python2.7/site-packages/netaddr/strategy/eui48.pyRTs
tmac_barecBs0eZdZdZeeZdZdZdZRS(s1A bare (no delimiters) MAC address dialect class.i0ts%.12Xi(	RRRRRRRRR(((sK/home/tvault/.virtenv/lib/python2.7/site-packages/netaddr/strategy/eui48.pyR]s
t	mac_pgsqlcBs0eZdZdZeeZdZdZdZRS(s@A PostgreSQL style (2 x 24-bit words) MAC address dialect class.iRs%.6xi(	RRRRRRRRR(((sK/home/tvault/.virtenv/lib/python2.7/site-packages/netaddr/strategy/eui48.pyR fs
t^Rs([0-9A-F]{1,2})it$Rs([0-9A-F]{1,4})is\.s([0-9A-F]{5,6})s^(Rs[0-9A-F]is)$icCsRxKtD]C}y)|j|ƒ}t|ƒdkr5tSWqtk
rIqXqWtS(s
    :param addr: An IEEE EUI-48 (MAC) address in string form.

    :return: ``True`` if MAC address string is valid, ``False`` otherwise.
    i(tRE_MAC_FORMATStfindalltlentTruet	TypeErrortFalse(taddrtregexptmatch_result((sK/home/tvault/.virtenv/lib/python2.7/site-packages/netaddr/strategy/eui48.pyt	valid_strŠs

cCsãg}t|ƒrt}xftD]^}|j|ƒ}t|ƒdkrt}t|dtƒrl|d}n
|df}PqqW|s­td|ƒ‚q­nt	d|ƒ‚d}t|ƒdkrtdjg|D]}dt|dƒ^qՃdƒ}nßt|ƒdkrMtdjg|D]}d	t|dƒ^q"ƒdƒ}n’t|ƒd
krštdjg|D]}dt|dƒ^qoƒdƒ}nEt|ƒdkrÏtd
t|ddƒdƒ}ntd|ƒ‚|S(sç
    :param addr: An IEEE EUI-48 (MAC) address in string form.

    :return: An unsigned integer that is equivalent to value represented
        by EUI-48/MAC string address formatted according to the dialect
        settings.
    is!%r is not a supported MAC format!s%r is not str() or unicode()!iRs%.2xiis%.4xis%.6xis%012xs(unexpected word count in MAC address %r!N(
RR(R#R$R%R&t
isinstancettupleRR'tNonetinttjoin(R)twordstfound_matchR*R+tint_valtw((sK/home/tvault/.virtenv/lib/python2.7/site-packages/netaddr/strategy/eui48.pyt
str_to_int›s2


;;;#cCsZ|dkrt}nt||ƒ}g|D]}|j|^q+}|jj|ƒ}|S(s
    :param int_val: An unsigned integer.

    :param dialect: (optional) a Python class defining formatting options.

    :return: An IEEE EUI-48 (MAC) address string that is equivalent to
        unsigned integer formatted according to the dialect settings.
    N(R/R
RRRR1(R4tdialectR2tittokensR)((sK/home/tvault/.virtenv/lib/python2.7/site-packages/netaddr/strategy/eui48.pyt
int_to_strÈs		 cCstjd|d?|d@ƒS(s•
    :param int_val: the integer to be packed.

    :return: a packed string that is equivalent to value represented by an
    unsigned integer.
    s>HIi Iÿÿÿÿ(t_structtpack(R4((sK/home/tvault/.virtenv/lib/python2.7/site-packages/netaddr/strategy/eui48.pyt
int_to_packedÛscCscttjd|ƒƒ}d}x>tt|ƒƒD]*\}}|}|d|>}||B}q1W|S(s
    :param packed_int: a packed string containing an unsigned integer.
        It is assumed that string is packed in network byte order.

    :return: An unsigned integer equivalent to value of network address
        represented by packed binary string.
    s>6Bii(tlistR;tunpackt	enumeratetreversed(t
packed_intR2R4R8tnumtword((sK/home/tvault/.virtenv/lib/python2.7/site-packages/netaddr/strategy/eui48.pyt
packed_to_intåscCs+|dkrt}nt||j|jƒS(N(R/tDEFAULT_DIALECTt_valid_wordsRR(R2R7((sK/home/tvault/.virtenv/lib/python2.7/site-packages/netaddr/strategy/eui48.pyRøs	cCs+|dkrt}nt||j|jƒS(N(R/RFt
_int_to_wordsRR(R4R7((sK/home/tvault/.virtenv/lib/python2.7/site-packages/netaddr/strategy/eui48.pyRþs	cCs+|dkrt}nt||j|jƒS(N(R/RFt
_words_to_intRR(R2R7((sK/home/tvault/.virtenv/lib/python2.7/site-packages/netaddr/strategy/eui48.pyRs	cCs(|dkrt}nt|t|jƒS(N(R/RFt_valid_bitsRR(tbitsR7((sK/home/tvault/.virtenv/lib/python2.7/site-packages/netaddr/strategy/eui48.pyR
s	cCs(|dkrt}nt|t|jƒS(N(R/RFt_bits_to_intRR(RKR7((sK/home/tvault/.virtenv/lib/python2.7/site-packages/netaddr/strategy/eui48.pyRs	cCs1|dkrt}nt||j|j|jƒS(N(R/RFt_int_to_bitsRRR(R4R7((sK/home/tvault/.virtenv/lib/python2.7/site-packages/netaddr/strategy/eui48.pyRs	cCs"|dkrt}nt|tƒS(N(R/RFt
_valid_binR(tbin_valR7((sK/home/tvault/.virtenv/lib/python2.7/site-packages/netaddr/strategy/eui48.pyR	s	cCs
t|tƒS(N(t_int_to_binR(R4((sK/home/tvault/.virtenv/lib/python2.7/site-packages/netaddr/strategy/eui48.pyR
#scCs
t|tƒS(N(t_bin_to_intR(RO((sK/home/tvault/.virtenv/lib/python2.7/site-packages/netaddr/strategy/eui48.pyR's(7RtstructR;tret_retsocketRtImportErrortnetaddr.coreRtnetaddr.compatRtnetaddr.strategyRRGRRHRRIRRJRRLRRMR	RNR
RPRRQRtfamilytfamily_nametversiontmax_inttobjectR
RRRRR RFR1R#t_tcompilet
IGNORECASER,R6R/R:R=RE(((sK/home/tvault/.virtenv/lib/python2.7/site-packages/netaddr/strategy/eui48.pyt<module>sZ

@				!(		-