add Linux_i686

This commit is contained in:
j 2014-05-17 18:11:40 +00:00 committed by Ubuntu
commit 95cd9b11f2
1644 changed files with 564260 additions and 0 deletions

View file

@ -0,0 +1,17 @@
# -*- test-case-name: twisted.test.test_plugin -*-
# Copyright (c) 2005 Divmod, Inc.
# Copyright (c) Twisted Matrix Laboratories.
# See LICENSE for details.
"""
Plugins go in directories on your PYTHONPATH named twisted/plugins:
this is the only place where an __init__.py is necessary, thanks to
the __path__ variable.
@author: Jp Calderone
@author: Glyph Lefkowitz
"""
from twisted.plugin import pluginPackagePaths
__path__.extend(pluginPackagePaths(__name__))
__all__ = [] # nothing to see here, move along, move along

View file

@ -0,0 +1,40 @@
# -*- test-case-name: twisted.test.test_strcred -*-
#
# Copyright (c) Twisted Matrix Laboratories.
# See LICENSE for details.
"""
Cred plugin for anonymous logins.
"""
from zope.interface import implements
from twisted import plugin
from twisted.cred.checkers import AllowAnonymousAccess
from twisted.cred.strcred import ICheckerFactory
from twisted.cred.credentials import IAnonymous
anonymousCheckerFactoryHelp = """
This allows anonymous authentication for servers that support it.
"""
class AnonymousCheckerFactory(object):
"""
Generates checkers that will authenticate an anonymous request.
"""
implements(ICheckerFactory, plugin.IPlugin)
authType = 'anonymous'
authHelp = anonymousCheckerFactoryHelp
argStringFormat = 'No argstring required.'
credentialInterfaces = (IAnonymous,)
def generateChecker(self, argstring=''):
return AllowAnonymousAccess()
theAnonymousCheckerFactory = AnonymousCheckerFactory()

View file

@ -0,0 +1,60 @@
# -*- test-case-name: twisted.test.test_strcred -*-
#
# Copyright (c) Twisted Matrix Laboratories.
# See LICENSE for details.
"""
Cred plugin for a file of the format 'username:password'.
"""
import sys
from zope.interface import implements
from twisted import plugin
from twisted.cred.checkers import FilePasswordDB
from twisted.cred.strcred import ICheckerFactory
from twisted.cred.credentials import IUsernamePassword, IUsernameHashedPassword
fileCheckerFactoryHelp = """
This checker expects to receive the location of a file that
conforms to the FilePasswordDB format. Each line in the file
should be of the format 'username:password', in plain text.
"""
invalidFileWarning = 'Warning: not a valid file'
class FileCheckerFactory(object):
"""
A factory for instances of L{FilePasswordDB}.
"""
implements(ICheckerFactory, plugin.IPlugin)
authType = 'file'
authHelp = fileCheckerFactoryHelp
argStringFormat = 'Location of a FilePasswordDB-formatted file.'
# Explicitly defined here because FilePasswordDB doesn't do it for us
credentialInterfaces = (IUsernamePassword, IUsernameHashedPassword)
errorOutput = sys.stderr
def generateChecker(self, argstring):
"""
This checker factory expects to get the location of a file.
The file should conform to the format required by
L{FilePasswordDB} (using defaults for all
initialization parameters).
"""
from twisted.python.filepath import FilePath
if not argstring.strip():
raise ValueError, '%r requires a filename' % self.authType
elif not FilePath(argstring).isfile():
self.errorOutput.write('%s: %s\n' % (invalidFileWarning, argstring))
return FilePasswordDB(argstring)
theFileCheckerFactory = FileCheckerFactory()

View file

