Index: third_party/twisted_8_1/twisted/words/tap.py |
diff --git a/third_party/twisted_8_1/twisted/words/tap.py b/third_party/twisted_8_1/twisted/words/tap.py |
deleted file mode 100644 |
index 2a6656ee03b20e420afeb1ac321d597a114eda6b..0000000000000000000000000000000000000000 |
--- a/third_party/twisted_8_1/twisted/words/tap.py |
+++ /dev/null |
@@ -1,72 +0,0 @@ |
-# -*- test-case-name: twisted.words.test.test_tap -*- |
-# Copyright (c) 2001-2005 Twisted Matrix Laboratories. |
-# See LICENSE for details. |
-""" |
-Shiny new words service maker |
-""" |
- |
-import sys, socket |
- |
-from twisted.application import strports |
-from twisted.application.service import MultiService |
-from twisted.python import usage |
-from twisted import plugin |
- |
-from twisted.words import iwords, service |
-from twisted.cred import checkers, credentials, portal, strcred |
- |
-class Options(usage.Options, strcred.AuthOptionMixin): |
- supportedInterfaces = [credentials.IUsernamePassword] |
- optParameters = [ |
- ('hostname', None, socket.gethostname(), |
- 'Name of this server; purely an informative')] |
- |
- interfacePlugins = {} |
- plg = None |
- for plg in plugin.getPlugins(iwords.IProtocolPlugin): |
- assert plg.name not in interfacePlugins |
- interfacePlugins[plg.name] = plg |
- optParameters.append(( |
- plg.name + '-port', |
- None, None, |
- 'strports description of the port to bind for the ' + plg.name + ' server')) |
- del plg |
- |
- def __init__(self, *a, **kw): |
- usage.Options.__init__(self, *a, **kw) |
- self['groups'] = [] |
- |
- def opt_group(self, name): |
- """Specify a group which should exist |
- """ |
- self['groups'].append(name.decode(sys.stdin.encoding)) |
- |
- def opt_passwd(self, filename): |
- """ |
- Name of a passwd-style file. (This is for |
- backwards-compatibility only; you should use the --auth |
- command instead.) |
- """ |
- self.addChecker(checkers.FilePasswordDB(filename)) |
- |
-def makeService(config): |
- credCheckers = config.get('credCheckers', []) |
- wordsRealm = service.InMemoryWordsRealm(config['hostname']) |
- wordsPortal = portal.Portal(wordsRealm, credCheckers) |
- |
- msvc = MultiService() |
- |
- # XXX Attribute lookup on config is kind of bad - hrm. |
- for plgName in config.interfacePlugins: |
- port = config.get(plgName + '-port') |
- if port is not None: |
- factory = config.interfacePlugins[plgName].getFactory(wordsRealm, wordsPortal) |
- svc = strports.service(port, factory) |
- svc.setServiceParent(msvc) |
- |
- # This is bogus. createGroup is async. makeService must be |
- # allowed to return a Deferred or some crap. |
- for g in config['groups']: |
- wordsRealm.createGroup(g) |
- |
- return msvc |