QfS7 ddlZddlZddlZddlZ ddlZdZddgZGddeZ dZ dZ d Z d Z e e zZd ZGd dZerGd deZej%dedk(rddlZeej(dZeej/ej1ej(dej3ej(dej5ej7\ZZededzD]<ZejAe\Z!Z"Z#edeze"D] Z$ede$zed>ejKyy#e$rdZY@wxYw)NTFPOP3 error_protoc eZdZy)rN)__name__ __module__ __qualname__-/opt/alt/python312/lib64/python3.12/poplib.pyrrsr ni  iceZdZ dZeej fdZdZdZ dZ dZ dZ dZ d Zd Zd Zd Zd ZdZdZd dZdZdZdZdZdZdZdZej<dZdZ dZ!d dZ"dZ#dZ$d dZ%y)!rzUTF-8c||_||_d|_tjd||||j ||_|j jd|_d|_ |j|_ y)NFzpoplib.connectrbr) hostport_tls_establishedsysaudit_create_socketsockmakefilefile _debugging_getrespwelcome)selfrrtimeouts r __init__z POP3.__init__bsg  % "D$5''0 II&&t, }} r cx| |s tdtj|j|jf|S)Nz0Non-blocking socket (timeout=0) is not supported) ValueErrorsocketcreate_connectionrr)rrs r rzPOP3._create_socketms6  wOP P''DII(>HHr c|jdkDrtdt|tjd|||j j |tzy)Nz*put*zpoplib.putline)rprintreprrrrsendallCRLFrlines r _putlinez POP3._putlinersB ??Q gtDz : "D$/ $+&r c|jrtdt|t||j}|j |y)Nz*cmd*)rr'r(bytesencodingr-r+s r _putcmdz POP3._putcmdzs2 ??E'4:6T4==) dr cR|jjtdz}t|tkDr t d|j dkDrt dt||s t dt|}|ddtk(r|dd|fS|ddtk(r|dd|fS|dd|fS)Nr&z line too longz*get*z-ERR EOF) rreadline_MAXLINElenrrr'r(r*CR)rr,octetss r _getlinez POP3._getlinesyy!!(Q,/ t9x o. . ??Q gtDz :;z22T 9 9f$ $ 8r>":v% %CRy&  r c|j\}}|jdkDrtdt||j ds t ||S)Nr&z*resp*+)r:rr'r( startswithr)rrespos r rz POP3._getrespsF--/a ??Q hT ;t$d# # r c|j}g}d}|j\}}|dk7rJ|jdr |dz }|dd}||z}|j||j\}}|dk7rJ|||fS)Nr.s..r&)rr:r=append)rr>listr9r,r?s r _getlongrespzPOP3._getlongresps}}A6--/adlu%aCABxaZF KK mmoGD! dlT6!!r cD|j||jSN)r1rr+s r _shortcmdzPOP3._shortcmds T}}r cD|j||jSrF)r1rDr+s r _longcmdz POP3._longcmds T  ""r c|jSrF)rrs r getwelcomezPOP3.getwelcomes ||r c||_yrF)r)rlevels r set_debuglevelzPOP3.set_debuglevels r c, |jd|zS)NzUSER %srGrusers r rSz POP3.users ~~i$.//r c, |jd|zS)NzPASS %srQ)rpswds r pass_z POP3.pass_s ~~i$.//r c |jd}|j}|jrtdt |t |d}t |d}||fS)NSTATz*stat*r&)rGsplitrr'r(int)rretvalrets numMessages sizeMessagess r statz POP3.stats[ '||~ ??E(DJ7$q'l 47| \**r NcR ||jd|zS|jdS)NzLIST %sLISTrGrIrwhichs r rCz POP3.lists2   >>)e"34 4}}V$$r c, |jd|zS)NzRETR %srIrds r retrz POP3.retrs }}Y.//r c, |jd|zS)NzDELE %srQrds r delez POP3.deles ~~i%/00r c& |jdS)NNOOPrQrKs r noopz POP3.noops ~~f%%r c& |jdS)NRSETrQrKs r rsetz POP3.rsets6~~f%%r cJ |jd}|j|S)NQUIT)rGclose)rr>s r quitz POP3.quits!R~~f%  r c |j}d|_||j|j}d|_|1 |jtj |jyy#t $r8}|jtjk7rt|dddk7rYd}~Nd}~wwxYw#|jwxYw#|j}d|_| |jtj nD#t $r8}|jtjk7rt|dddk7rYd}~nd}~wwxYw|jw#|jwxYwwxYw)Nwinerrorri&') rrsrshutdownr# SHUT_RDWROSErrorerrnoENOTCONNgetattr)rrrexcs r rsz POP3.closes,F !99DDI 99DDI !MM&"2"23JJL  U^^3"3 A6%? JJL99DDI !MM&"2"23 U^^3"3 A6%? JJLDJJL sp%CA// B08.B+&B3+B00B33CE*C?>E? E.D;6E;EEE*E&&E*c, |jd|zS)NzRPOP %srQrRs r rpopz POP3.rpop7s&~~i$.//r s\+OK.[^<]*(<.*>)c0 t||j}|jj|j}|s t dddl}|jd|z}|j|j}|jd|d|S)Nz!-ERR APOP not supported by serverrr&zAPOP  ) r/r0 timestampmatchrrhashlibgroupmd5 hexdigestrG)rrSpasswordsecretmrdigests r apopz POP3.apop>s x/ NN  .AB BF"V$..0~~dF;<>)e"34 4}}V$$r c& |jdS)NUTF8rQrKs r utf8z POP3.utf8hs ~~f%%r c d}i} |jd}|d}|D]}||\}}|||< |S#t$r tdwxYw)NcT|jdj}|d|ddfS)Nasciirr&)decoderZ)r,lsts r _parsecapzPOP3.capa.._parsecap{s-++g&,,.Cq63qr7? "r CAPAr&z!-ERR CAPA not supported by server)rIr)rrcapsr>rawcapscaplinecapnmcapargss r capaz POP3.capansw  # C==(D1gG"!*7!3w%U #   CAB B Cs -8A c ts td|jr td|j}d|vr td|t j }|j d}|j|j|j|_|jjd|_ d|_|S)Nz-ERR TLS support missing$-ERR TLS session already establishedSTLSz!-ERR STLS not supported by serverserver_hostnamerT) HAVE_SSLrrrssl_create_stdlib_contextrG wrap_socketrrrr)rcontextrr>s r stlsz POP3.stlss 89 9  DE Eyy{~AB B ?002G~~f%'' 8< (C II&&t, $ r rF)&rrrr0 POP3_PORTr#_GLOBAL_DEFAULT_TIMEOUTr rr-r1r:rrDrGrIrLrOrSrVr`rCrhrjrmrprtrsrrecompilerrrrrrrr r r rr3s)VH"+77 'I '!* " # 00 + %01&&  !80  /0I=*= %& :r cBeZdZ efej dddZdZddZy)POP3_SSLN)rrcn|tj}||_tj ||||yrF)rrrrr )rrrrrs r r zPOP3_SSL.__init__s.446"DL MM$dG 4r ctj||}|jj||j}|S)Nr)rrrrr)rrrs r rzPOP3_SSL._create_sockets<&&tW5D<<++D<@II,GDKr c td)Nr)r)rrs r rz POP3_SSL.stlss DE Er rF) rrr POP3_SSL_PORTr#rr rrr r r rrs, '4 5 & > > 5   Fr r__main__r&rYz Message %d:z z-----------------------)&rzrr#rrr ImportError__all__ Exceptionrrrr8LFr*r6rrrBrargvar'rLrSrVrCr`numMsgs totalSizerangeirhheadermsgr9r,rtr r r rs| H - #)"      "u kk\  F4F@ NN: z SXXa[A !,,.FF388A;GGCHHQKFFH668Wi 1gk " !q f ma D %$,  '( # FFH[ HsEEE