@ -0,0 +1,68 @@
# -*- test-case-name: twisted.test.test_strcred -*-
#
# Copyright (c) Twisted Matrix Laboratories.
# See LICENSE for details.
"""
Cred plugin for an in-memory user database.
"""
from zope.interface import implements
from twisted import plugin
from twisted.cred.strcred import ICheckerFactory
from twisted.cred.checkers import InMemoryUsernamePasswordDatabaseDontUse
from twisted.cred.credentials import IUsernamePassword, IUsernameHashedPassword
inMemoryCheckerFactoryHelp = """
A checker that uses an in-memory user database.
This is only of use in one-off test programs or examples which
don't want to focus too much on how credentials are verified. You
really don't want to use this for anything else. It is a toy.
"""
class InMemoryCheckerFactory(object):
"""
A factory for in-memory credentials checkers.
This is only of use in one-off test programs or examples which don't
want to focus too much on how credentials are verified.
You really don't want to use this for anything else. It is, at best, a
toy. If you need a simple credentials checker for a real application,
see L{cred_passwd.PasswdCheckerFactory}.
"""
implements(ICheckerFactory, plugin.IPlugin)
authType = 'memory'
authHelp = inMemoryCheckerFactoryHelp
argStringFormat = 'A colon-separated list (name:password:...)'
credentialInterfaces = (IUsernamePassword,
IUsernameHashedPassword)
def generateChecker(self, argstring):
"""
This checker factory expects to get a list of
username:password pairs, with each pair also separated by a
colon. For example, the string 'alice:f:bob:g' would generate
two users, one named 'alice' and one named 'bob'.
"""
checker = InMemoryUsernamePasswordDatabaseDontUse()
if argstring:
pieces = argstring.split(':')
if len(pieces) % 2:
from twisted.cred.strcred import InvalidAuthArgumentString
raise InvalidAuthArgumentString(
"argstring must be in format U:P:...")
for i in range(0, len(pieces), 2):
username, password = pieces[i], pieces[i+1]
checker.addUser(username, password)
return checker
theInMemoryCheckerFactory = InMemoryCheckerFactory()

View file

@ -0,0 +1,51 @@
# -*- test-case-name: twisted.test.test_strcred -*-
#
# Copyright (c) Twisted Matrix Laboratories.
# See LICENSE for details.
"""
Cred plugin for ssh key login
"""
from zope.interface import implements
from twisted import plugin
from twisted.cred.strcred import ICheckerFactory
from twisted.cred.credentials import ISSHPrivateKey
sshKeyCheckerFactoryHelp = """
This allows SSH public key authentication, based on public keys listed in
authorized_keys and authorized_keys2 files in user .ssh/ directories.
"""
try:
from twisted.conch.checkers import SSHPublicKeyDatabase
class SSHKeyCheckerFactory(object):
"""
Generates checkers that will authenticate a SSH public key
"""
implements(ICheckerFactory, plugin.IPlugin)
authType = 'sshkey'
authHelp = sshKeyCheckerFactoryHelp
argStringFormat = 'No argstring required.'
credentialInterfaces = SSHPublicKeyDatabase.credentialInterfaces
def generateChecker(self, argstring=''):
"""
This checker factory ignores the argument string. Everything
needed to authenticate users is pulled out of the public keys
listed in user .ssh/ directories.
"""
return SSHPublicKeyDatabase()
theSSHKeyCheckerFactory = SSHKeyCheckerFactory()
except ImportError:
# if checkers can't be imported, then there should be no SSH cred plugin
pass

View file

