ACC SHELL

Path : /usr/lib/python/
File Upload :
Current File : //usr/lib/python/poplib.pyo

Ńň
oÄMc@sŠdZddkZddkZddgZdefd„ƒYZdZdZdZd	Z	ee	Z
dfd
„ƒYZyddkZWne
j
on%Xdefd„ƒYZeidƒed
joÚddkZeeidƒZeiƒGHeieidƒeieidƒeiƒeiƒ\ZZx[ededƒD]FZeieƒ\ZZZ deGHxeD]Z!de!GHq{WdGHqMWei"ƒndS(s@A POP3 client class.

Based on the J. Myers POP3 draft, Jan. 96
i˙˙˙˙NtPOP3terror_protocBseZRS((t__name__t
__module__(((s/usr/lib/python2.6/poplib.pyRsiniăs
s
cBsűeZdZeeid„Zd„Zd„Zd„Z	d„Z
d„Zd„Zd„Z
d	„Zd
„Zd„Zd„Zd
„Zdd„Zd„Zd„Zd„Zd„Zd„Zd„ZeidƒZd„Zd„Zdd„Z RS(sĎThis class supports both the minimal and optional command sets.
    Arguments can be strings or integers (where appropriate)
    (e.g.: retr(1) and retr('1') both work equally well.

    Minimal Command Set:
            USER name               user(name)
            PASS string             pass_(string)
            STAT                    stat()
            LIST [msg]              list(msg = None)
            RETR msg                retr(msg)
            DELE msg                dele(msg)
            NOOP                    noop()
            RSET                    rset()
            QUIT                    quit()

    Optional Commands (some servers support these):
            RPOP name               rpop(name)
            APOP name digest        apop(name, digest)
            TOP msg n               top(msg, n)
            UIDL [msg]              uidl(msg = None)

    Raises one exception: 'error_proto'.

    Instantiate with:
            POP3(hostname, port=110)

    NB:     the POP protocol locks the mailbox from user
            authorization until QUIT, so be sure to get in, suck
            the messages, and quit, each time you access the
            mailbox.

            POP is a line-based protocol, which means large mail
            messages consume lots of python cycles reading them
            line-by-line.

            If it's available on your mail server, use IMAP4
            instead, it doesn't suffer from the two problems
            above.
    cCs^||_||_ti||f|ƒ|_|iidƒ|_d|_|iƒ|_	dS(Ntrbi(
thosttporttsockettcreate_connectiontsocktmakefiletfilet
_debuggingt_getresptwelcome(tselfRRttimeout((s/usr/lib/python2.6/poplib.pyt__init__Os			cCsA|idjodGt|ƒGHn|iid|tfƒdS(Nis*put*s%s%s(RtreprR	tsendalltCRLF(Rtline((s/usr/lib/python2.6/poplib.pyt_putlineYscCs.|iodGt|ƒGHn|i|ƒdS(Ns*cmd*(RRR(RR((s/usr/lib/python2.6/poplib.pyt_putcmd`s
cCsŚ|iiƒ}|idjodGt|ƒGHn|ptdƒ‚nt|ƒ}|dtjo|d |fS|dtjo|dd!|fS|d |fS(Nis*get*s-ERR EOFiţ˙˙˙ii˙˙˙˙(RtreadlineRRRtlenRtCR(RRtoctets((s/usr/lib/python2.6/poplib.pyt_getlineiscCs`|iƒ\}}|idjodGt|ƒGHn|d }|djot|ƒ‚n|S(Nis*resp*t+(RRRR(Rtresptotc((s/usr/lib/python2.6/poplib.pyR
{s

cCsž|iƒ}g}d}|iƒ\}}xd|djoV|d djo|d}|d}n||}|i|ƒ|iƒ\}}q-W|||fS(Nit.is..i(R
Rtappend(RRtlistRRR((s/usr/lib/python2.6/poplib.pyt_getlongresp†s



cCs|i|ƒ|iƒS(N(RR
(RR((s/usr/lib/python2.6/poplib.pyt	_shortcmd–s
cCs|i|ƒ|iƒS(N(RR$(RR((s/usr/lib/python2.6/poplib.pyt_longcmds
cCs|iS(N(R(R((s/usr/lib/python2.6/poplib.pyt
getwelcome¤scCs
||_dS(N(R(Rtlevel((s/usr/lib/python2.6/poplib.pytset_debuglevel¨scCs|id|ƒS(sVSend user name, return response

        (should indicate password required).
        sUSER %s(R%(Rtuser((s/usr/lib/python2.6/poplib.pyR*ŽscCs|id|ƒS(s Send password, return response

        (response includes message count, mailbox size).

        NB: mailbox is locked by server from here to 'quit()'
        sPASS %s(R%(Rtpswd((s/usr/lib/python2.6/poplib.pytpass_śscCsb|idƒ}|iƒ}|iodGt|ƒGHnt|dƒ}t|dƒ}||fS(s]Get mailbox status.

        Result is tuple of 2 ints (message count, mailbox size)
        tSTATs*stat*ii(R%tsplitRRtint(RtretvaltretstnumMessagestsizeMessages((s/usr/lib/python2.6/poplib.pytstatŔs
cCs,|dj	o|id|ƒS|idƒS(sRequest listing, return result.

        Result without a message number argument is in form
        ['response', ['mesg_num octets', ...], octets].

        Result when a message number argument is given is a
        single response: the "scan listing" for that message.
        sLIST %stLISTN(tNoneR%R&(Rtwhich((s/usr/lib/python2.6/poplib.pyR#Ís	
cCs|id|ƒS(soRetrieve whole message number 'which'.

        Result is in form ['response', ['line', ...], octets].
        sRETR %s(R&(RR7((s/usr/lib/python2.6/poplib.pytretrŰscCs|id|ƒS(sFDelete message number 'which'.

        Result is 'response'.
        sDELE %s(R%(RR7((s/usr/lib/python2.6/poplib.pytdeleăscCs
|idƒS(sXDoes nothing.

        One supposes the response indicates the server is alive.
        tNOOP(R%(R((s/usr/lib/python2.6/poplib.pytnoopëscCs
|idƒS(s(Unmark all messages marked for deletion.tRSET(R%(R((s/usr/lib/python2.6/poplib.pytrsetóscCs[y|idƒ}Wntj
o}|}nX|iiƒ|iiƒ|`|`|S(sDSignoff: commit changes on server, unlock mailbox, close connection.tQUIT(R%RRtcloseR	(RRtval((s/usr/lib/python2.6/poplib.pytquitřs

cCs|id|ƒS(sNot sure what this does.sRPOP %s(R%(RR*((s/usr/lib/python2.6/poplib.pytrpopss\+OK.*(<[^>]+>)cCsŒ|ii|iƒ}|ptdƒ‚nddk}|i|idƒ|ƒiƒ}dit	d„|ƒƒ}|i
d||fƒS(s Authorisation

        - only possible if server has supplied a timestamp in initial greeting.

        Args:
                user    - mailbox user;
                secret  - secret shared between client and server.

        NB: mailbox is locked by server from here to 'quit()'
        s!-ERR APOP not supported by serveri˙˙˙˙NitcSsdt|ƒS(s%02x(tord(tx((s/usr/lib/python2.6/poplib.pyt<lambda>ss
APOP %s %s(t	timestamptmatchRRthashlibtmd5tgrouptdigesttjointmapR%(RR*tsecrettmRIRL((s/usr/lib/python2.6/poplib.pytapops"cCs|id||fƒS(s­Retrieve message header of message number 'which'
        and first 'howmuch' lines of message body.

        Result is in form ['response', ['line', ...], octets].
        s	TOP %s %s(R&(RR7thowmuch((s/usr/lib/python2.6/poplib.pyttop#scCs,|dj	o|id|ƒS|idƒS(sěReturn message digest (unique id) list.

        If 'which', result contains unique id for that message
        in the form 'response mesgnum uid', otherwise result is
        the list ['response', ['mesgnum uid', ...], octets]
        sUIDL %stUIDLN(R6R%R&(RR7((s/usr/lib/python2.6/poplib.pytuidl,s
N(!RRt__doc__t	POP3_PORTRt_GLOBAL_DEFAULT_TIMEOUTRRRRR
R$R%R&R'R)R*R,R4R6R#R8R9R;R=RARBtretcompileRGRQRSRU(((s/usr/lib/python2.6/poplib.pyR$s4(													
	
									tPOP3_SSLcBsDeZdZeddd„Zd„Zd„Zd„Zd„Z	RS(sÂPOP3 client class over SSL connection

        Instantiate with: POP3_SSL(hostname, port=995, keyfile=None, certfile=None)

               hostname - the hostname of the pop3 over ssl server
               port - port number
               keyfile - PEM formatted file that countains your private key
               certfile - PEM formatted certificate chain file

            See the methods of the parent class POP3 for more documentation.
        cCsX||_||_||_||_d|_d}d|_x­ti|i|idti	ƒD]Š}|\}}}	}
}y,ti|||	ƒ|_|ii
|ƒWn?tij
o0}|io|iiƒnd|_q^nXPq^W|ipti|‚n|ii
dƒ|_ti|i|i|iƒ|_d|_|iƒ|_dS(NRCs!getaddrinfo returns an empty listiR(RRtkeyfiletcertfiletbufferR6R	RtgetaddrinfotSOCK_STREAMtconnectterrorR?R
Rtssltwrap_sockettsslobjRR
R(RRRR\R]tmsgtrestaftsocktypetprotot	canonnametsa((s/usr/lib/python2.6/poplib.pyRJs2						"
	
!	cCsE|iiƒ}t|ƒdjotdƒ‚n|i|7_dS(Nis-ERR EOF(RetreadRRR^(Rtlocalbuf((s/usr/lib/python2.6/poplib.pyt_fillBufferdscCsüd}tidƒ}|i|iƒ}x(|p |iƒ|i|iƒ}q*W|idƒ}|id|idƒ|_|idjodGt|ƒGHnt	|ƒ}|dt
jo|d |fS|dtjo|dd!|fS|d |fS(NRCs.*?\niis*get*iţ˙˙˙i˙˙˙˙(RYRZRHR^RoRKtsubRRRRR(RRt	renewlineRHR((s/usr/lib/python2.6/poplib.pyRjs"
cCsŠ|idjodGt|ƒGHn|t7}t|ƒ}xJ|djo<|ii|ƒ}||joPn||}||}q<WdS(Nis*put*i(RRRRRetwrite(RRtbytestsent((s/usr/lib/python2.6/poplib.pyR|s



cCsNy|idƒ}Wntj
o}|}nX|iiƒ|`|`|S(sDSignoff: commit changes on server, unlock mailbox, close connection.R>(R%RR	R?Re(RRR@((s/usr/lib/python2.6/poplib.pyRA‡s
N(
RRRVt
POP3_SSL_PORTR6RRoRRRA(((s/usr/lib/python2.6/poplib.pyR[=s			t__main__iiisMessage %d:s   s-----------------------(#RVRYRt__all__t	ExceptionRRWRuRtLFRRRctImportErrorR[R"RtsystargvtaR'R*R,R#R4tnumMsgst	totalSizetrangetiR8theaderRfRRRA(((s/usr/lib/python2.6/poplib.pyt<module>sB
˙T


	
	

ACC SHELL 2018