g ddlZddlZddlZddlmZddlmZddlZddlZ ddl m Z ddl Z ddl mZ ddlZdZdej$ddzZd Zd Zd Zd Zd ZdZdZd ZdZdZd ZdZdZ dZ!Gdde"Z#Gdde#Z$Gdde#Z%Gdde#Z&e'xZ(Z)edddZ*dZ+e+drd Z,ne+d!rd"Z,nd#Z,[*[+d$Z-Gd%d&Z.d'Z/d(Z0Gd)d*Z1d+Z2e.e1fZ3Gd,d-Z4Gd.d/Z5Gd0d1Z6Gd2d3Z7Gd4d5Z8Gd6d7Z9dxZ:xZ;ZdKd:Z?d;Z@dMd<ZAGd=d>er ejneCZDGd?d@ZEGdAdBZFGdCdDeFZGGdEdFZHeHZIeJdGk(r{eHdHZK eLeKjje9eKZPePjePjddJePjdd ePD] ZTeLeT yy#e$rdZYwxYw#e#$rZOeLdIeOYdZO[OtdZO[OwwxYw#e#$rZOeLdIeOYdZO[OydZO[OwwxYw)NN)datetime)Decimal)expat)BytesIOcn|jdd}|jdd}|jddS)N&z&z>)replace)ss 4/opt/alt/python312/lib64/python3.12/xmlrpc/client.pyescapers3 #wA #vA 99S& ""z%d.%diiiDii ipiԁiCiBiiic&eZdZ ejZy)ErrorN)__name__ __module__ __qualname__object__str__rr rrs'nnGrrceZdZ dZdZy) ProtocolErrorcftj|||_||_||_||_yN)r__init__urlerrcodeerrmsgheaders)selfrrr r!s r rzProtocolError.__init__s* t   rc d|jjd|jd|jd|jd S)Nr  for :  r ) __class__rrrr r"s r __repr__zProtocolError.__repr__s.^^ $ $dhh dkk K rNrrrrr)rrr rrs+ rrceZdZ y) ResponseErrorN)rrrrrr r,r,s.rr,ceZdZ dZdZy)Faultc Jtj|||_||_yr)rr faultCode faultString)r"r0r1extras r rzFault.__init__s t"&rcjd|jjd|jd|jdS)Nr r&r%r )r'rr0r1r(s r r)zFault.__repr__s* $ 7 7 $0@0@B BrNr*rrr r.r.s-'Brr.cR tj|dk(S#t$rYywxYw)N0001F)_day0strftime ValueError)fmts r _tryr; s-~~c"f,, s  &&z%Yc$|jdSN%Y%m%dT%H:%M:%Sr8values r _iso8601_formatrBs~~/00rz%4Yc$|jdS)Nz%4Y%m%dT%H:%M:%Sr?r@s r rBrBs~~011rcB|jdjdS)Nr>)r8zfillr@s r rBrBs~~/066r::rct|tr t|St|ttj fs.|dk(rt j}t j |}d|ddzS)Nrz%04d%02d%02dT%02d:%02d:%02d) isinstancerrBtupletime struct_time localtimer@s r _strftimerNs]%"u%% eeT%5%56 7 A:IIKEu% (5!9 44rcXeZdZ ddZdZdZdZdZdZdZ dZ d Z d Z d Z d Zy )DateTimecTt|tr||_yt||_yr)rIstrrArN)r"rAs r rzDateTime.__init__.s eS !DJ"5)DJrclt|tr|j}|j}||fSt|tr|j}t |}||fSt|t r|j}|}||fSt |dr$|j}|j}||fS|}t}||fS)N timetuple) rIrPrArrBrRhasattrrTNotImplementedr"otherr os r make_comparablezDateTime.make_comparable4s eX & A A!t x ( A&A!t s # AA!t UK ( A!A!t AA!t rcP|j|\}}|turtS||kSrrZrVrWs r __lt__zDateTime.__lt__F-##E*1  ! !1u rcP|j|\}}|turtS||kSrr\rWs r __le__zDateTime.__le__L-##E*1  ! !Av rcP|j|\}}|turtS||kDSrr\rWs r __gt__zDateTime.__gt__Rr^rcP|j|\}}|turtS||k\Srr\rWs r __ge__zDateTime.__ge__XrarcP|j|\}}|turtS||k(Srr\rWs r __eq__zDateTime.__eq__^rarcBtj|jdSr=)rKstrptimerAr(s r rTzDateTime.timetupleds}}TZZ):;;rc|jSrr@r(s r rzDateTime.__str__ls zzrc`d|jj|jt|fzS)Nz<%s %r at %#x>)r'rrAidr(s r r)zDateTime.__repr__os&4>>#:#:DJJ4"QQQrc@t|j|_yr)rRstriprAr"datas r decodezDateTime.decodersY__& rc~|jd|j|j|jdyNzz )writerA)r"outs r encodezDateTime.encodeus, -. $** 12rN)r)rrrrrZr]r`rcrergrTrr)rqrvrrr rPrP(sD * $     <R'3rrPc<t}|j||Sr)rPrqrprAs r _datetimeryzs JE LL Lrc.tj|dSr=)rri)rps r _datetime_typer{s   T#4 55rc.eZdZ ddZdZdZdZdZy)BinaryNc| d}||_yt|ttfs"td|jj zt|}||_y)Nrz#expected bytes or bytearray, not %s)rIbytes bytearray TypeErrorr'rrpros r rzBinary.__init__sX <D  dUI$67 E $ 7 7!899;D rc.t|jdS)Nzlatin-1)rRrpr(s r rzBinary.__str__s499i((rcXt|tr |j}|j|k(Sr)rIr}rp)r"rXs r rgz Binary.__eq__s$ eV $JJEyyE!!rc8tj||_yr)base64 decodebytesrpros r rqz Binary.decodes&&t, rc|jdtj|j}|j|j d|jdyNz asciiz )rtr encodebytesrprq)r"ruencodeds r rvz Binary.encodesE %&$$TYY/ '..)* '(rr)rrrrrrgrqrvrrr r}r}s")" -)rr}c<t}|j||Sr)r}rqrxs r _binaryrs HE LL LrceZdZdZdZdZy) ExpatParserctjddx|_}||_|j|_|j |_|j|_ d}|j|dyr) r ParserCreate_parser_targetstartStartElementHandlerendEndElementHandlerrpCharacterDataHandlerxml)r"targetparserencodings r rzExpatParser.__init__sY % 2 24 >> v %+\\"#):: &,kk# 8T"rc<|jj|dyNF)rParseros r feedzExpatParser.feeds 4'rch |j}|`|`|jddy#t$rYywxYw)NrT)rrrAttributeError)r"rs r closezExpatParser.closes= $\\F dl LLd #    s % 11N)rrrrrrrrr rrs#($rrceZdZ ddZiZdZdZdZeeed<dZ e ee <dZ e ee <e Z dZeee<efd Zeee<d Zeee<eee<d Zeee<eee<efd Zeee<d Zeee<dZeee<eee<eed<y) MarshallerNc<i|_d|_||_||_yr)memorpr allow_none)r"rrs r rzMarshaller.__init__s    $rc>g}|j}|j}t|tr1|d||j|j d||dn0|d|D]}|d||||d|ddj |}|S) Nz )r0r1z z z z z )append_Marshaller__dumprIr.r0r1join)r"valuesrurtdumpvresults r dumpszMarshaller.dumpss {{ fe $ +  v//!'!3!35  ,  , k"Ql# -  rcf |jt|}||||y#t$rt|dst dt|zt|j D]5}||jj vs t dt|z|jd}YwxYw)N__dict__zcannot marshal %s objects_arbitrary_instance)dispatchtypeKeyErrorrUr__mro__keys)r"rArtftype_s r __dumpzMarshaller.__dumps 5 d5k*A $u 55*- ;d5k IJJe,,DMM..00#$?$u+$MNN-  34A 5s%A B0'B0/B0cB|js td|dy)Nz0cannot marshal None unless allow_none is enabledz)rrr"rArts r dump_nilzMarshaller.dump_nilsNO O %&rcD|d||xrdxsd|dy)Nz10z rrs r dump_boolzMarshaller.dump_bool s%  ! em"s# $%rc|tkDs |tkr td|d|tt ||dy)Nzint exceeds XML-RPC limitsz z )MAXINTMININT OverflowErrorrRintrs r dump_longzMarshaller.dump_long&s< 6>UV^ <= = n c#e*o  !rcF|d|t||dy)Nzz )reprrs r dump_doublezMarshaller.dump_double1s    d5k #$rc@|d||||dy)Nzz r)r"rArtrs r dump_unicodezMarshaller.dump_unicode7s    fUm #$rc||dtj|}||jd|dyr)rrrq)r"rArtrs r dump_byteszMarshaller.dump_bytes=s5 !"$$U+ gnnW%& #$rct|}||jvr tdd|j|<|j}|d|D] }||| |d|j|=y)Nz"cannot marshal recursive sequencesz z )rlrrr)r"rArtirrs r dump_arrayzMarshaller.dump_arrayEsh uI  >@A A ! {{ &'A EN )* IIaLrcvt|}||jvr tdd|j|<|j}|d|j D]J\}}|dt |t s td|d||z||||dL|d|j|=y)Nz%cannot marshal recursive dictionariesz z zdictionary key must be stringz%s z z )rlrrritemsrIrR)r"rArtrrrkrs r dump_structzMarshaller.dump_structSs uI  >CD D ! {{ !"KKMDAq , a% ?@@ %q 1 2 EN - " #$ IIaLrcF|d|t||dyrs)rNrs r dump_datetimezMarshaller.dump_datetimees! )* i -.rc|jtvr||_|j||`y|j |j |yr)r'WRAPPERSrtrvrrrs r dump_instancezMarshaller.dump_instanceks< ??h &DJ LL     U^^U 3rrr) rrrrrrrrrrboolrrdump_intrfloatrrrRrrrrrJlistrdictrrrrPr}rrr rrs% H6$'$HT$Z&HTN" HSMH%"HUO06%!HSM% !HUO$HY !HUOHTN/5 !HTN/'HX4'HX$HV'4H "#rrcjeZdZ d-dZdZdZdZdZdZdZ dZ iZ d Z e e d <d Z e e d <d Zee d<ee d<ee d<ee d<ee d<ee d<dZee d<ee d<dZee d<dZee d<ee d<dZee d<dZee d<d Zee d!<d"Zee d#<d$Zee d%<d&Zee d'<d(Zee d)<d*Zee d+<y,). Unmarshallercd|_g|_g|_g|_d|_d|_d|_|jj|_|xs||_||_ y)NFutf-8) _type_stack_marks_data_value _methodname _encodingr _use_datetime _use_bytes)r" use_datetimeuse_builtin_typess r rzUnmarshaller.__init__sY      kk(( .>,+rc|j |jr t|jdk(rtdi|jdt |jS)Nfaultrr)rrr,r.rrJr(s r rzUnmarshaller.closesK :: / ! :: )$++a.) )T[[!!rc|jSr)rr(s r getmethodnamezUnmarshaller.getmethodnamesrc||_yr)r)r"r standalones r rzUnmarshaller.xmls !rcd|vr|jdd}|dk(s|dk(r.|jjt|jg|_|j r||jvrtd|z|dk(|_y)N:arraystructzunknown tag %rrA) splitrrlenrrrrr,)r"tagattrss r rzUnmarshaller.startsx #:))C.$C '>SH_ KK  s4;;/ 0 ;;3dmm3 03 67 7g~ rc:|jj|yr)rr)r"texts r rpzUnmarshaller.datas $rc |j|}||dj|jS#t$r<d|vrYy |j|jdd}n#t$rYYywxYwYfwxYw)Nrrr)rrrrr)r"rrs r rzUnmarshaller.ends  c"Arwwtzz*++ #~ MM#))C."45    s33 A8!A%$A8% A2.A81A22A87A8c |j|}|||S#t$r<d|vrYy |j|jdd}n#t$rYYywxYwYMwxYw)Nrr)rrr)r"rrprs r end_dispatchzUnmarshaller.end_dispatchsu  c"At} #~ MM#))C."45    s2 A!A  A AAAAAc4|jdd|_yNr)rrros r end_nilzUnmarshaller.end_nils D rnilc|dk(r|jdd|_y|dk(r|jdd|_ytd)NrFrTzbad boolean valuer)rrrros r end_booleanzUnmarshaller.end_booleansJ 3; KK   S[ KK  /0 0rbooleancF|jt|d|_yr)rrrros r end_intzUnmarshaller.end_ints CI ri1i2i4i8r bigintegercF|jt|d|_yr)rrrros r end_doublezUnmarshaller.end_doubles E$K  rdoublercF|jt|d|_yr)rrrros r end_bigdecimalzUnmarshaller.end_bigdecimals GDM" r bigdecimalc|jr|j|j}|j|d|_yr)rrqrrros r end_stringzUnmarshaller.end_strings. >>;;t~~.D D rstringnamec|jj}|j|dg|j|dd|_yr)rpoprr)r"rpmarks r end_arrayzUnmarshaller.end_arrays7{{ "kk$%01 DE rrc|jj}i}|j|d}tdt |dD]}||dz|||<|g|j|dd|_y)Nrrr4)rrrrangerr)r"rpr rrrs r end_structzUnmarshaller.end_struct sl{{  DE"q#e*a(A"1Q3ZDqN)"V DE rrct}|j|jd|jr |j}|j |d|_y)Nrr)r}rqrvrrprrr"rprAs r end_base64zUnmarshaller.end_base64sA T[[)* ??JJE E rrct}|j||jr t|}|j |yr)rPrqrr{rr&s r end_dateTimezUnmarshaller.end_dateTime s4  T   "4(E ErzdateTime.iso8601c@|jr|j|yyr)rrros r end_valuezUnmarshaller.end_value(s ;; OOD ! rrAcd|_y)Nparamsrros r end_paramszUnmarshaller.end_params/s  rr-cd|_y)Nrr.ros r end_faultzUnmarshaller.end_fault3s  rrcn|jr|j|j}||_d|_y)N methodName)rrqrrros r end_methodNamezUnmarshaller.end_methodName7s* >>;;t~~.D! rr3NFF)rrrrrrrrrprrrrr rrrrr!r$r'r)r+r/r1r4rrr rrsa ," " '  ,  HHUO&HYHTNHTNHTNHTNHUO$H\$HX"HW,H\ $HX!HV "HW$HX$HX $0H  " "HW#HX!HW" ,H\rrceZdZdZdZdZy)_MultiCallMethodc ||_||_yr)_MultiCallMethod__call_list_MultiCallMethod__name)r" call_listrs r rz_MultiCallMethod.__init__Ds$ rcLt|j|jd|SN.)r7r9r:r"rs r __getattr__z_MultiCallMethod.__getattr__Gs 0 0T[[$2OPPrcR|jj|j|fyr)r9rr:r"argss r __call__z_MultiCallMethod.__call__Is d 34rNrrrrr@rDrrr r7r7AsQ5rr7ceZdZ dZdZy)MultiCallIteratorc||_yr)results)r"rIs r rzMultiCallIterator.__init__Ps  rc|j|}t|trt|d|dt|tr|dSt d)Nr0r1rz#unexpected type in multicall result)rIrIrr.rr9)r"ritems r __getitem__zMultiCallIterator.__getitem__SsO||A dD ![)4 +>? ? d #7NBC CrN)rrrrrLrrr rGrGLs,DrrGc&eZdZ dZdZdZdZy) MultiCallc ||_g|_yr)_MultiCall__server_MultiCall__call_list)r"servers r rzMultiCall.__init__ms rcJd|jjt|fzS)Nz <%s at %#x>)r'rrlr(s r r)zMultiCall.__repr__qs  7 7DBBBrc.t|j|Sr)r7rQr?s r r@zMultiCall.__getattr__ts 0 0$77rcg}|jD]\}}|j||dt|jjj |S)N)r3r-)rQrrGrPsystem multicall)r"marshalled_listrrCs r rDzMultiCall.__call__wsP**JD$  " "4D#I J+!!5!5!?!?!PQQrN)rrrrr)r@rDrrr rNrN\s C8RrrNc* tr\trV|rt}tj}n|r t}t }n t }t }tdd||t}t|}||fSt||}trt|}||fSt|}||fS)NTFrr) FastParserFastUnmarshallerr{rrrryr.rr)rr mkdatetimemkbytesrrs r getparserr_s & 'J((G 'JG"JG!$w EJF# 6> !(F 6>rc. t|trd}n|rt|tr|sd}tr t|}n t ||}|j |}|dk7rdt |z}nd}|r |d|d|df}n |r|d|d f}n|Sd j|S) Nr4rz$ z z z z z z r)rIr.rJFastMarshallerrrrRr)r- methodnamemethodresponserrmrp xmlheaders r rrs,&%  Jvu5  8 $ x , 776?D7;c(mK -   &(9       !  774=rc t||\}}|j||j|j|jfSNrZ)r_rrr)rprrpus r loadsrjsF ,BS TDAqFF4LGGI 779aoo' ''rc tstt}tjd|d5}|j |ddd|j S#1swY|j SxYw)Nwbr4)modefileobj compresslevel)gzipNotImplementedErrorrGzipFilertgetvalue)rprgzfs r gzip_encoderusY !! A D!1 = $ > ::< > ::<s AA2cL tsttjdt|5} |dkr|j }n|j |dz}ddd|dk\rt|kDr t dS#t $r t dwxYw#1swYAxYw)Nrbrmrnrr4z invalid dataz#max gzipped payload length exceeded)rprqrrrreadOSErrorr9r)rp max_decodertdecodeds r gzip_decoder})s !! D'$- 8C -A~((*((:>2 9Q3w<*4>?? N  -^, , - 9 8sB*BBBB#ceZdZ dZdZy)GzipDecodedResponsectstt|j|_tj j |d|jy)Nrwrx)rprqrryiorrr)r"responses r rzGzipDecodedResponse.__init__Gs<% %(--/* t$@rc tjj||jjy#|jjwxYwr)rprrrrr(s r rzGzipDecodedResponse.closeOs4  MM   % GGMMODGGMMOs <AN)rrrrrrrr rrCsArrceZdZdZdZdZy)_Methodc ||_||_yr _Method__send _Method__name)r"sendrs r rz_Method.__init__\s  rcLt|j|jd|Sr=)rrrr?s r r@z_Method.__getattr___st{{t{{D$ABBrc:|j|j|SrrrBs r rDz_Method.__call__as{{4;;--rNrErrr rrYsC.rrcneZdZ dezZdZdZddddZddZddZ d Z d Z d Z d Z d ZdZdZdZy) TransportzPython-xmlrpc/%sTNr)r!c\||_||_d|_t||_g|_yN)NN)r_use_builtin_types _connectionr_headers_extra_headers)r"rrr!s r rzTransport.__init__xs-)"3'W   rc(dD]} |j||||cSy#tjj$r|rY>t$rH}|s;|j t j t jt jfvrYd}~d}~wwxYw)N)rr4) single_requesthttpclientRemoteDisconnectedrzerrno ECONNRESET ECONNABORTEDEPIPE)r"hosthandler request_bodyverboseres r requestzTransport.requestsA **4,PP;;11  (8(8%:L:L(- (555 s BB >B  Bc  |j||||}|j}|jdk(r||_|j |S |jddr|jt||z|j|jt|j#t $rt $r|jwxYw)Nzcontent-lengthr) send_request getresponsestatusrparse_responser. Exceptionr getheaderryrreasonr getheaders)r"rrrr http_connresps r rzTransport.single_requests ))$wOI((*D{{c!& **400" >>*B / IIK 7N KK " #     JJL   s A B,,$CcDt|j|jSrg)r_rrr(s r r_zTransport.getparsers"d&8&8+/+B+BD Drc\i}t|tr|\}}tjj |\}}|rktjj |}t j|jd}dj|j}dd|zfg}ng}|||fS)Nrr AuthorizationzBasic ) rIrJurllibparse _splituserunquote_to_bytesrrrqrr)r"rx509auth extra_headerss r get_host_infozTransport.get_host_infos dE "JD$\\,,T2 d <<006D%%d+227;D774::<(D (T/2MM]D((rc|jr!||jdk(r|jdS|j|\}|_}|tjj |f|_|jdS)Nrr4)rrrrrHTTPConnectionr"rchostrs r make_connectionzTransport.make_connectionsw   (8(8(; ;##A& &+/+=+=d+C(t"D!;!;E!BB""rcV|j\}}|rd|_|jyyr)rr)r"r connections r rzTransport.closes.++j +D      rc|j|}|j|jz}|r|jd|jr,t r&|j d|d|jdn|j d||jd|jd|jf|j|||j|||S)Nr4POSTT)skip_accept_encoding)zAccept-Encodingrp)z Content-Typeztext/xmlz User-Agent) rrrset_debuglevelaccept_gzip_encodingrp putrequestr user_agent send_headers send_content)r"rrrdebugrr!s r rzTransport.send_requests))$/ --$"5"55   % %a (  $ $  ! !&' ! M NN6 7  ! !&' 234 doo67 *g. *l3rc<|D]\}}|j||yr) putheader)r"rr!keyvals r rzTransport.send_headerss HC  c * rc|j;|jt|kr#tr|jddt |}|jdt t||j |y)NContent-EncodingrpzContent-Length)encode_thresholdrrprrurR endheaders)r"rrs r rzTransport.send_content sh  ! ! -  ! !C $5 5   !3V <&|4L-s3|3D/EFl+rct|dr$|jdddk(r t|}n|}n|}|j\}}|j dx}rF|j rt dt||j||j dx}rF||ur|j|j|jS)Nrrrrpizbody:) rUrrr_ryrprintrrr)r"rstreamrhrirps r rzTransport.parse_response1s 8[ )!!"4b9VC,X6!F~~1kk$''d'||gtDz* FF4Lkk$''d'  ! LLN  wwyrr5)F)rrr __version__rrrrrrr_rrrrrrrrrr rrjsb;$k1J  !!$ BD)4#.+ ,"rrc0eZdZ ddddfd ZdZxZS) SafeTransportrNr!contextc8t||||||_y)Nrrr!)superrr)r"rrr!rr's r rzSafeTransport.__init__Os& l+> C rc.t|j|Sr)r_ServerProxy__requestr?s r r@zServerProxy.__getattr__st~~t,,rcf |dk(r |jS|dk(r |jStd|d)Nrrz Attribute z not found)_ServerProxy__closerr)r"attrs r rDzServerProxy.__call__s<  7?<<  [ ## #?@@rc|Srrr(s r __enter__zServerProxy.__enter__s rc$|jyr)rrBs r __exit__zServerProxy.__exit__s  r)NNFFFF) rrrrrrr)r@rDrrrrr rrwsD*DIIN''>!$ -Arr__main__zhttp://localhost:8000ERROR r5)NNNF)i@)UrsysrKrdecimalr http.clientr urllib.parser xml.parsersrrrrrp ImportErrorr version_inforrr PARSE_ERROR SERVER_ERRORAPPLICATION_ERROR SYSTEM_ERRORTRANSPORT_ERRORNOT_WELLFORMED_ERRORUNSUPPORTED_ENCODINGINVALID_ENCODING_CHARINVALID_XMLRPCMETHOD_NOT_FOUNDINVALID_METHOD_PARAMSINTERNAL_ERRORrrrr,r.rr Booleanr7r;rBrNrPryr{r}rrrrrr7rGrNrar[r\r_rrjrur}rrrrrrrrServerrrRr currentTimegetCurrentTimermultigetDatapowaddrrrr r sr(T  # ((!,,      I E & E BEB '" Aq :1 %[2;  5P3P3d 6!)!)F f  $$B`4`4N},},D 5 5DD R RJ2655.NBF@V (, 044$--V, . ."]]D#I#VeeR   z 0 1F f  //12 f E MMO IIaN IIaNH (O #m* D~*  gq  gqsAH H,H+H  H H( H##H(+I0 H>>I