!C99Shell v. 2.0 [PHP 7 Update] [25.02.2019]!

Software: Apache/2.2.16 (Debian). PHP/5.3.3-7+squeeze19 

uname -a: Linux mail.tri-specialutilitydistrict.com 2.6.32-5-amd64 #1 SMP Tue May 13 16:34:35 UTC
2014 x86_64
 

uid=33(www-data) gid=33(www-data) groups=33(www-data) 

Safe-mode: OFF (not secure)

/usr/share/pyshared/twisted/protocols/   drwxr-xr-x
Free 129.96 GB of 142.11 GB (91.45%)
Home    Back    Forward    UPDIR    Refresh    Search    Buffer    Encoder    Tools    Proc.    FTP brute    Sec.    SQL    PHP-code    Update    Feedback    Self remove    Logout    


Viewing file:     postfix.py (3.23 KB)      -rw-r--r--
Select action/file-type:
(+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
# -*- test-case-name: twisted.test.test_postfix -*-
# Copyright (c) 2001-2009 Twisted Matrix Laboratories.
# See LICENSE for details.

"""
Postfix mail transport agent related protocols.
"""

import sys
import UserDict
import urllib

from twisted.protocols import basic
from twisted.protocols import policies
from twisted.internet import protocol, defer
from twisted.python import log

# urllib's quote functions just happen to match
# the postfix semantics.
def quote(s):
    return urllib.quote(s)

def unquote(s):
    return urllib.unquote(s)

class PostfixTCPMapServer(basic.LineReceiver, policies.TimeoutMixin):
    """Postfix mail transport agent TCP map protocol implementation.

    Receive requests for data matching given key via lineReceived,
    asks it's factory for the data with self.factory.get(key), and
    returns the data to the requester. None means no entry found.

    You can use postfix's postmap to test the map service::

    /usr/sbin/postmap -q KEY tcp:localhost:4242

    """

    timeout = 600
    delimiter = '\n'

    def connectionMade(self):
        self.setTimeout(self.timeout)

    def sendCode(self, code, message=''):
        "Send an SMTP-like code with a message."
        self.sendLine('%3.3d %s' % (code, message or ''))

    def lineReceived(self, line):
        self.resetTimeout()
        try:
            request, params = line.split(None, 1)
        except ValueError:
            request = line
            params = None
        try:
            f = getattr(self, 'do_' + request)
        except AttributeError:
            self.sendCode(400, 'unknown command')
        else:
            try:
                f(params)
            except:
                self.sendCode(400, 'Command %r failed: %s.' % (request, sys.exc_info()[1]))

    def do_get(self, key):
        if key is None:
            self.sendCode(400, 'Command %r takes 1 parameters.' % 'get')
        else:
            d = defer.maybeDeferred(self.factory.get, key)
            d.addCallbacks(self._cbGot, self._cbNot)
            d.addErrback(log.err)

    def _cbNot(self, fail):
        self.sendCode(400, fail.getErrorMessage())

    def _cbGot(self, value):
        if value is None:
            self.sendCode(500)
        else:
            self.sendCode(200, quote(value))

    def do_put(self, keyAndValue):
        if keyAndValue is None:
            self.sendCode(400, 'Command %r takes 2 parameters.' % 'put')
        else:
            try:
                key, value = keyAndValue.split(None, 1)
            except ValueError:
                self.sendCode(400, 'Command %r takes 2 parameters.' % 'put')
            else:
                self.sendCode(500, 'put is not implemented yet.')


class PostfixTCPMapDictServerFactory(protocol.ServerFactory,
                                     UserDict.UserDict):
    """An in-memory dictionary factory for PostfixTCPMapServer."""

    protocol = PostfixTCPMapServer

class PostfixTCPMapDeferringDictServerFactory(protocol.ServerFactory):
    """An in-memory dictionary factory for PostfixTCPMapServer."""

    protocol = PostfixTCPMapServer

    def __init__(self, data=None):
        self.data = {}
        if data is not None:
            self.data.update(data)

    def get(self, key):
        return defer.succeed(self.data.get(key))

:: Command execute ::

Enter:
 
Select:
 

:: Search ::
  - regexp 

:: Upload ::
 
[ Read-Only ]

:: Make Dir ::
 
[ Read-Only ]
:: Make File ::
 
[ Read-Only ]

:: Go Dir ::
 
:: Go File ::
 

--[ c99shell v. 2.0 [PHP 7 Update] [25.02.2019] maintained by KaizenLouie | C99Shell Github | Generation time: 0.007 ]--