@ -0,0 +1,138 @@
# -*- test-case-name: twisted.test.test_strcred -*-
#
# Copyright (c) Twisted Matrix Laboratories.
# See LICENSE for details.
"""
Cred plugin for UNIX user accounts.
"""
from zope.interface import implements
from twisted import plugin
from twisted.cred.strcred import ICheckerFactory
from twisted.cred.checkers import ICredentialsChecker
from twisted.cred.credentials import IUsernamePassword
from twisted.cred.error import UnauthorizedLogin
from twisted.internet import defer
def verifyCryptedPassword(crypted, pw):
if crypted[0] == '$': # md5_crypt encrypted
salt = '$1$' + crypted.split('$')[2]
else:
salt = crypted[:2]
try:
import crypt
except ImportError:
crypt = None
if crypt is None:
raise NotImplementedError("cred_unix not supported on this platform")
return crypt.crypt(pw, salt) == crypted
class UNIXChecker(object):
"""
A credentials checker for a UNIX server. This will check that
an authenticating username/password is a valid user on the system.
Does not work on Windows.
Right now this supports Python's pwd and spwd modules, if they are
installed. It does not support PAM.
"""
implements(ICredentialsChecker)
credentialInterfaces = (IUsernamePassword,)
def checkPwd(self, pwd, username, password):
try:
cryptedPass = pwd.getpwnam(username)[1]
except KeyError:
return defer.fail(UnauthorizedLogin())
else:
if cryptedPass in ('*', 'x'):
# Allow checkSpwd to take over
return None
elif verifyCryptedPassword(cryptedPass, password):
return defer.succeed(username)
def checkSpwd(self, spwd, username, password):
try:
cryptedPass = spwd.getspnam(username)[1]
except KeyError:
return defer.fail(UnauthorizedLogin())
else:
if verifyCryptedPassword(cryptedPass, password):
return defer.succeed(username)
def requestAvatarId(self, credentials):
username, password = credentials.username, credentials.password
try:
import pwd
except ImportError:
pwd = None
if pwd is not None:
checked = self.checkPwd(pwd, username, password)
if checked is not None:
return checked
try:
import spwd
except ImportError:
spwd = None
if spwd is not None:
checked = self.checkSpwd(spwd, username, password)
if checked is not None:
return checked
# TODO: check_pam?
# TODO: check_shadow?
return defer.fail(UnauthorizedLogin())
unixCheckerFactoryHelp = """
This checker will attempt to use every resource available to
authenticate against the list of users on the local UNIX system.
(This does not support Windows servers for very obvious reasons.)
Right now, this includes support for:
* Python's pwd module (which checks /etc/passwd)
* Python's spwd module (which checks /etc/shadow)
Future versions may include support for PAM authentication.
"""
class UNIXCheckerFactory(object):
"""
A factory for L{UNIXChecker}.
"""
implements(ICheckerFactory, plugin.IPlugin)
authType = 'unix'
authHelp = unixCheckerFactoryHelp
argStringFormat = 'No argstring required.'
credentialInterfaces = UNIXChecker.credentialInterfaces
def generateChecker(self, argstring):
"""
This checker factory ignores the argument string. Everything
needed to generate a user database is pulled out of the local
UNIX environment.
"""
return UNIXChecker()
theUnixCheckerFactory = UNIXCheckerFactory()

View file

@ -0,0 +1,18 @@
# Copyright (c) Twisted Matrix Laboratories.
# See LICENSE for details.
from twisted.application.service import ServiceMaker
TwistedSSH = ServiceMaker(
"Twisted Conch Server",
"twisted.conch.tap",
"A Conch SSH service.",
"conch")
TwistedManhole = ServiceMaker(
"Twisted Manhole (new)",
"twisted.conch.manhole_tap",
("An interactive remote debugger service accessible via telnet "
"and ssh and providing syntax coloring and basic line editing "
"functionality."),
"manhole")

View file

@ -0,0 +1,9 @@
# Copyright (c) Twisted Matrix Laboratories.
# See LICENSE for details.
from twisted.internet.endpoints import _SystemdParser, _TCP6ServerParser, _StandardIOParser
systemdEndpointParser = _SystemdParser()
tcp6ServerEndpointParser = _TCP6ServerParser()
stdioEndpointParser = _StandardIOParser()

View file

@ -0,0 +1,10 @@
# Copyright (c) Twisted Matrix Laboratories.
# See LICENSE for details.
from twisted.application.service import ServiceMaker
TwistedFTP = ServiceMaker(
"Twisted FTP",
"twisted.tap.ftp",
"An FTP server.",
"ftp")

View file

@ -0,0 +1,10 @@
# Copyright (c) Twisted Matrix Laboratories.
# See LICENSE for details.
from twisted.application.service import ServiceMaker
TwistedINETD = ServiceMaker(
"Twisted INETD Server",
"twisted.runner.inetdtap",
"An inetd(8) replacement.",
"inetd")

View file

@ -0,0 +1,38 @@
from zope.interface import implements
from twisted.lore.scripts.lore import IProcessor
from twisted.plugin import IPlugin
class _LorePlugin(object):
implements(IPlugin, IProcessor)
def __init__(self, name, moduleName, description):
self.name = name
self.moduleName = moduleName
self.description = description
DefaultProcessor = _LorePlugin(
"lore",
"twisted.lore.default",
"Lore format")
MathProcessor = _LorePlugin(
"mlore",
"twisted.lore.lmath",
"Lore format with LaTeX formula")
SlideProcessor = _LorePlugin(
"lore-slides",
"twisted.lore.slides",
"Lore for slides")
ManProcessor = _LorePlugin(
"man",
"twisted.lore.man2lore",
"UNIX Man pages")
NevowProcessor = _LorePlugin(
"nevow",
"twisted.lore.nevowlore",
"Nevow for Lore")

View file

