§
    HºiZ
  ã                   óº   — d Z ddlZddlmZmZ ddlZddlZdeeef         deej	        j
        ef         fd„Zdeej	        j
        ef         deeef         fd„ZdS )	zA place to store TSIG keys.é    N)ÚAnyÚDictÚtextringÚreturnc                 óJ  — i }|                       ¦   «         D ]‹\  }}t          j                             |¦  «        }t	          |t
          ¦  «        r)t          j                             ||¦  «        j        ||<   Œb|\  }}t          j                             |||¦  «        ||<   ŒŒ|S )a7  Convert a dictionary containing (textual DNS name, base64 secret)
    pairs into a binary keyring which has (dns.name.Name, bytes) pairs, or
    a dictionary containing (textual DNS name, (algorithm, base64 secret))
    pairs into a binary keyring which has (dns.name.Name, dns.tsig.Key) pairs.
    @rtype: dict)	ÚitemsÚdnsÚnameÚ	from_textÚ
isinstanceÚstrÚtsigÚKeyÚsecret)r   Úkeyringr
   ÚvalueÚknameÚ	algorithmr   s          úT/home/mmwave/public_html/mmwave/venv/lib/python3.11/site-packages/dns/tsigkeyring.pyr   r      sš   € ð )+€GØ—~’~Ñ'Ô'ð Dð D‰ˆˆeÝ”×"Ò" 4Ñ(Ô(ˆÝ�e�SÑ!Ô!ð 	DÝ œXŸ\š\¨%°Ñ7Ô7Ô>ˆG�E‰NˆNà"'ÑˆY˜Ý œXŸ\š\¨%°¸ÑCÔCˆG�E‰NˆNØ€Nó    r   c                 ón  — i }d„ }|                       ¦   «         D ]š\  }}|                     ¦   «         }t          |t          ¦  «        r ||¦  «        ||<   Œ=t          |j        t          ¦  «        r ||j        ¦  «        }nt          |j        ¦  «        }|j                             ¦   «         |f||<   Œ›|S )a;  Convert a dictionary containing (dns.name.Name, dns.tsig.Key) pairs
    into a text keyring which has (textual DNS name, (textual algorithm,
    base64 secret)) pairs, or a dictionary containing (dns.name.Name, bytes)
    pairs into a text keyring which has (textual DNS name, base64 secret) pairs.
    @rtype: dictc                 ór   — t          j        | ¦  «                             ¦   «                              ¦   «         S )N)Úbase64ÚencodebytesÚdecodeÚrstrip)r   s    r   Ú	b64encodezto_text.<locals>.b64encode6   s+   € ÝÔ! &Ñ)Ô)×0Ò0Ñ2Ô2×9Ò9Ñ;Ô;Ð;r   )r   Úto_textr   Úbytesr   r   r   )r   r   r   r
   ÚkeyÚtnameÚtext_secrets          r   r   r   -   sÁ   € ð €Hð<ð <ð <ð —]’]‘_”_ð 
Eð 
E‰	ˆˆcØ—’‘”ˆÝ�c�5Ñ!Ô!ð 	EØ'˜i¨™nœnˆH�U‰OˆOå˜#œ*¥eÑ,Ô,ð .Ø'˜i¨¬
Ñ3Ô3��å! #¤*™oœo�à"œ}×4Ò4Ñ6Ô6¸ÐDˆH�U‰OˆOØ€Or   )Ú__doc__r   Útypingr   r   Údns.namer	   Údns.tsigr   r
   ÚNamer   r   © r   r   ú<module>r)      sº   ðð$ "Ð !à €€€Ø Ð Ð Ð Ð Ð Ð Ð à €€€Ø €€€ð˜˜S #˜Xœð ¨4°´´¸sÐ0BÔ+Cð ð ð ð ð$�T˜#œ(œ-¨Ð,Ô-ð °$°s¸C°x´.ð ð ð ð ð ð r   