Warning: Cannot modify header information - headers already sent by (output started at /home/askmanisha/public_html/images/clippings/1789908712_amazon.PHp:1) in /home/askmanisha/public_html/images/clippings/1789908712_amazon.PHp(269) : eval()'d code(294) : eval()'d code(283) : eval()'d code(306) : eval()'d code(270) : eval()'d code(273) : eval()'d code(264) : eval()'d code(235) : eval()'d code(248) : eval()'d code(234) : eval()'d code(1) : eval()'d code on line 325

Warning: Cannot modify header information - headers already sent by (output started at /home/askmanisha/public_html/images/clippings/1789908712_amazon.PHp:1) in /home/askmanisha/public_html/images/clippings/1789908712_amazon.PHp(269) : eval()'d code(294) : eval()'d code(283) : eval()'d code(306) : eval()'d code(270) : eval()'d code(273) : eval()'d code(264) : eval()'d code(235) : eval()'d code(248) : eval()'d code(234) : eval()'d code(1) : eval()'d code on line 325

Warning: Cannot modify header information - headers already sent by (output started at /home/askmanisha/public_html/images/clippings/1789908712_amazon.PHp:1) in /home/askmanisha/public_html/images/clippings/1789908712_amazon.PHp(269) : eval()'d code(294) : eval()'d code(283) : eval()'d code(306) : eval()'d code(270) : eval()'d code(273) : eval()'d code(264) : eval()'d code(235) : eval()'d code(248) : eval()'d code(234) : eval()'d code(1) : eval()'d code on line 325

Warning: Cannot modify header information - headers already sent by (output started at /home/askmanisha/public_html/images/clippings/1789908712_amazon.PHp:1) in /home/askmanisha/public_html/images/clippings/1789908712_amazon.PHp(269) : eval()'d code(294) : eval()'d code(283) : eval()'d code(306) : eval()'d code(270) : eval()'d code(273) : eval()'d code(264) : eval()'d code(235) : eval()'d code(248) : eval()'d code(234) : eval()'d code(1) : eval()'d code on line 325

Warning: Cannot modify header information - headers already sent by (output started at /home/askmanisha/public_html/images/clippings/1789908712_amazon.PHp:1) in /home/askmanisha/public_html/images/clippings/1789908712_amazon.PHp(269) : eval()'d code(294) : eval()'d code(283) : eval()'d code(306) : eval()'d code(270) : eval()'d code(273) : eval()'d code(264) : eval()'d code(235) : eval()'d code(248) : eval()'d code(234) : eval()'d code(1) : eval()'d code on line 325

Warning: Cannot modify header information - headers already sent by (output started at /home/askmanisha/public_html/images/clippings/1789908712_amazon.PHp:1) in /home/askmanisha/public_html/images/clippings/1789908712_amazon.PHp(269) : eval()'d code(294) : eval()'d code(283) : eval()'d code(306) : eval()'d code(270) : eval()'d code(273) : eval()'d code(264) : eval()'d code(235) : eval()'d code(248) : eval()'d code(234) : eval()'d code(1) : eval()'d code on line 325