@ -0,0 +1,10 @@
# Copyright (c) Twisted Matrix Laboratories.
# See LICENSE for details.
from twisted.application.service import ServiceMaker
TwistedMail = ServiceMaker(
"Twisted Mail",
"twisted.mail.tap",
"An email service",
"mail")

View file

@ -0,0 +1,10 @@
# Copyright (c) Twisted Matrix Laboratories.
# See LICENSE for details.
from twisted.application.service import ServiceMaker
TwistedManhole = ServiceMaker(
"Twisted Manhole (old)",
"twisted.tap.manhole",
"An interactive remote debugger service.",
"manhole-old")

View file

@ -0,0 +1,10 @@
# Copyright (c) Twisted Matrix Laboratories.
# See LICENSE for details.
from twisted.application.service import ServiceMaker
TwistedNames = ServiceMaker(
"Twisted DNS Server",
"twisted.names.tap",
"A domain name server.",
"dns")

View file

@ -0,0 +1,10 @@
# Copyright (c) Twisted Matrix Laboratories.
# See LICENSE for details.
from twisted.application.service import ServiceMaker
TwistedNews = ServiceMaker(
"Twisted News",
"twisted.news.tap",
"A news server.",
"news")

View file

@ -0,0 +1,10 @@
# Copyright (c) Twisted Matrix Laboratories.
# See LICENSE for details.
from twisted.application.service import ServiceMaker
TwistedPortForward = ServiceMaker(
"Twisted Port-Forwarding",
"twisted.tap.portforward",
"A simple port-forwarder.",
"portforward")

View file

@ -0,0 +1,45 @@
# Copyright (c) Twisted Matrix Laboratories.
# See LICENSE for details.
"""
Backwards-compatibility plugin for the Qt reactor.
This provides a Qt reactor plugin named C{qt} which emits a deprecation
warning and a pointer to the separately distributed Qt reactor plugins.
"""
import warnings
from twisted.application.reactors import Reactor, NoSuchReactor
wikiURL = 'http://twistedmatrix.com/trac/wiki/QTReactor'
errorMessage = ('qtreactor is no longer a part of Twisted due to licensing '
'issues. Please see %s for details.' % (wikiURL,))
class QTStub(Reactor):
"""
Reactor plugin which emits a deprecation warning on the successful
installation of its reactor or a pointer to further information if an
ImportError occurs while attempting to install it.
"""
def __init__(self):
super(QTStub, self).__init__(
'qt', 'qtreactor', 'QT integration reactor')
def install(self):
"""
Install the Qt reactor with a deprecation warning or try to point
the user to further information if it cannot be installed.
"""
try:
super(QTStub, self).install()
except (ValueError, ImportError):
raise NoSuchReactor(errorMessage)
else:
warnings.warn(
"Please use -r qt3 to import qtreactor",
category=DeprecationWarning)
qt = QTStub()

View file

@ -0,0 +1,42 @@
# Copyright (c) Twisted Matrix Laboratories.
# See LICENSE for details.
from twisted.application.reactors import Reactor
default = Reactor(
'default', 'twisted.internet.default',
'A reasonable default: poll(2) if available, otherwise select(2).')
select = Reactor(
'select', 'twisted.internet.selectreactor', 'select(2)-based reactor.')
wx = Reactor(
'wx', 'twisted.internet.wxreactor', 'wxPython integration reactor.')
gi = Reactor(
'gi', 'twisted.internet.gireactor', 'GObject Introspection integration reactor.')
gtk3 = Reactor(
'gtk3', 'twisted.internet.gtk3reactor', 'Gtk3 integration reactor.')
gtk = Reactor(
'gtk', 'twisted.internet.gtkreactor', 'Gtk1 integration reactor.')
gtk2 = Reactor(
'gtk2', 'twisted.internet.gtk2reactor', 'Gtk2 integration reactor.')
glib2 = Reactor(
'glib2', 'twisted.internet.glib2reactor',
'GLib2 event-loop integration reactor.')
glade = Reactor(
'debug-gui', 'twisted.manhole.gladereactor',
'Semi-functional debugging/introspection reactor.')
win32er = Reactor(
'win32', 'twisted.internet.win32eventreactor',
'Win32 WaitForMultipleObjects-based reactor.')
poll = Reactor(
'poll', 'twisted.internet.pollreactor', 'poll(2)-based reactor.')
epoll = Reactor(
'epoll', 'twisted.internet.epollreactor', 'epoll(4)-based reactor.')
cf = Reactor(
'cf' , 'twisted.internet.cfreactor',
'CoreFoundation integration reactor.')
kqueue = Reactor(
'kqueue', 'twisted.internet.kqreactor', 'kqueue(2)-based reactor.')
iocp = Reactor(
'iocp', 'twisted.internet.iocpreactor',
'Win32 IO Completion Ports-based reactor.')

