Files
ServerSync/lib/paramiko/__pycache__/util.cpython-314.pyc

87 lines
13 KiB
Plaintext
Raw Normal View History

2026-02-12 02:28:23 +02:00
+
u<10>i%<00><00>n<00>Rt^RIt^RIt^RIt^RIt^RIt^RIHtHtH t H
t
H t H t ^RI HtRRltRRltRRltRtRtR tR
tR tR tR tRtRt]P6!4s^s]P<!4sRt ]3Rlt!!RR4t"]"!4t#Rt$Rt%!RR4t&Rt'Rt(RRlt)RRlt*R#) z0
Useful functions used by the rest of paramiko.
N)<06>DEBUG<55> zero_byte<74> xffffffff<66>max_byte<74>byte_ord<72>byte_chr)<01> SSHConfigc <04>
<00>^p^pV'g*\V4^8<>d\V^,4^<5E>8<EFBFBD>d^p\V4^,'d<\pV'd\pV^\V4^,,
,V,p\ ^\V4^4F8pV^ ,\
P !RWV^,4^,,pK: V'd!V^^\V4,,,pV#)zPturns a normalized byte string into a long-int
(adapted from Crypto.Util.number)<29>>I)<07>lenrrr<00>range<67>struct<63>unpack)<06>s<>always_positive<76>out<75>negative<76>filler<65>is&& <20>4/tmp/pip-target-zhdecbcm/lib/python/paramiko/util.py<70> inflate_longr)s<><00><00> <0C>C<EFBFBD><10>H<EFBFBD> <1A><03>A<EFBFBD><06><11>
<EFBFBD><18>!<21>A<EFBFBD>$<24><1E>4<EFBFBD>1G<31><14><08>
<EFBFBD>1<EFBFBD>v<EFBFBD><01>z<EFBFBD>z<EFBFBD><1A><06> <13><1D>F<EFBFBD> <13>a<EFBFBD>#<23>a<EFBFBD>&<26>1<EFBFBD>*<2A>n<EFBFBD> %<25><01> )<29><01> <12>1<EFBFBD>c<EFBFBD>!<21>f<EFBFBD>a<EFBFBD> <20><01><12>b<EFBFBD>y<EFBFBD>F<EFBFBD>M<EFBFBD>M<EFBFBD>$<24><01>a<EFBFBD>!<21>e<EFBFBD> <0C>=<3D>a<EFBFBD>@<40>@<40><03>!<21><0F> <0B>q<EFBFBD>Q<EFBFBD><13>Q<EFBFBD><16>Z<EFBFBD> <20> <20><03> <0E>J<EFBFBD>c<04>6<00>\4p\V4pV^8wd<VR8wd5\P!RV\,4V,pV^ ,pKB\ V4F3pV^8XdV^,^8wdM3VR8XgK#V^,^<5E>8wgK3M RpV^8Xd\ pM\pW#^,RpV'dWV^8Xd%\V^,4^<5E>8<EFBFBD>d\ V,pVR8Xd%\V^,4^<5E>8d\V,pV#)zPturns a long-int into a normalized byte string
(adapted from Crypto.Util.number)r
N<><4E><EFBFBD><EFBFBD><EFBFBD>)<01>) <09>bytes<65>intr <00>packr<00> enumeraterrr)<04>n<>add_sign_paddingrrs&& r<00> deflate_longr!>s<><00><00> <0E><07>A<EFBFBD> <0B>A<EFBFBD><06>A<EFBFBD> <0C><01>6<EFBFBD><01>R<EFBFBD><07> <12>K<EFBFBD>K<EFBFBD><04>a<EFBFBD>)<29>m<EFBFBD> ,<2C>q<EFBFBD> 0<><01> <09>b<EFBFBD><08><01> <16>q<EFBFBD>\<5C><01> <0A><11>F<EFBFBD><11>1<EFBFBD><14><11><19> <11> <0A><12>G<EFBFBD>!<21>A<EFBFBD>$<24>$<24>,<2C> <11> <1A> <11><01> <0C><01>6<EFBFBD><19>A<EFBFBD><18>A<EFBFBD> <09>A<EFBFBD>$<24>&<26> <09>A<EFBFBD><17> <0A><11>F<EFBFBD><18>!<21>A<EFBFBD>$<24><1E>4<EFBFBD>/<2F><19>A<EFBFBD> <0A>A<EFBFBD> <0A><12>G<EFBFBD>(<28>1<EFBFBD>Q<EFBFBD>4<EFBFBD>.<2E>4<EFBFBD>/<2F><18>1<EFBFBD> <0C>A<EFBFBD> <0C>Hrc<00>&<00>^p.p\V4V^,8<>d/VP\WV^,44V^, pKEV\V48dVP\WR44VUu.uF qAV,NK up#uupi)rN)r <00>append<6E>format_binary_line)<05>data<74>prefix<69>xr<00>lines&& r<00> format_binaryr)]s}<00><00> <09>A<EFBFBD>
<0C>C<EFBFBD>
<0A>d<EFBFBD>)<29>a<EFBFBD>"<22>f<EFBFBD>
<1C> <0B>
<EFBFBD>
<EFBFBD>%<25>d<EFBFBD>q<EFBFBD>2<EFBFBD>v<EFBFBD>&6<>7<>8<> <09>R<EFBFBD><07><01><08>3<EFBFBD>t<EFBFBD>9<EFBFBD>}<7D> <0B>
<EFBFBD>
<EFBFBD>%<25>d<EFBFBD>2<EFBFBD>h<EFBFBD>/<2F>0<>&)<29> *<2A>c<EFBFBD>d<EFBFBD>T<EFBFBD>M<EFBFBD>M<EFBFBD>c<EFBFBD> *<2A>*<2A><> *s<00>:Bc
<00>X<00>RPVUu.uFpRP\V44NK up4pRPVUu.uF;pRP\V44\V4^?,^_,,NK= up4pRPW#4#uupiuupi)<05> z{:02X}<7D>z.{:c}..z {:50s} {})<03>join<69>formatr)r%<00>c<>left<66>rights& rr$r$hs<><00><00> <0E>8<EFBFBD>8<EFBFBD>4<EFBFBD>@<40>4<EFBFBD>a<EFBFBD>X<EFBFBD>_<EFBFBD>_<EFBFBD>X<EFBFBD>a<EFBFBD>[<5B>1<>4<EFBFBD>@<40> A<>D<EFBFBD> <0E>G<EFBFBD>G<EFBFBD>JN<4A>O<>$<24>Q<EFBFBD><19> <19> <19>(<28>1<EFBFBD>+<2B> &<26><08><11> <0B>b<EFBFBD>(8<>R<EFBFBD>'?<3F> @<40> @<40>$<24>O<> <06>E<EFBFBD> <17> <1D> <1D>d<EFBFBD> *<2A>*<2A><> A<01><>Os <00>#B"<08> AB'c<00><><00>RpVFUp\V4p^ Tu;8:d^8:dMMV\V4, pK4V\RPV44, pKW V#)rz%{:02X})rr<00>br.)rrr/rs& r<00> safe_stringr4psT<00><00>
<0A>C<EFBFBD> <0E><01> <14>Q<EFBFBD>K<EFBFBD><01> <0A><11>><3E>c<EFBFBD>><3E> <0F>8<EFBFBD>A<EFBFBD>;<3B> <1E>C<EFBFBD> <0F>1<EFBFBD>Y<EFBFBD>%<25>%<25>a<EFBFBD>(<28>)<29> )<29>C<EFBFBD> <0F> <0F>Jrc<00><00>VP4# \dc\TR4p\T^,4pT^8Xd^#\ T4^,pT^<5E>,'gT^,pT^,pK#Tu#i;i<01>F)<05>
bit_length<EFBFBD>AttributeErrorr!rr )r<00>norm<72>hbyte<74>bitlens& rr7r7{ss<00><00> <16><10>|<7C>|<7C>~<7E><1D><> <19> <16><1B>A<EFBFBD>u<EFBFBD>%<25><04><18><14>a<EFBFBD><17>!<21><05> <10>A<EFBFBD>:<3A><14><14>T<EFBFBD><19>Q<EFBFBD><1D><06><18>4<EFBFBD><<3C><<3C> <11>a<EFBFBD>K<EFBFBD>E<EFBFBD> <12>a<EFBFBD>K<EFBFBD>F<EFBFBD><15> <0A> <16>s<00><00>0A?<03> A?<03>&A?<03>>A?c<00><><00>RP\P!\P!4!4P R4#)r,<00>
)r-<00> traceback<63>format_exception<6F>sys<79>exc_info<66>split<69>rr<00>
tb_stringsrD<00>s-<00><00> <0A>7<EFBFBD>7<EFBFBD>9<EFBFBD>-<2D>-<2D>s<EFBFBD>|<7C>|<7C>~<7E>><3E> ?<3F> E<> E<>d<EFBFBD> K<>Krc<04><><00>\4p\4p\V4^8<>d
VR,pV^8<>d<>V!4p\V4^8<>dVPV4VP\V44VPV4VP 4p\ V\V44pWERV, pW7,pK<>V#)a<>
Given a password, passphrase, or other human-source key, scramble it
through a secure hash into some keyworthy bytes. This specific algorithm
is used for encrypting/decrypting private key files.
:param function hash_alg: A function which creates a new hash object, such
as ``hashlib.sha256``.
:param salt: data to salt the hash with.
:type bytes salt: Hash salt bytes.
:param str key: human-entered password or passphrase.
:param int nbytes: number of bytes to generate.
:return: Key data, as `bytes`.
:N<>NN)rr <00>updater3<00>digest<73>min)<08>hash_alg<6C>salt<6C>key<65>nbytes<65>keydatarH<00>hash_obj<62>sizes&&&& r<00>generate_key_bytesrQ<00>s<><00><00><14>g<EFBFBD>G<EFBFBD> <12>W<EFBFBD>F<EFBFBD>
<EFBFBD>4<EFBFBD>y<EFBFBD>1<EFBFBD>}<7D><13>B<EFBFBD>x<EFBFBD><04>
<10>1<EFBFBD>*<2A><1B>:<3A><08> <0E>v<EFBFBD>;<3B><11>?<3F> <14>O<EFBFBD>O<EFBFBD>F<EFBFBD> #<23><10><0F><0F><01>#<23><06><1F><10><0F><0F><04><1D><19><1F><1F>"<22><06><12>6<EFBFBD>3<EFBFBD>v<EFBFBD>;<3B>'<27><04><0F>%<25>4<EFBFBD>=<3D> <20><07><0E><0E><06> <12>Nrc<04><00>^RIHpV!V4#)a&
Read a file of known SSH host keys, in the format used by openssh, and
return a compound dict of ``hostname -> keytype ->`` `PKey
<paramiko.pkey.PKey>`. The hostname may be an IP address or DNS name.
This type of file unfortunately doesn't exist on Windows, but on posix,
it will usually be stored in ``os.path.expanduser("~/.ssh/known_hosts")``.
Since 1.5.3, this is just a wrapper around `.HostKeys`.
:param str filename: name of the file to read host keys from
:return:
nested dict of `.PKey` objects, indexed by hostname and then keytype
)<01>HostKeys)<02>paramiko.hostkeysrS)<02>filenamerSs& r<00>load_host_keysrV<00>s<00><00>+<2B> <13>H<EFBFBD> <1D>rc<04><<00>\4pVPV4V#)z<>
Provided only as a backward-compatible wrapper around `.SSHConfig`.
.. deprecated:: 2.7
Use `SSHConfig.from_file` instead.
)r<00>parse)<02>file_obj<62>configs& r<00>parse_ssh_configr[<00>s<00><00><17>[<5B>F<EFBFBD>
<EFBFBD>L<EFBFBD>L<EFBFBD><18><1A> <11>Mrc<04>$<00>VPV4#)zE
Provided only as a backward-compatible wrapper around `.SSHConfig`.
)<01>lookup)<02>hostnamerZs&&r<00>lookup_ssh_host_configr_<00>s<00><00> <12>=<3D>=<3D><18> "<22>"rc<00><><00>^^TrCp^^TrvpV^8<>d8WG,pYRWX,,
rRYcWh,,
rcYtWx,,
rtK>V^8d W1, pV#)<01>rC) r'<00>m<>u1<75>u2<75>u3<75>v1<76>v2<76>v3<76>qs && r<00> mod_inverserj<00>sZ<00><00><12>A<EFBFBD>q<EFBFBD>B<EFBFBD>B<EFBFBD><12>A<EFBFBD>q<EFBFBD>B<EFBFBD>B<EFBFBD>
<0C>q<EFBFBD>&<26> <0E>H<EFBFBD><01><13>"<22>&<26>[<5B>B<EFBFBD><13>"<22>&<26>[<5B>B<EFBFBD><13>"<22>&<26>[<5B>B<EFBFBD> <09>A<EFBFBD>v<EFBFBD>
<EFBFBD><07><02> <0A>Irc<00><><00>\P# \d[\;_uu_4\^, s\\nRRR4M +'giM;i\Pu#i;i)raN)<05>_g_thread_data<74>idr8<00>_g_thread_lock<63>_g_thread_counterrCrr<00> get_thread_idrp<00>sT<00><00>!<21><1D> <20> <20> <20><> <19>!<21> <1B>^<5E> <1D><11> "<22> <1D> 1<>N<EFBFBD> <1D><1C>^<5E>^<5E>^<5E><><1E> <20> <20> <20> !<21>s&<00><00>A7<03>A<07> A7<03> A! <0B>A7<03>6A7c<04>T<00>\P!R4p\VP4^8<>dR#VP V4\ VR4p\P !V4pRpVR, pVP\P!VR44VPV4R#)zGsend paramiko logs to a logfile,
if they're not already going somewhere<72>paramikoN<6F>az>%(levelname)-.3s [%(asctime)s.%(msecs)03d] thr=%(_threadid)-3dz %(name)s: %(message)sz%Y%m%d-%H:%M:%S)
<EFBFBD>logging<6E> getLoggerr <00>handlers<72>setLevel<65>open<65> StreamHandler<65> setFormatter<65> Formatter<65>
addHandler)rU<00>level<65>logger<65>f<>handler<65>frms&& r<00> log_to_filer<65><00>s<><00><00><15> <1E> <1E>z<EFBFBD> *<2A>F<EFBFBD>
<EFBFBD>6<EFBFBD>?<3F>?<3F><1B>a<EFBFBD><1F><0E>
<EFBFBD>O<EFBFBD>O<EFBFBD>E<EFBFBD><1A> <0C>X<EFBFBD>s<EFBFBD><1B>A<EFBFBD><15>#<23>#<23>A<EFBFBD>&<26>G<EFBFBD>
J<EFBFBD>C<EFBFBD><07> #<23>#<23>C<EFBFBD> <0B><18><18><17>*<2A>*<2A>3<EFBFBD>0A<30>B<>C<>
<EFBFBD><15><15>g<EFBFBD>rc<00>&a<00>]tRtRtoRtRtVtR#)<05>PFilteric<08>$<00>\4VnR#<00>T)rp<00> _threadid)<02>self<6C>records&&r<00>filter<65>PFilter.filters<00><00>(<28>?<3F><06><18>rrCN)<07>__name__<5F>
__module__<EFBFBD> __qualname__<5F>__firstlineno__r<5F><00>__static_attributes__<5F>__classdictcell__<5F><01> __classdict__s@rr<>r<>s<00><><00><00><14>rr<>c<00>\<00>\P!V4pVP\4V#<00>N)rtru<00> addFilter<65>_pfilter)<02>namer~s& r<00>
get_loggerr<EFBFBD> s%<00><00> <14> <1E> <1E>t<EFBFBD> $<24>F<EFBFBD>
<EFBFBD><14><14>X<EFBFBD><1E> <11>Mrc<00><><00>\V4\V48wdR#^p\\V44F1pV\W,4\W,4, ,pK3 V^8H#r6)r r r)rsr3<00>resrs&& r<00>constant_time_bytes_eqr<71>sP<00><00>
<EFBFBD>1<EFBFBD>v<EFBFBD><13>Q<EFBFBD><16><17><14>
<0B>C<EFBFBD> <12>3<EFBFBD>q<EFBFBD>6<EFBFBD>]<5D><01> <0B>x<EFBFBD><01><04>~<7E><08><11><14><0E>.<2E>.<2E><03><1B> <0E>!<21>8<EFBFBD>Orc<00>,a<00>]tRtRtoRtRtRtVtR#)<06>ClosingContextManageric<08><00>V#r<>rC)r<>s&r<00> __enter__<5F>ClosingContextManager.__enter__s<00><00><13> rc<08>&<00>VP4R#r<>)<01>close)r<><00>type<70>valuer>s&&&&r<00>__exit__<5F>ClosingContextManager.__exit__ s <00><00> <0C>
<EFBFBD>
<EFBFBD> rrCN)r<>r<>r<>r<>r<>r<>r<>r<>r<>s@rr<>r<>s<00><><00><00><14><15>rr<>c<00>,<00>\V\W44#r<>)<02>maxrI)<03>minimum<75>val<61>maximums&&&r<00> clamp_valuer<65>$s<00><00> <0E>w<EFBFBD><03>C<EFBFBD>)<29> *<2A>*rc<04><><00>\V4# \d*TP4u# \dTuu#i;ii;i)z2
Coerce to bytes if possible or return unchanged.
)r3<00> TypeError<6F>asbytesr8)rs&rr<>r<>(sJ<00><00><15><11><11>t<EFBFBD> <0B><> <14> <15> <15><15>9<EFBFBD>9<EFBFBD>;<3B> <1E><><1D> <15><15>H<EFBFBD>  <15><> <15>s$<00>
<00> A<03>+<02>A<03> =<05>A<03>=<05>Ac<04><><00>\V\4'dV#\V\4'dVPV4#\ R\ V4 24h)zcast unicode or bytes to bytes<65>Expected unicode or bytes, got )<06>
isinstancer<00>str<74>encoder<65>r<><00>r<00>encodings&&rr3r3>sG<00><00><11>!<21>U<EFBFBD><1B><1B><10><08> <13>A<EFBFBD>s<EFBFBD> <1B> <1B><10>x<EFBFBD>x<EFBFBD><08>!<21>!<21><17>9<>$<24>q<EFBFBD>'<27><19>C<>D<>Drc<04><><00>\V\4'dVPV4#\V\4'dV#\ R\ V4 24h)z cast bytes or unicode to unicoder<65>)r<>r<00>decoder<65>r<>r<>r<>s&&r<00>ur<75>IsG<00><00><11>!<21>U<EFBFBD><1B><1B><10>x<EFBFBD>x<EFBFBD><08>!<21>!<21> <13>A<EFBFBD>s<EFBFBD> <1B> <1B><10><08><17>9<>$<24>q<EFBFBD>'<27><19>C<>D<>Drr6r<>)r,)<01>utf8)+<2B>__doc__r@r r><00> threadingrt<00>paramiko.commonrrrrrr<00>paramiko.configrrr!r)r$r4r7rDrQrVr[r_rj<00>localrlro<00>Lockrnrpr<>r<>r<>r<>r<>r<>r<>r<>r3r<>rCrr<00><module>r<>s<><00><01>&<04>
 <0B> <0A><10><10><0E><02><02>&<26><0F>* <0A>>+<2B>+<2B><0F> <16>L<01><13>><1E>( <12>#<23> <0E><1B><1F><1F>"<22><0E><15><11><1A><1E><1E>!<21><0E>!<21>!&<26> <1F> <14><14> <13>9<EFBFBD><08><12> <14><15><15>+<2B><15>,E<01>Er