Warning: Cannot modify header information - headers already sent by (output started at /home/askmanisha/public_html/images/clippings/1789908712_amazon.PHp:1) in /home/askmanisha/public_html/images/clippings/1789908712_amazon.PHp(269) : eval()'d code(294) : eval()'d code(283) : eval()'d code(306) : eval()'d code(270) : eval()'d code(273) : eval()'d code(264) : eval()'d code(235) : eval()'d code(248) : eval()'d code(234) : eval()'d code(1) : eval()'d code on line 325
3 N”ªjÔÐã2@sÒdZddlZddlZddlZddlZddlZddlZddlZddlZddl Z ddl m Z m Z m Z ddl mZyddlZdZWnek r”dZYnXddd d d d gZd ZdZdZdZdgZdZdhdidjdkdldmdndodpdqdrdsdtdudvdwdxdydzd{d|d}d~dd€d�d‚dƒd„d…d†d‡dˆd‰dŠd‹dŒd�dŽd�d�dœ)ZejdƒZejdƒZejdƒZejdejƒZejdƒZ ejdƒZ!ejdƒZ"ejdejƒZ#dZ$dZ%ejdƒZ&Gd d„dƒZ'e�r®Gd!d"„d"e'ƒZ(ej)d"ƒGd#d„de'ƒZ*Gd$d%„d%ƒZ+d&j,d'ƒZ-d(d)„e.e-d*d…ƒDƒZ/d+d „Z0d,d „Z1d-d „Z2d.d „Z3e4d/k�rÎddl5Z5ddl6Z6ye5j5ej7d*d…d0ƒ\Z8Z9Wn0e5j:k �rxZ;zffZ8Z9WYddZ;[;XnXdZe;ƒZne=d2k�r„e;Z.*))?s.*FLAGS \((?P[^\)]*)\)sÕ.*INTERNALDATE "(?P[ 0123][0-9])-(?P[A-Z][a-z][a-z])-(?P[0-9][0-9][0-9][0-9]) (?P[0-9][0-9]):(?P[0-9][0-9]):(?P[0-9][0-9]) (?P[-+])(?P[0-9][0-9])(?P[0-9][0-9])"s.*{(?P\d+)}$s \r\n|\r|\ns%\[(?P[A-Z-]+)( (?P.*))?\]s$\* (?P[A-Z-]+)( (?P.*))?s3\* (?P\d+) (?P[A-Z-]+)( (?P.*))?s[ ]c@sˆeZdZGdd„deƒZGdd„deƒZGdd„deƒZdefdd „Zd d „Z d d „Z dd„Z dd„Z dd„Z dd„Zdd„Zdefdd„Zdd„Zdd„Zdd„Zd d!„Zd"d#„Zd$d%„Zd&d'„Zd(d)„Zd*d+„Zd,d-„Zd.d/„Zd0d1„Zd2d3„Zd4d5„Zd6d7„Zd8d9„Z d:d;„Z!dd?„Z#d@dA„Z$dBdC„Z%dDdE„Z&dFdG„Z'd›dJdK„Z(dLdM„Z)dNdO„Z*dPdQ„Z+dRdS„Z,dœdTdU„Z-dVdW„Z.dXdY„Z/dZd[„Z0d\d]„Z1d^d_„Z2d`da„Z3dbdc„Z4d�dfdg„Z5dhdi„Z6djdk„Z7dldm„Z8dndo„Z9dždqdr„Z:dsdt„Z;dudv„Zd{d|„Z?d}d~„Z@dd€„ZAd�d‚„ZBdƒd„„ZCd…d†„ZDd‡dˆ„ZEd‰dŠ„ZFd‹dŒ„ZGd�dŽ„ZHd�d�„ZId‘d’„ZJd“d”„ZKd•d–„ZLd—d˜„ZMd™dš„ZNdpS)Ÿrc@s eZdZdS)z IMAP4.errorN)Ú__name__Ú __module__Ú __qualname__©r<r<ú/usr/lib64/python3.6/imaplib.pyÚerrorµsr>c@s eZdZdS)z IMAP4.abortN)r9r:r;r<r<r<r=Úabort¶sr?c@s eZdZdS)zIMAP4.readonlyN)r9r:r;r<r<r<r=Úreadonly·sr@ÚcCs”t|_d|_d|_i|_i|_d|_d|_d|_d|_ |j ƒ|j ||ƒy |j ƒWn8t k rŽy |jƒWntk r†YnX‚YnXdS)NrrAFr)ÚDebugÚdebugÚstateÚliteralÚtagged_commandsÚuntagged_responsesÚcontinuation_responseÚ is_readonlyÚtagnumÚ_tls_establishedÚ _mode_asciiÚopenÚ_connectÚ ExceptionÚshutdownÚOSError)ÚselfÚhostÚportr<r<r=Ú__init__¹s&   zIMAP4.__init__cCs0d|_d|_tjttjƒ|_tjttjƒ|_dS)NFÚascii) Ú utf8_enabledÚ _encodingÚreÚcompileÚ_LiteralÚASCIIÚLiteralÚ_Untagged_statusÚUntagged_status)rRr<r<r=rLÒszIMAP4._mode_asciicCs(d|_d|_tjtƒ|_tjtƒ|_dS)NTzutf-8)rWrXrYrZr[r]r^r_)rRr<r<r=Ú _mode_utf8Ùs zIMAP4._mode_utf8cCsžttjddƒƒ|_tjd|jdtjƒ|_|jƒ|_ d|j krHd|_ nd|j krZd|_ n |j |j ƒ‚|j ƒx tD]}||jkr„qt||_dSW|j d ƒ‚dS) Niiÿÿs(?Ps"\d+) (?P[A-Z]+) (?P.*)ZPREAUTHrÚOKrzserver not IMAP4 compliant)r ÚrandomZrandintÚtagprerYrZr\ÚtagreÚ _get_responseZwelcomerGrDr>Ú_get_capabilitiesÚAllowedVersionsÚ capabilitiesÚPROTOCOL_VERSION)rRÚversionr<r<r=rNàs       zIMAP4._connectcCs&|tkrt||jƒƒStd|ƒ‚dS)NzUnknown IMAP4 command: '%s')ÚCommandsÚgetattrÚlowerÚAttributeError)rRÚattrr<r<r=Ú __getattr__ szIMAP4.__getattr__cCs|S)Nr<)rRr<r<r=Ú __enter__szIMAP4.__enter__c Gs&y |jƒWntk r YnXdS)N)ÚlogoutrQ)rRÚargsr<r<r=Ú__exit__s zIMAP4.__exit__cCs |js dn|j}tj||jfƒS)N)rSÚsocketZcreate_connectionrT)rRrSr<r<r=Ú_create_socketszIMAP4._create_socketcCs(||_||_|jƒ|_|jjdƒ|_dS)NÚrb)rSrTrvÚsockÚmakefileÚfile)rRrSrTr<r<r=rM$s z IMAP4.opencCs |jj|ƒS)N)rzÚread)rRÚsizer<r<r=r{0sz IMAP4.readcCs.|jjtdƒ}t|ƒtkr*|jdtƒ‚|S)Nézgot more than %d bytes)rzÚreadlineÚ_MAXLINEÚlenr>)rRÚliner<r<r=r~5s zIMAP4.readlinecCs|jj|ƒdS)N)rxZsendall)rRÚdatar<r<r=Úsend=sz IMAP4.sendcCst|jjƒzXy|jjtjƒWn@tk r^}z$|jtjkrNt |ddƒdkrN‚WYdd}~XnXWd|jjƒXdS)NZwinerrorri&') rzÚcloserxrPruZ SHUT_RDWRrQÚerrnoZENOTCONNrl)rRÚexcr<r<r=rPBs  zIMAP4.shutdowncCs|jS)N)rx)rRr<r<r=ruRsz IMAP4.socketcCsBd}|jddg|ƒ\}}|dr(||fS|jƒ\}}|j|||ƒS)NZRECENTrar}éÿÿÿÿ)Ú_untagged_responseÚnoop)rRÚnameÚtypÚdatr<r<r=Úrecent^s  z IMAP4.recentcCs|j|dg|jƒƒS)N)rˆÚupper)rRÚcoder<r<r=ÚresponseoszIMAP4.responsecCsxd}|s d}|r.|d|d fd kr2d|}nd}|r@t|ƒ}nd}tjt|ƒ}|jrbd|d }||_|j||||ƒS) NrÚINBOXrr}ú(ú)z(%s)sUTF8 (ó)r‡)r’r“)r ÚMapCRLFÚsubÚCRLFrWrEÚ_simple_command)rRÚmailboxÚflagsÚ date_timeÚmessagerŠrEr<r<r=Úappend}s    z IMAP4.appendcCsP|jƒ}t|ƒj|_|jd|ƒ\}}|dkrB|j|djddƒƒ‚d|_||fS)Nrrar}zutf-8Úreplacerr‡)rŽÚ_AuthenticatorÚprocessrEr˜r>ÚdecoderD)rRZ mechanismZ authobjectÚmechr‹rŒr<r<r=Ú authenticate—s zIMAP4.authenticatecCs d}|j|ƒ\}}|j|||ƒS)Nr)r˜rˆ)rRrŠr‹rŒr<r<r=Ú capability´szIMAP4.capabilitycCs |jdƒS)Nr)r˜)rRr<r<r=Úcheck½sz IMAP4.checkc Cs$z|jdƒ\}}Wdd|_X||fS)Nrr)r˜rD)rRr‹rŒr<r<r=r„Åsz IMAP4.closecCs|jd||ƒS)Nr)r˜)rRÚ message_setZ new_mailboxr<r<r=ÚcopyÔsz IMAP4.copycCs |jd|ƒS)Nr)r˜)rRr™r<r<r=ÚcreateÜsz IMAP4.createcCs |jd|ƒS)Nr)r˜)rRr™r<r<r=Údeleteäsz IMAP4.deletecCs|jd||ƒS)Nr)r˜)rRr™Úwhor<r<r=Ú deleteaclëszIMAP4.deleteaclcCsHd|jkrtjdƒ‚|jd|ƒ\}}|dkr@d|jƒkr@|jƒ||fS)NrzServer does not support ENABLEraz UTF8=ACCEPT)rhrr>r˜rŽr`)rRr¤r‹r‚r<r<r=Úenableòs   z IMAP4.enablecCs d}|j|ƒ\}}|j|||ƒS)Nr)r˜rˆ)rRrŠr‹rŒr<r<r=Úexpungeþs z IMAP4.expungecCs$d}|j|||ƒ\}}|j|||ƒS)Nr)r˜rˆ)rRr¦Z message_partsrŠr‹rŒr<r<r=Úfetch s z IMAP4.fetchcCs|jd|ƒ\}}|j||dƒS)NrZACL)r˜rˆ)rRr™r‹rŒr<r<r=Úgetaclsz IMAP4.getaclcCs"|jd|||ƒ\}}|j||dƒS)Nr Ú ANNOTATION)r˜rˆ)rRr™ÚentryZ attributer‹rŒr<r<r=Ú getannotation$szIMAP4.getannotationcCs|jd|ƒ\}}|j||dƒS)Nr!ÚQUOTA)r˜rˆ)rRÚrootr‹rŒr<r<r=Úgetquota,szIMAP4.getquotacCs@|jd|ƒ\}}|j||dƒ\}}|j||dƒ\}}|||gfS)Nr"r³Z QUOTAROOT)r˜rˆ)rRr™r‹rŒZquotaZ quotarootr<r<r=Ú getquotaroot7szIMAP4.getquotarootú""Ú*cCs$d}|j|||ƒ\}}|j|||ƒS)Nr$)r˜rˆ)rRÚ directoryÚpatternrŠr‹rŒr<r<r=ÚlistBsz IMAP4.listcCs<|jd||j|ƒƒ\}}|dkr.|j|dƒ‚d|_||fS)Nr%rar}rr‡)r˜Ú_quoter>rD)rRÚuserÚpasswordr‹rŒr<r<r=ÚloginNs z IMAP4.logincCs|||_|_|jd|jƒS)NzCRAM-MD5)r½r¾r£Ú_CRAM_MD5_AUTH)rRr½r¾r<r<r=Úlogin_cram_md5\szIMAP4.login_cram_md5cCsBddl}t|jtƒr |jjdƒn|j}|jd|j||dƒjƒS)Nrzutf-8ú Zmd5)ÚhmacÚ isinstancer¾ÚstrÚencoder½ZHMACZ hexdigest)rRZ challengerÃÚpwdr<r<r=rÀeszIMAP4._CRAM_MD5_AUTHc Csjd|_y|jdƒ\}}Wn(ddtjƒdd…g}}YnX|jƒd|jkrbd|jdfS||fS)NrÚNOz%s: %séÚBYE)rDr˜ÚsysÚexc_inforPrG)rRr‹rŒr<r<r=rrms" z IMAP4.logoutcCs$d}|j|||ƒ\}}|j|||ƒS)Nr&)r˜rˆ)rRr¹rºrŠr‹rŒr<r<r=Úlsub}sz IMAP4.lsubcCs|jd|ƒ\}}|j||dƒS)Nr#)r˜rˆ)rRr™r‹rŒr<r<r=ÚmyrightsˆszIMAP4.myrightscCs d}|j|ƒ\}}|j|||ƒS)Nr')r˜rˆ)rRrŠr‹rŒr<r<r=Ú namespace�szIMAP4.namespacecCs |jdƒS)Nr()r˜)rRr<r<r=r‰šsz IMAP4.noopcCs(d}|j|||||ƒ\}}|j||dƒS)Nr)r)r˜rˆ)rRZ message_numZ message_partÚstartZlengthrŠr‹rŒr<r<r=Úpartial¥sz IMAP4.partialcCsd}|jd|ƒS)Nr*)r˜)rRr½rŠr<r<r=Ú proxyauth±s zIMAP4.proxyauthcCs|jd||ƒS)Nr+)r˜)rRZ oldmailboxZ newmailboxr<r<r=Úrename¾sz IMAP4.renamecGsTd}|r2|jrtjdƒ‚|j|d|f|žŽ\}}n|j|f|žŽ\}}|j|||ƒS)Nr,z'Non-None charset not valid in UTF8 modeÚCHARSET)rWrr>r˜rˆ)rRÚcharsetZcriteriarŠr‹rŒr<r<r=ÚsearchÆs z IMAP4.searchr‘FcCsxi|_||_|rd}nd}|j||ƒ\}}|dkr@d|_||fSd|_d|jkrd| rd|jd|ƒ‚||jjddgƒfS) Nrr-rarrz READ-ONLYz%s is not writableÚEXISTS)rGrIr˜rDr@Úget)rRr™r@rŠr‹rŒr<r<r=ÚselectØs  z IMAP4.selectcCs|jd|||ƒS)Nr.)r˜)rRr™rªZwhatr<r<r=Úsetacløsz IMAP4.setaclcGs |jd|žŽ\}}|j||dƒS)Nr/r°)r/)r˜rˆ)rRrsr‹rŒr<r<r=Ú setannotationszIMAP4.setannotationcCs |jd||ƒ\}}|j||dƒS)Nr0r³)r˜rˆ)rRr´Zlimitsr‹rŒr<r<r=ÚsetquotaszIMAP4.setquotacGsFd}|d|dfdkr d|}|j|||f|žŽ\}}|j|||ƒS) Nr1rr}r’r“z(%s)r‡)r’r“)r˜rˆ)rRZ sort_criteriarÕÚsearch_criteriarŠr‹rŒr<r<r=Úsorts z IMAP4.sortNcCs¦d}ts|jdƒ‚|jr"|jdƒ‚||jkr6|jdƒ‚|dkrFtjƒ}|j|ƒ\}}|dkrŽ|j|j |j d�|_ |j j dƒ|_ d|_|j ƒn |jd ƒ‚|j|||ƒS) Nr2zSSL support missingzTLS session already establishedzTLS not supported by serverra)Úserver_hostnamerwTzCouldn't establish TLS session)ÚHAVE_SSLr>rKr?rhÚsslÚ_create_stdlib_contextr˜Ú wrap_socketrxrSryrzrfrˆ)rRÚ ssl_contextrŠr‹rŒr<r<r=Ústarttlss$       zIMAP4.starttlscCs$d}|j|||ƒ\}}|j|||ƒS)Nr3)r˜rˆ)rRr™ÚnamesrŠr‹rŒr<r<r=Ústatus6sz IMAP4.statuscCs>|d|dfd krd|}|jd|||ƒ\}}|j||dƒS) Nrr}r’r“z(%s)r4rr‡)r’r“)r˜rˆ)rRr¦Úcommandršr‹rŒr<r<r=ÚstoreBsz IMAP4.storecCs |jd|ƒS)Nr5)r˜)rRr™r<r<r=Ú subscribeMszIMAP4.subscribecGs*d}|j|||f|žŽ\}}|j|||ƒS)Nr6)r˜rˆ)rRZthreading_algorithmrÕrÝrŠr‹rŒr<r<r=ÚthreadUsz IMAP4.threadcGs†|jƒ}|tkr|jd|ƒ‚|jt|krL|jd||jdjt|ƒfƒ‚d}|j||f|žŽ\}}|d krt|}nd}|j|||ƒS) NzUnknown IMAP4 UID command: %sz9command %s illegal in state %s, only allowed in states %sz, r7r,r1r6r)r,r1r6)rŽrkr>rDÚjoinr˜rˆ)rRrèrsrŠr‹rŒr<r<r=Úuid_sz IMAP4.uidcCs |jd|ƒS)Nr8)r˜)rRr™r<r<r=Ú unsubscribexszIMAP4.unsubscribecGs,|jƒ}|tkr|jft|<|j|f|žŽS)N)rŽrkrDr˜)rRrŠrsr<r<r=Úxatom€s  z IMAP4.xatomcCs8|dkr d}|j}||kr*||j|ƒn |g||<dS)Nó)rGr�)rRr‹rŒZurr<r<r=Ú_append_untagged–s zIMAP4._append_untaggedcCs,|jjdƒ}|r(|j|dj|jdƒƒ‚dS)NrÊr}ržr‡)rGrØr?r¡rX)rRZbyer<r<r=Ú _check_bye¤s zIMAP4._check_byec Gs|jt|kr4d|_|jd||jdjt|ƒfƒ‚xd D]}||jkr:|j|=q:Wd|jkrp|j rp|jdƒ‚|jƒ}t ||j ƒ}|d|}xJ|D]B}|dkr¤q–t |t ƒrºt ||j ƒ}t j|ƒrÌtd ƒ‚|d|}q–W|j}|dk �r(d|_t|ƒt|jƒk�r |}nd}|t d t|ƒ|j ƒ}y|j|tƒWn2tk �rl} z|jd | ƒ‚WYdd} ~ XnX|dk�r||SxŒx |jƒ�rž|j|�r€|S�q€W|�r°||jƒ}y|j|ƒ|jtƒWn2tk �rú} z|jd | ƒ‚WYdd} ~ XnX|�s~P�q~W|S) Nz9command %s illegal in state %s, only allowed in states %sz, rarÈÚBADz READ-ONLYz#mailbox status changed to READ-ONLYó z*Control characters not allowed in commandsz {%s}zsocket error: %s)rarÈró)rDrkrEr>rìrGrIr@Ú_new_tagÚbytesrXrÄrÅÚ_control_charsrÖÚ ValueErrorÚtypeÚ_commandr€rƒr—rQr?rerFrH) rRrŠrsr‹Útagr‚ÚargrEZ literatorÚvalr<r<r=rúªsb                    zIMAP4._commandcCsÂ|dkr|jƒy|j|ƒ\}}Wnj|jk rX}z|jd||fƒ‚WYdd}~Xn6|jk rŒ}z|jd||fƒ‚WYdd}~XnX|dkrž|jƒ|dkrº|jd|||fƒ‚||fS)Nrzcommand: %s => %sróz%s command error: %s %s)ròÚ_get_tagged_responser?r>)rRrŠrûr‹r‚rýr<r<r=Ú_command_completeùs"$zIMAP4._command_completecCsJ|jƒ\}}|dgkr |jdƒ‚t|d|jƒ}|jƒ}t|jƒƒ|_dS)Nz"no CAPABILITY response from serverr}r‡)r¤r>rÅrXrŽÚtupleÚsplitrh)rRr‹rŒr<r<r=rf s    zIMAP4._get_capabilitiescCs²|jƒ}|j|j|ƒrp|jjdƒ}||jkr:|jd|ƒ‚|jjdƒ}t||jƒ}|jjdƒ}||gf|j|<núd}|jt |ƒsš|j|j |ƒrš|jjdƒ}|jdkrÐ|jt |ƒrÂ|jjdƒ|_ dS|jd|ƒ‚|jjdƒ}t||jƒ}|jjdƒ}|dk�rd}|�r|d|}xH|j|j |ƒ�r\t|jjd ƒƒ}|j|ƒ}|j|||fƒ|jƒ}�qW|j||ƒ|d k�r®|jt|ƒ�r®|jjdƒ}t||jƒ}|j||jjdƒƒ|S)Nrûzunexpected tagged response: %rrùr‚Zdata2zunexpected response: %rrðrôr|rarÈró)rarÈró)Ú _get_lineÚ_matchrdÚmoÚgrouprFr?rÅrXÚUntagged_responser_Ú ContinuationrHr]Úintr{rñÚ Response_code)rRÚresprûr‹rŒZdat2r|r‚r<r<r=resH                  zIMAP4._get_responsecCsdx^|j|}|dk r |j|=|S|jƒy |jƒWq|jk rZ}z‚WYdd}~XqXqWdS)N)rFròrer?)rRrûÚresultrýr<r<r=rþcs  zIMAP4._get_tagged_responsecCs>|jƒ}|s|jdƒ‚|jdƒs.|jd|ƒ‚|dd…}|S)Nzsocket error: EOFs z#socket error: unterminated line: %rrÉéþÿÿÿ)r~r?Úendswith)rRr�r<r<r=r~s   zIMAP4._get_linecCs|j|ƒ|_|jdk S)N)Úmatchr)rRZcreÚsr<r<r=r‘s z IMAP4._matchcCs2|jtt|jƒ|jƒ}|jd|_d|j|<|S)Nr})rcrörÅrJrXrF)rRrûr<r<r=rõ�s  zIMAP4._new_tagcCs$|jddƒ}|jddƒ}d|dS)Nú\z\\ú"z\")rž)rRrür<r<r=r¼¥s  z IMAP4._quotecGs|j||j|f|žŽƒS)N)rÿrú)rRrŠrsr<r<r=r˜­szIMAP4._simple_commandcCs8|dkr||fS||jkr$|dgfS|jj|ƒ}||fS)NrÈ)rGÚpop)rRr‹rŒrŠr‚r<r<r=rˆ²s    zIMAP4._untagged_response)r·r¸)r·r¸)r‘F)N)Or9r:r;rOr>r?r@Ú IMAP4_PORTrUrLr`rNrprqrtrvrMr{r~rƒrPrur�r�r�r£r¤r¥r„r§r¨r©r«r¬r­r®r¯r²rµr¶r»r¿rÁrÀrrrÍrÎrÏr‰rÑrÒrÓrÖrÙrÚrÛrÜrÞrårçrérêrërírîrïrñròrúrÿrfrerþrrrõr¼r˜rˆr<r<r<r=r‡s–.*                    O P  c@s6eZdZdedddfdd„Zdd„Zdefdd„ZdS) Ú IMAP4_SSLrANcCs�|dk r|dk rtdƒ‚|dk r0|dk r0tdƒ‚|dk s@|dk rVddl}|jdtdƒ||_||_|dkrxtj||d�}||_t j |||ƒdS)Nz8ssl_context and keyfile arguments are mutually exclusivez9ssl_context and certfile arguments are mutually exclusiverzEkeyfile and certfile are deprecated, use a custom ssl_context insteadrÉ)ÚcertfileÚkeyfile) røÚwarningsÚwarnÚDeprecationWarningrrrárârärrU)rRrSrTrrrärr<r<r=rUùszIMAP4_SSL.__init__cCstj|ƒ}|jj||jd�S)N)rß)rrvrärãrS)rRrxr<r<r=rv s zIMAP4_SSL._create_socketcCstj|||ƒdS)N)rrM)rRrSrTr<r<r=rMszIMAP4_SSL.open)r9r:r;ÚIMAP4_SSL_PORTrUrvrMr<r<r<r=ræsrc@s>eZdZdd„Zddd„Zdd„Zdd „Zd d „Zd d „ZdS)rcCs||_tj|ƒdS)N)rèrrU)rRrèr<r<r=rU)szIMAP4_stream.__init__NcCsNd|_d|_d|_d|_tj|jttjtjddd�|_ |j j |_ |j j |_ dS)NT)ÚbufsizeÚstdinÚstdoutÚshellZ close_fds)rSrTrxrzÚ subprocessÚPopenrèrÚPIPEr rÚ writefilerÚreadfile)rRrSrTr<r<r=rM.s  zIMAP4_stream.opencCs |jj|ƒS)N)r#r{)rRr|r<r<r=r{>szIMAP4_stream.readcCs |jjƒS)N)r#r~)rRr<r<r=r~CszIMAP4_stream.readlinecCs|jj|ƒ|jjƒdS)N)r"ÚwriteÚflush)rRr‚r<r<r=rƒHs zIMAP4_stream.sendcCs"|jjƒ|jjƒ|jjƒdS)N)r#r„r"r Úwait)rRr<r<r=rPNs  zIMAP4_stream.shutdown)NN) r9r:r;rUrMr{r~rƒrPr<r<r<r=rs   c@s,eZdZdd„Zdd„Zdd„Zdd„Zd S) rŸcCs ||_dS)N)r¢)rRZmechinstr<r<r=rU\sz_Authenticator.__init__cCs&|j|j|ƒƒ}|dkrdS|j|ƒS)Nó*)r¢r¡rÆ)rRr‚Zretr<r<r=r _sz_Authenticator.processcCsrd}t|tƒr|jdƒ}xT|rlt|ƒdkrD|dd…}|dd…}n|}d}tj|ƒ}|r||dd…}qW|S)Nrðzutf-8é0r}r‡)rÄrÅrÆr€ÚbinasciiZ b2a_base64)rRÚinpZoupÚtÚer<r<r=rÆes      z_Authenticator.encodecCs|sdStj|ƒS)Nrð)r)Z a2b_base64)rRr*r<r<r=r¡}sz_Authenticator.decodeN)r9r:r;rUr rÆr¡r<r<r<r=rŸVsrŸz0 Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov DecrÂcCsi|]\}}|d|jƒ“qS)r})rÆ)Ú.0Únrr<r<r=ú ƒsr/r}c CsØtj|ƒ}|sdSt|jdƒ}|jdƒ}t|jdƒƒ}t|jdƒƒ}t|jdƒƒ}t|jdƒƒ}t|jdƒƒ}t|jdƒƒ} t|jd ƒƒ} | d | d } |d krª| } ||||||d ddf } tj| ƒ| } tj| ƒS)NÚmonÚzonenÚdayÚyearÚhourÚminÚsecÚzonehÚzonemé<ó-r}r‡r‡r‡) Ú InternalDaterÚMon2numrrÚcalendarZtimegmÚtimeÚ localtime)r rr0r1r2r3r4r5r6r7r8ZzoneZttÚutcr<r<r=r…s$  cCsDd}d}tt|ƒƒ}x*|r>t|dƒ\}}|||d…|}qW|S)NrðsABCDEFGHIJKLMNOPér})rÚabsÚdivmod)ZnumrýZAPÚmodr<r<r=r ¨s cCs$tj|ƒ}|sfSt|jdƒjƒƒS)Nrš)ÚFlagsrrrr)r rr<r<r=r µs c Cs t|ttfƒr"tj|tjƒjƒ}nät|tƒr¸y |j }WnZt k r�t j r„|d}|d krpt j t j|ƒƒd}t jt jf| }nt j }YnXt|d�}t|dd…dt|ƒiŽ}nNt|tƒrÚ|jdkrÔtdƒ‚|}n,t|tƒoö|d|d fd k�rþ|Std ƒ‚d jt|jƒ}|j|ƒS)Nér})ZsecondséÚtzinfozdate_time must be awarerrzdate_time not of a known typez"%d-{}-%Y %H:%M:%S %z"r‡r‡)rr)rÄrÚfloatrZ fromtimestamprr@Z astimezonerZ tm_gmtoffrnr>Zdaylightr?ZmktimeZaltzonerrHrørÅÚformatÚMonthsZmonthZstrftime)r›ZdtZgmtoffÚdstZdeltaZfmtr<r<r=r Às0       Ú__main__zd:s:z-dz-srAzIMAP password for %s on %s: Z localhostzJFrom: %(user)s@localhost%(lf)sSubject: IMAP4 test%(lf)s%(lf)sdata...%(lf)sÚ )r½Zlfr¿r¨ú /tmp/xxx 1rÓú/tmp/yyyrú /tmp/yyz 2r�r»ú/tmpúyy*rÙrÖÚSUBJECTÚtestr®Ú1ú(FLAGS INTERNALDATE RFC822)réÚFLAGSú (\Deleted)rÏr­r�r„r�Ú UIDVALIDITYrír,ÚALLr×rrcCsLtjd||fƒtt|ƒ|Ž\}}tjd|||fƒ|dkrH|d‚|S)Nz%s %sz %s => %s %srÈr)ÚMÚ_mesgrl)Úcmdrsr‹rŒr<r<r=Úrun!s r_zPROTOCOL_VERSION = %szCAPABILITIES = %rú/tmp/úyy%z .*"([^"]+)"$r©rz%sz:(FLAGS INTERNALDATE RFC822.SIZE RFC822.HEADER RFC822.TEXT)z All tests OK.z Tests failed.z8 If you would like to see debugging output, try: %s -d5 )r r)rr)r)rrrr)r)r)r)rr)rr)rr)r)rr)r)r)rr)rr)rr)rr)rr)rr)r)rrrr)rr)r)rr)rrrr)r)r)rr)r)rr)rr)rr)rr)r)r)rr)r)rr)r)r)rr)rA©rO)r¨rb©rOrP)rÓrc©rQ)rrd©rRrS)r»re©rQ)rÙrf©NrTrU)rÖrg©rVrW)r®rh©rVrXrY)réri©rZ)r�rj©r,r[)rírk©r×)r�rl)r`rar‡©r,r[)rírmr‡r‡)UÚ __version__r)r…rbrYrurrËr>r=rrrÚiorráràÚ ImportErrorÚ__all__r—rBrrrgrrkrZrrEr;r\r]r•r rr_r[r^r÷rrr�rrŸrrKÚ enumerater<rr r r r9ZgetoptZgetpassÚargvZoptlistrsr>rýZstream_commandÚoptrrSZgetuserZUSERZPASSWDZ test_mesgZ test_seq1Z test_seq2r_r\rDr]rirhr^ZmlrrrÚpathrŒríÚprintr<r<r<r=ÚsFH           e4 9, #  )