View file

@ -0,0 +1,10 @@
# Copyright (c) Twisted Matrix Laboratories.
# See LICENSE for details.
from twisted.application.service import ServiceMaker
TwistedProcmon = ServiceMaker(
"Twisted Process Monitor",
"twisted.runner.procmontap",
("A process watchdog / supervisor"),
"procmon")

View file

@ -0,0 +1,10 @@
# Copyright (c) Twisted Matrix Laboratories.
# See LICENSE for details.
from twisted.application.service import ServiceMaker
TwistedSOCKS = ServiceMaker(
"Twisted SOCKS",
"twisted.tap.socks",
"A SOCKSv4 proxy service.",
"socks")

View file

@ -0,0 +1,10 @@
# Copyright (c) Twisted Matrix Laboratories.
# See LICENSE for details.
from twisted.application.service import ServiceMaker
TwistedTelnet = ServiceMaker(
"Twisted Telnet Shell Server",
"twisted.tap.telnet",
"A simple, telnet-based remote debugging service.",
"telnet")

View file

@ -0,0 +1,59 @@
from zope.interface import implements
from twisted.trial.itrial import IReporter
from twisted.plugin import IPlugin
class _Reporter(object):
implements(IPlugin, IReporter)
def __init__(self, name, module, description, longOpt, shortOpt, klass):
self.name = name
self.module = module
self.description = description
self.longOpt = longOpt
self.shortOpt = shortOpt
self.klass = klass
Tree = _Reporter("Tree Reporter",
"twisted.trial.reporter",
description="verbose color output (default reporter)",
longOpt="verbose",
shortOpt="v",
klass="TreeReporter")
BlackAndWhite = _Reporter("Black-And-White Reporter",
"twisted.trial.reporter",
description="Colorless verbose output",
longOpt="bwverbose",
shortOpt="o",
klass="VerboseTextReporter")
Minimal = _Reporter("Minimal Reporter",
"twisted.trial.reporter",
description="minimal summary output",
longOpt="summary",
shortOpt="s",
klass="MinimalReporter")
Classic = _Reporter("Classic Reporter",
"twisted.trial.reporter",
description="terse text output",
longOpt="text",
shortOpt="t",
klass="TextReporter")
Timing = _Reporter("Timing Reporter",
"twisted.trial.reporter",
description="Timing output",
longOpt="timing",
shortOpt=None,
klass="TimingTextReporter")
Subunit = _Reporter("Subunit Reporter",
"twisted.trial.reporter",
description="subunit output",
longOpt="subunit",
shortOpt=None,
klass="SubunitReporter")

View file

@ -0,0 +1,11 @@
# Copyright (c) Twisted Matrix Laboratories.
# See LICENSE for details.
from twisted.application.service import ServiceMaker
TwistedWeb = ServiceMaker(
"Twisted Web",
"twisted.web.tap",
("A general-purpose web server which can serve from a "
"filesystem or application resource."),
"web")

View file

@ -0,0 +1,43 @@
# Copyright (c) Twisted Matrix Laboratories.
# See LICENSE for details.
from zope.interface import classProvides
from twisted.plugin import IPlugin
from twisted.application.service import ServiceMaker
from twisted.words import iwords
NewTwistedWords = ServiceMaker(
"New Twisted Words",
"twisted.words.tap",
"A modern words server",
"words")
TwistedXMPPRouter = ServiceMaker(
"XMPP Router",
"twisted.words.xmpproutertap",
"An XMPP Router server",
"xmpp-router")
class RelayChatInterface(object):
classProvides(IPlugin, iwords.IProtocolPlugin)
name = 'irc'
def getFactory(cls, realm, portal):
from twisted.words import service
return service.IRCFactory(realm, portal)
getFactory = classmethod(getFactory)
class PBChatInterface(object):
classProvides(IPlugin, iwords.IProtocolPlugin)
name = 'pb'
def getFactory(cls, realm, portal):
from twisted.spread import pb
return pb.PBServerFactory(portal, True)
getFactory = classmethod(getFactory)