]> git.mxchange.org Git - quix0rs-apt-p2p.git/commitdiff
Rename project to apt-p2p.
authorCameron Dale <camrdale@gmail.com>
Thu, 6 Mar 2008 00:10:07 +0000 (16:10 -0800)
committerCameron Dale <camrdale@gmail.com>
Thu, 6 Mar 2008 00:10:07 +0000 (16:10 -0800)
39 files changed:
.gbp.conf
COPYRIGHT
README
apt-dht.conf
apt-dht.py
apt_dht/AptPackages.py
apt_dht/CacheManager.py
apt_dht/HTTPDownloader.py
apt_dht/HTTPServer.py
apt_dht/Hash.py
apt_dht/MirrorManager.py
apt_dht/__init__.py
apt_dht/apt_dht.py
apt_dht/apt_dht_conf.py
apt_dht/db.py
apt_dht/interfaces.py
apt_dht/util.py
apt_dht_Khashmir/DHT.py
apt_dht_Khashmir/__init__.py
apt_dht_Khashmir/util.py
debian/apt-dht.conf.sgml
debian/apt-dht.sgml
debian/changelog
debian/control
debian/copyright
debian/default
debian/dirs
debian/init.d
debian/install
debian/manpages
debian/postinst
debian/postrm
debian/prerm
debian/rules
docs/epydoc.config
docs/motivation/apt-dht-motivation.kilepr
docs/motivation/motivation.tex
setup.py
test.py

index 35aa406b65b0255558e6c7ccbf518ab56085c9b8..1e745f71fe2e0bcdbf524935e382a7a5c080bd04 100644 (file)
--- a/.gbp.conf
+++ b/.gbp.conf
@@ -1,7 +1,7 @@
 # Configuration file for git-buildpackage and friends
 
 [DEFAULT]
-debian-branch = apt-dht
+debian-branch = apt-p2p
 debian-tag = %(version)s
 
 [git-buildpackage]
index 93bc824ef80c2e73b46ae91cc0be06d9fc520da3..790dbe8dffc80ddad76de17e42b6c5705671c920 100644 (file)
--- a/COPYRIGHT
+++ b/COPYRIGHT
@@ -1,14 +1,14 @@
 Unless otherwise noted, all files are released under the GNU General
 Public License, exceptions are noted below.
 
-Apt-dht is Copyright (C) 2008 Cameron Dale <camrdale@gmail.com>
+Apt-p2p is Copyright (C) 2008 Cameron Dale <camrdale@gmail.com>
 
-Apt-dht is licensed under the terms of the GNU General Public License (GPL),
+Apt-p2p is licensed under the terms of the GNU General Public License (GPL),
 version 2 or later, as published by the Free Software Foundation.  See
 /usr/share/common-licenses/GPL, or <http://www.gnu.org/copyleft/gpl.txt>
 for the terms of the latest version of the GNU General Public License.
 
-The module apt_dht_Khashmir is a modified version of the original khashmir,
+The module apt_p2p_Khashmir is a modified version of the original khashmir,
 the source of which can be found at http://sourceforge.net/projects/khashmir.
 It is covered by the following copyright and permission notice:
 
diff --git a/README b/README
index a6b1d5fe20e2ca7821268c9da86d5999debe98bf..4c08494a344c348ed8547b42e8e696d0cea6b422 100644 (file)
--- a/README
+++ b/README
@@ -1,11 +1,11 @@
-Apt-DHT: a peer-to-peer proxy for apt downloads
+Apt-P2P: a peer-to-peer proxy for apt downloads
 
 ### Goal
 
-Similar to DebTorrent[1], Apt-DHT will act as a proxy between apt
+Similar to DebTorrent[1], Apt-P2P will act as a proxy between apt
 requests and a debian repository server, downloading any requested
 files from peers (if possible), but falling back to a direct HTTP
-download. Unlike DebTorrent, Apt-DHT will be simple, efficient, and
+download. Unlike DebTorrent, Apt-P2P will be simple, efficient, and
 fast.
 
 [1]: http://debtorrent.alioth.debian.org/
@@ -60,12 +60,12 @@ future.
 ### Installing
 
 There are detailed instructions on the web site[6] showing how to
-install the Apt-DHT program. If you have any trouble using the
+install the Apt-P2P program. If you have any trouble using the
 program, you can email me[7], or come and find me in the
 DebTorrent IRC channel (#debtorrent on OFTC[8]). If you think
 you've found a bug in the program, please let me know.
 
-[6]: http://www.camrdale.org/apt-dht.html
+[6]: http://www.camrdale.org/apt-p2p.html
 [7]: mailto:camrdale@gmail.com
 [8]: http://irc.oftc.net
 
@@ -80,7 +80,7 @@ libraries. Dealing with apt's repository files is handled by
 python-apt, the code for which is based on that of the
 apt-proxy[12] program.
 
-[9]: http://git.camrdale.org/?p=apt-dht.git;a=summary
+[9]: http://git.camrdale.org/?p=apt-p2p.git;a=summary
 [10]: http://khashmir.sourceforge.net/
 [11]: http://en.wikipedia.org/wiki/Kademlia
 [12]: http://apt-proxy.sourceforge.net/
index e9a481b251a6bde0a5f70e54c4d94e38f56211dd..9a12eed990d0afe4803ba3afdd89040914fe7869 100644 (file)
@@ -1,4 +1,4 @@
-# The apt-dht configuration file.
+# The apt-p2p configuration file.
 #
 # This is an ini-type configuration file, using sections identified by
 # square brackets. Values are specified on a single line using the '='
@@ -19,7 +19,7 @@
 PORT = 9977
     
 # Directory to store the downloaded files in
-CACHE_DIR = /var/cache/apt-dht
+CACHE_DIR = /var/cache/apt-p2p
     
 # Other directories containing packages to share with others
 # WARNING: all files in these directories will be hashed and available
@@ -42,14 +42,14 @@ KEY_REFRESH = 57m
 # It must be possile to do "from <DHT>.DHT import DHT" to get a class that
 # implements the IDHT interface. There should also be a similarly named
 # section below to specify the options for the DHT.
-DHT = apt_dht_Khashmir
+DHT = apt_p2p_Khashmir
 
 # Whether to only run the DHT (for providing only a bootstrap node)
 DHT-ONLY = no
 
-#######################  apt_dht_Khashmir  ############################
+#######################  apt_p2p_Khashmir  ############################
 # This is the default (included) DHT to use.
-[apt_dht_Khashmir]
+[apt_p2p_Khashmir]
 
 # To specify a different (UDP) port for the DHT to use.
 # If not specified here, the PORT value in the DEFAULT section will be used.
index 1d9933b47d39b280dbd205e347c0479d06fb8add..687320473f8065e81b6c575a4d7e9244ae39c1d9 100644 (file)
@@ -1,9 +1,9 @@
 #!/usr/bin/env python
 
-# Load apt-dht application
+# Load apt-p2p application
 #
-# There are two ways apt-dht can be started:
-#  1. twistd -y apt-dht
+# There are two ways apt-p2p can be started:
+#  1. twistd -y apt-p2p
 #     - twistd will load this file and execute the app
 #       in 'application' variable
 #  2. from command line
@@ -16,14 +16,14 @@ from twisted.internet import reactor
 from twisted.python import usage, log
 from twisted.web2 import channel
 
-from apt_dht.apt_dht_conf import config, version, DEFAULT_CONFIG_FILES
-from apt_dht.interfaces import IDHT
+from apt_p2p.apt_p2p_conf import config, version, DEFAULT_CONFIG_FILES
+from apt_p2p.interfaces import IDHT
 
 config_file = ''
 
 if __name__ == '__main__':
     # Parse command line parameters when started on command line
-    class AptDHTOptions(usage.Options):
+    class AptP2POptions(usage.Options):
         optFlags = [
             ['help', 'h', 'Print this help message'],
             ]
@@ -31,12 +31,12 @@ if __name__ == '__main__':
             ['config-file', 'c', '', "Configuration file"],
             ['log-file', 'l', '-', "File to log to, - for stdout"],
             ]
-        longdesc="apt-dht is a peer-to-peer downloader for apt users"
+        longdesc="apt-p2p is a peer-to-peer downloader for apt users"
         def opt_version(self):
-            print "apt-dht %s" % version.short()
+            print "apt-p2p %s" % version.short()
             sys.exit(0)
 
-    opts = AptDHTOptions()
+    opts = AptP2POptions()
     try:
         opts.parseOptions()
     except usage.UsageError, ue:
@@ -60,9 +60,9 @@ else:
     uid,gid = None,None
 
 log.msg('Starting application')
-application = service.Application("apt-dht", uid, gid)
+application = service.Application("apt-p2p", uid, gid)
 #print service.IProcess(application).processName
-#service.IProcess(application).processName = 'apt-dht'
+#service.IProcess(application).processName = 'apt-p2p'
 
 log.msg('Starting DHT')
 DHT = __import__(config.get('DEFAULT', 'DHT')+'.DHT', globals(), locals(), ['DHT'])
@@ -71,8 +71,8 @@ myDHT = DHT.DHT()
 
 if not config.getboolean('DEFAULT', 'DHT-only'):
     log.msg('Starting main application server')
-    from apt_dht.apt_dht import AptDHT
-    myapp = AptDHT(myDHT)
+    from apt_p2p.apt_p2p import AptP2P
+    myapp = AptP2P(myDHT)
     factory = myapp.getHTTPFactory()
     s = strports.service('tcp:'+config.get('DEFAULT', 'port'), factory)
     s.setServiceParent(application)
index c784b8b68bf7386139caccd8f814a2318ba2c13a..44c84b56bdb1b4e7b5158f300e6bb70bbd7e81d1 100644 (file)
@@ -285,7 +285,7 @@ class AptPackages:
             file = self.packages[f]
             if f.split('/')[-1] == "Release":
                 self.addRelease(f, file)
-            fake_uri='http://apt-dht'+f
+            fake_uri='http://apt-p2p'+f
             fake_dirname = '/'.join(fake_uri.split('/')[:-1])
             if f.endswith('Sources'):
                 deb_src_added = True
@@ -434,7 +434,7 @@ class TestAptPackages(unittest.TestCase):
     
     def setUp(self):
         """Initializes the cache with files found in the traditional apt location."""
-        self.client = AptPackages(FilePath('/tmp/.apt-dht'), 300)
+        self.client = AptPackages(FilePath('/tmp/.apt-p2p'), 300)
     
         # Find the largest index files that are for 'main'
         self.packagesFile = os.popen('ls -Sr /var/lib/apt/lists/ | grep -E "_main_.*Packages$" | tail -n 1').read().rstrip('\n')
index a0f6b6b48b4fa044252b8bab7fe64afb81a4b453..ccf13c5e308f9d105e29e003a6f43fc9019171db 100644 (file)
@@ -200,7 +200,7 @@ class CacheManager:
     @ivar all_dirs: all the directories that have cached files in them
     @type db: L{db.DB}
     @ivar db: the database to use for tracking files and hashes
-    @type manager: L{apt_dht.AptDHT}
+    @type manager: L{apt_p2p.AptP2P}
     @ivar manager: the main program object to send requests to
     @type scanning: C{list} of L{twisted.python.filepath.FilePath}
     @ivar scanning: all the directories that are currectly being scanned or waiting to be scanned
@@ -216,7 +216,7 @@ class CacheManager:
         @type other_dirs: C{list} of L{twisted.python.filepath.FilePath}
         @param other_dirs: the other directories that have shared files in them
             (optional, defaults to only using the cache directory)
-        @type manager: L{apt_dht.AptDHT}
+        @type manager: L{apt_p2p.AptP2P}
         @param manager: the main program object to send requests to
             (optional, defaults to not calling back with cached files)
         """
@@ -430,7 +430,7 @@ class TestMirrorManager(unittest.TestCase):
     client = None
     
     def setUp(self):
-        self.client = CacheManager(FilePath('/tmp/.apt-dht'))
+        self.client = CacheManager(FilePath('/tmp/.apt-p2p'))
         
     def tearDown(self):
         for p in self.pending_calls:
index 49bab65759ace1773447b2f48d613988f9b55cfa..eb369326b7f309e40c22bc39485fe8ae1fc6c671 100644 (file)
@@ -15,7 +15,7 @@ from twisted.web2 import version as web2_version
 from twisted.trial import unittest
 from zope.interface import implements
 
-from apt_dht_conf import version
+from apt_p2p_conf import version
 
 class Peer(ClientFactory):
     """A manager for all HTTP requests to a single peer.
@@ -158,7 +158,7 @@ class Peer(ClientFactory):
         """Get the common HTTP headers for all requests."""
         headers = http_headers.Headers()
         headers.setHeader('Host', self.host)
-        headers.setHeader('User-Agent', 'apt-dht/%s (twisted/%s twisted.web2/%s)' % 
+        headers.setHeader('User-Agent', 'apt-p2p/%s (twisted/%s twisted.web2/%s)' % 
                           (version.short(), twisted_version.short(), web2_version.short()))
         return headers
     
index 82a9babb2ca551f95d71056616661f38b9c4e186..d252a6386aef205ed397e83579559eb2a33139db 100644 (file)
@@ -10,7 +10,7 @@ from twisted.web2 import server, http, resource, channel, stream
 from twisted.web2 import static, http_headers, responsecode
 
 from policies import ThrottlingFactory
-from apt_dht_Khashmir.bencode import bencode
+from apt_p2p_Khashmir.bencode import bencode
 
 class FileDownloader(static.File):
     """Modified to make it suitable for apt requests.
@@ -19,7 +19,7 @@ class FileDownloader(static.File):
     freshness before being sent. Requests for unfound and stale files are
     forwarded to the main program for downloading.
     
-    @type manager: L{apt_dht.AptDHT}
+    @type manager: L{apt_p2p.AptP2P}
     @ivar manager: the main program to query 
     """
     
@@ -134,7 +134,7 @@ class TopLevel(resource.Resource):
     @ivar directory: the directory to check for cached files
     @type db: L{db.DB}
     @ivar db: the database to use for looking up files and hashes
-    @type manager: L{apt_dht.AptDHT}
+    @type manager: L{apt_p2p.AptP2P}
     @ivar manager: the main program object to send requests to
     @type factory: L{twisted.web2.channel.HTTPFactory} or L{policies.ThrottlingFactory}
     @ivar factory: the factory to use to server HTTP requests
@@ -150,7 +150,7 @@ class TopLevel(resource.Resource):
         @param directory: the directory to check for cached files
         @type db: L{db.DB}
         @param db: the database to use for looking up files and hashes
-        @type manager: L{apt_dht.AptDHT}
+        @type manager: L{apt_p2p.AptP2P}
         @param manager: the main program object to send requests to
         """
         self.directory = directory
index fb134576fbb01987e3a901f38e6e50d314ec6918..850f393d23b1548d22ffc4028401b6e572580e5d 100644 (file)
@@ -299,10 +299,10 @@ class TestHashObject(unittest.TestCase):
                 found = True
                 break
         self.failUnless(found == True)
-        h.set(hashType, 'c722df87e1acaa64b27aac4e174077afc3623540', '19')
+        h.set(hashType, '3bba0a5d97b7946ad2632002bf9caefe2cb18e00', '19')
         h.new()
-        h.update('apt-dht is the best')
-        self.failUnless(h.hexdigest() == 'c722df87e1acaa64b27aac4e174077afc3623540')
+        h.update('apt-p2p is the best')
+        self.failUnless(h.hexdigest() == '3bba0a5d97b7946ad2632002bf9caefe2cb18e00')
         self.failUnlessRaises(HashError, h.update, 'gfgf')
         self.failUnless(h.verify() == True)
         
@@ -315,10 +315,10 @@ class TestHashObject(unittest.TestCase):
                 found = True
                 break
         self.failUnless(found == True)
-        h.set(hashType, '2a586bcd1befc5082c872dcd96a01403', '19')
+        h.set(hashType, '6b5abdd30d7ed80edd229f9071d8c23c', '19')
         h.new()
-        h.update('apt-dht is the best')
-        self.failUnless(h.hexdigest() == '2a586bcd1befc5082c872dcd96a01403')
+        h.update('apt-p2p is the best')
+        self.failUnless(h.hexdigest() == '6b5abdd30d7ed80edd229f9071d8c23c')
         self.failUnlessRaises(HashError, h.update, 'gfgf')
         self.failUnless(h.verify() == True)
         
@@ -331,10 +331,10 @@ class TestHashObject(unittest.TestCase):
                 found = True
                 break
         self.failUnless(found == True)
-        h.set(hashType, '55b971f64d9772f733de03f23db39224f51a455cc5ad4c2db9d5740d2ab259a7', '19')
+        h.set(hashType, '47f2238a30a0340faa2bf01a9bdc42ba77b07b411cda1e24cd8d7b5c4b7d82a7', '19')
         h.new()
-        h.update('apt-dht is the best')
-        self.failUnless(h.hexdigest() == '55b971f64d9772f733de03f23db39224f51a455cc5ad4c2db9d5740d2ab259a7')
+        h.update('apt-p2p is the best')
+        self.failUnless(h.hexdigest() == '47f2238a30a0340faa2bf01a9bdc42ba77b07b411cda1e24cd8d7b5c4b7d82a7')
         self.failUnlessRaises(HashError, h.update, 'gfgf')
         self.failUnless(h.verify() == True)
 
index bccb2e53ff4bd3bec7fd6f83415163eb2308c13d..4c19f1070afb66e49d53250251342dad2a845e11 100644 (file)
@@ -133,7 +133,7 @@ class TestMirrorManager(unittest.TestCase):
     client = None
     
     def setUp(self):
-        self.client = MirrorManager(FilePath('/tmp/.apt-dht'), 300)
+        self.client = MirrorManager(FilePath('/tmp/.apt-p2p'), 300)
         
     def test_extractPath(self):
         """Test extracting the site and base directory from various mirrors."""
index b945cecc62c30ca08dbcd6d0d80ee973236e9dcd..356924f083b6cb9652d7d8fc322a506588b14c4b 100644 (file)
@@ -1,17 +1,17 @@
 
-"""The main apt-dht modules.
+"""The main apt-p2p modules.
 
-To run apt-dht, you probably want to do something like::
+To run apt-p2p, you probably want to do something like::
 
-  from apt_dht.apt_dht import AptDHT
-  myapp = AptDHT(myDHT)
+  from apt_p2p.apt_p2p import AptP2P
+  myapp = AptP2P(myDHT)
 
 where myDHT is a DHT that implements interfaces.IDHT.
 
 Diagram of the interaction between the given modules::
   
   +---------------+    +-----------------------------------+    +-------------
-  |     AptDHT    |    |               DHT                 |    |  Internet
+  |     AptP2P    |    |               DHT                 |    |  Internet
   |               |--->|join                            DHT|----|--\    
   |               |--->|loadConfig                         |    |  | Another
   |               |--->|getValue                           |    |  | Node
index 014ac51e69dafb4f3dd299be7551a2f42c8bbfe5..9e360a00d62acc08605e5957f4007003d216ed0a 100644 (file)
@@ -18,7 +18,7 @@ from twisted.web2 import server, http, http_headers, static
 from twisted.python import log, failure
 from twisted.python.filepath import FilePath
 
-from apt_dht_conf import config
+from apt_p2p_conf import config
 from PeerManager import PeerManager
 from HTTPServer import TopLevel
 from MirrorManager import MirrorManager
@@ -32,7 +32,7 @@ TORRENT_PIECES = 70
 
 download_dir = 'cache'
 
-class AptDHT:
+class AptP2P:
     """The main code object that does all of the work.
     
     Contains all of the sub-components that do all the low-level work, and
@@ -65,11 +65,11 @@ class AptDHT:
         @type dht: L{interfaces.IDHT}
         @param dht: the DHT instance to use
         """
-        log.msg('Initializing the main apt_dht application')
+        log.msg('Initializing the main apt_p2p application')
         self.cache_dir = FilePath(config.get('DEFAULT', 'cache_dir'))
         if not self.cache_dir.child(download_dir).exists():
             self.cache_dir.child(download_dir).makedirs()
-        self.db = DB(self.cache_dir.child('apt-dht.db'))
+        self.db = DB(self.cache_dir.child('apt-p2p.db'))
         self.dht = dht
         self.dht.loadConfig(config, config.get('DEFAULT', 'DHT'))
         self.dht.join().addCallbacks(self.joinComplete, self.joinError)
index f5d75a528555c166d0a7e53a5ae1c08083d57653..aaf20133aec6794c35d43f045047c4ec9cc7dccc 100644 (file)
@@ -22,7 +22,7 @@ class ConfigError(Exception):
     def __str__(self):
         return repr(self.message)
 
-version = versions.Version('apt-dht', 0, 0, 0)
+version = versions.Version('apt-p2p', 0, 0, 0)
 
 # Set the home parameter
 home = os.path.expandvars('${HOME}')
@@ -31,8 +31,8 @@ if home == '${HOME}' or not os.path.isdir(home):
     if not os.path.isdir(home):
         home = os.path.abspath(os.path.dirname(sys.argv[0]))
 
-DEFAULT_CONFIG_FILES=['/etc/apt-dht/apt-dht.conf',
-                      home + '/.apt-dht/apt-dht.conf']
+DEFAULT_CONFIG_FILES=['/etc/apt-p2p/apt-p2p.conf',
+                      home + '/.apt-p2p/apt-p2p.conf']
 
 DEFAULTS = {
 
@@ -40,7 +40,7 @@ DEFAULTS = {
     'PORT': '9977',
     
     # Directory to store the downloaded files in
-    'CACHE_DIR': home + '/.apt-dht/cache',
+    'CACHE_DIR': home + '/.apt-p2p/cache',
     
     # Other directories containing packages to share with others
     # WARNING: all files in these directories will be hashed and available
@@ -65,7 +65,7 @@ DEFAULTS = {
     # Which DHT implementation to use.
     # It must be possile to do "from <DHT>.DHT import DHT" to get a class that
     # implements the IDHT interface.
-    'DHT': 'apt_dht_Khashmir',
+    'DHT': 'apt_p2p_Khashmir',
 
     # Whether to only run the DHT (for providing only a bootstrap node)
     'DHT-ONLY': 'no',
@@ -120,7 +120,7 @@ DHT_DEFAULTS = {
     'SPEW': 'yes',
 }
 
-class AptDHTConfigParser(SafeConfigParser):
+class AptP2PConfigParser(SafeConfigParser):
     """Adds 'gettime' and 'getstringlist' to ConfigParser objects.
     
     @ivar time_multipliers: the 'gettime' suffixes and the multipliers needed
@@ -159,7 +159,7 @@ class AptDHTConfigParser(SafeConfigParser):
         return option.upper()
 
 # Initialize the default config parameters
-config = AptDHTConfigParser(DEFAULTS)
+config = AptP2PConfigParser(DEFAULTS)
 config.add_section(config.get('DEFAULT', 'DHT'))
 for k in DHT_DEFAULTS:
     config.set(config.get('DEFAULT', 'DHT'), k, DHT_DEFAULTS[k])
index fd265f6f36503ca31cf9d8a0dda11b8c78bc9f89..396f419da12b791d5f2ce0408ce6ce2e79a700e0 100644 (file)
@@ -310,12 +310,12 @@ class TestDB(unittest.TestCase):
     timeout = 5
     db = FilePath('/tmp/khashmir.db')
     hash = '\xca\xec\xb8\x0c\x00\xe7\x07\xf8~])\x8f\x9d\xe5_B\xff\x1a\xc4!'
-    directory = FilePath('/tmp/apt-dht/')
-    file = FilePath('/tmp/apt-dht/khashmir.test')
+    directory = FilePath('/tmp/apt-p2p/')
+    file = FilePath('/tmp/apt-p2p/khashmir.test')
     testfile = 'tmp/khashmir.test'
-    dirs = [FilePath('/tmp/apt-dht/top1'),
-            FilePath('/tmp/apt-dht/top2/sub1'),
-            FilePath('/tmp/apt-dht/top2/sub2/')]
+    dirs = [FilePath('/tmp/apt-p2p/top1'),
+            FilePath('/tmp/apt-p2p/top2/sub1'),
+            FilePath('/tmp/apt-p2p/top2/sub2/')]
 
     def setUp(self):
         if not self.file.parent().exists():
index 2c022c5a7d65e6f4b5bf2872bdc23b575c1de76a..b38de39b016738bb0bc79235e44a57657b7d7858 100644 (file)
@@ -1,5 +1,5 @@
 
-"""Some interfaces that are used by the apt-dht classes."""
+"""Some interfaces that are used by the apt-p2p classes."""
 
 from zope.interface import Interface
 
index 1f571e56572392d5cdca9679f7a9160dc6f2dba7..c334d1db9bd07026c5031db8f96a92937800d0f6 100644 (file)
@@ -1,5 +1,5 @@
 
-"""Some utitlity functions for use in the apt-dht program.
+"""Some utitlity functions for use in the apt-p2p program.
 
 @var isLocal: a compiled regular expression suitable for testing if an
     IP address is from a known local or private range
index 81c2696e1a3f0871b98fdea83409e9a5d310f45c..399babffa274df3218cdbb88b7b2cc85e907a5e1 100644 (file)
@@ -13,11 +13,11 @@ from twisted.python import log
 from twisted.trial import unittest
 from zope.interface import implements
 
-from apt_dht.interfaces import IDHT
+from apt_p2p.interfaces import IDHT
 from khashmir import Khashmir
 from bencode import bencode, bdecode
 
-khashmir_dir = 'apt-dht-Khashmir'
+khashmir_dir = 'apt-p2p-Khashmir'
 
 class DHTError(Exception):
     """Represents errors that occur in the DHT."""
@@ -51,7 +51,7 @@ class DHT:
     @type retrieved: C{dictionary}
     @ivar retrieved: keys are the keys for which getValue requests are active,
         values are list of the values returned so far
-    @type config_parser: L{apt_dht.apt_dht_conf.AptDHTConfigParser}
+    @type config_parser: L{apt_p2p.apt_p2p_conf.AptP2PConfigParser}
     @ivar config_parser: the configuration info for the main program
     @type section: C{string}
     @ivar section: the section of the configuration info that applies to the DHT
@@ -76,7 +76,7 @@ class DHT:
         self.retrieved = {}
     
     def loadConfig(self, config, section):
-        """See L{apt_dht.interfaces.IDHT}."""
+        """See L{apt_p2p.interfaces.IDHT}."""
         self.config_parser = config
         self.section = section
         self.config = {}
@@ -104,7 +104,7 @@ class DHT:
                 self.config[k] = self.config_parser.get(section, k)
     
     def join(self):
-        """See L{apt_dht.interfaces.IDHT}."""
+        """See L{apt_p2p.interfaces.IDHT}."""
         if self.config is None:
             raise DHTError, "configuration not loaded"
         if self.joining:
@@ -172,7 +172,7 @@ class DHT:
         return self.foundAddrs
         
     def leave(self):
-        """See L{apt_dht.interfaces.IDHT}."""
+        """See L{apt_p2p.interfaces.IDHT}."""
         if self.config is None:
             raise DHTError, "configuration not loaded"
         
@@ -201,7 +201,7 @@ class DHT:
         return key
 
     def getValue(self, key):
-        """See L{apt_dht.interfaces.IDHT}."""
+        """See L{apt_p2p.interfaces.IDHT}."""
         if self.config is None:
             raise DHTError, "configuration not loaded"
         if not self.joined:
@@ -232,7 +232,7 @@ class DHT:
             del self.retrieving[key]
 
     def storeValue(self, key, value):
-        """See L{apt_dht.interfaces.IDHT}."""
+        """See L{apt_p2p.interfaces.IDHT}."""
         if self.config is None:
             raise DHTError, "configuration not loaded"
         if not self.joined:
index cd6f7e87e1576f96e97e8042753c61b13e1c96b5..594e80a1688204f4e60397b3424de3e8df1a23fc 100644 (file)
@@ -1,5 +1,5 @@
 
-"""The apt-dht implementation of the Khashmir DHT.
+"""The apt-p2p implementation of the Khashmir DHT.
 
 These modules implement a modified Khashmir, which is a kademlia-like
 Distributed Hash Table available at::
@@ -8,11 +8,11 @@ Distributed Hash Table available at::
 
 The protocol for the implementation's communication is described here::
 
-  http://www.camrdale.org/apt-dht/protocol.html
+  http://www.camrdale.org/apt-p2p/protocol.html
 
 To run the DHT you probably want to do something like::
 
-  from apt_dht_Khashmir import DHT
+  from apt_p2p_Khashmir import DHT
   myDHT = DHT.DHT()
   myDHT.loadConfig(config, section)
   myDHT.join()
index 2b109199c5c7f63c694d879150371efcacecd429..52b6e9794ce9f40a2431b1518242a553ed271865 100644 (file)
@@ -1,7 +1,7 @@
 ## Copyright 2002-2003 Andrew Loewenstern, All Rights Reserved
 # see LICENSE.txt for license information
 
-"""Some utitlity functions for use in apt-dht's khashmir DHT."""
+"""Some utitlity functions for use in apt-p2p's khashmir DHT."""
 
 from twisted.trial import unittest
 
index e1da2a34d9f3a26c317edf51563392d2694919bd..301ccb1a5d7b7ec11a9e049b61600a9c2a6f1f1f 100644 (file)
@@ -10,8 +10,8 @@
   <!ENTITY dhsection   "<manvolnum>5</manvolnum>">
   <!ENTITY dhemail     "<email>camrdale@gmail.com</email>">
   <!ENTITY dhusername  "Cameron Dale">
-  <!ENTITY dhucpackage "<refentrytitle>apt-dht.conf</refentrytitle>">
-  <!ENTITY dhpackage   "apt-dht">
+  <!ENTITY dhucpackage "<refentrytitle>apt-p2p.conf</refentrytitle>">
+  <!ENTITY dhpackage   "apt-p2p">
 
   <!ENTITY debian      "<productname>Debian</productname>">
   <!ENTITY gnu         "<acronym>GNU</acronym>">
@@ -51,8 +51,8 @@
     <para>Configuration information for &dhpackage; is searched for in the following order, with later
       entries overriding former ones:
       <OrderedList>
-        <ListItem><para>/etc/apt-dht/apt-dht.conf</para></ListItem>
-        <ListItem><para>${HOME}/.apt-dht/apt-dht.conf</para></ListItem>
+        <ListItem><para>/etc/apt-p2p/apt-p2p.conf</para></ListItem>
+        <ListItem><para>${HOME}/.apt-p2p/apt-p2p.conf</para></ListItem>
         <ListItem><para>the location specified by the config-file parameter</para></ListItem>
       </OrderedList>
     </para>
@@ -97,7 +97,7 @@
            <term><option>CACHE_DIR = <replaceable>directory</replaceable></option></term>
             <listitem>
              <para>The <replaceable>directory</replaceable> to store the downloaded files in.
-               (Default is ${HOME}/.apt-dht/cache.)</para>
+               (Default is ${HOME}/.apt-p2p/cache.)</para>
            </listitem>
          </varlistentry>
          <varlistentry>
              <para>The DHT implementation to use. It must be possile to do (in python)
                ``from &lt;DHT&gt;.DHT import DHT'' to get a class that implements the IDHT interface.
                There should also be a similarly named section below to specify the options for the DHT.
-               (Default is `apt_dht_Khashmir')</para>
+               (Default is `apt_p2p_Khashmir')</para>
            </listitem>
          </varlistentry>
          <varlistentry>
        </variablelist>
       </refsect2>
       <refsect2>
-       <title>apt_dht_Khashmir</title>
+       <title>apt_p2p_Khashmir</title>
 
         <variablelist>
          <varlistentry>
     <title>SEE ALSO</title>
 
     <para>
-      <citerefentry><refentrytitle>apt-dht</refentrytitle><manvolnum>8</manvolnum></citerefentry>
+      <citerefentry><refentrytitle>apt-p2p</refentrytitle><manvolnum>8</manvolnum></citerefentry>
     </para>
   </refsect1>
   <refsect1>
index c368bc858943fdefd9e871c21947eb3a31e80728..aa106a8d6c81f2981372deba7c075a5d15d8133b 100644 (file)
@@ -10,8 +10,8 @@
   <!ENTITY dhsection   "<manvolnum>8</manvolnum>">
   <!ENTITY dhemail     "<email>camrdale@gmail.com</email>">
   <!ENTITY dhusername  "Cameron Dale">
-  <!ENTITY dhucpackage "<refentrytitle>apt-dht</refentrytitle>">
-  <!ENTITY dhpackage   "apt-dht">
+  <!ENTITY dhucpackage "<refentrytitle>apt-p2p</refentrytitle>">
+  <!ENTITY dhpackage   "apt-p2p">
 
   <!ENTITY debian      "<productname>Debian</productname>">
   <!ENTITY gnu         "<acronym>GNU</acronym>">
@@ -47,7 +47,7 @@
   <refsynopsisdiv>
     <para>Normally &dhpackage; is run from init.d using <command>twistd</command>, in which case no &dhpackage;
         options can be specified on the command-line, and all configuration variables are
-        read from the default config file locations of ${HOME}/.apt-dht.conf and /etc/apt-dht/apt-dht.conf.
+        read from the default config file locations of ${HOME}/.apt-p2p.conf and /etc/apt-p2p/apt-p2p.conf.
         The command is then:</para>
     <cmdsynopsis>
       <command>twistd</command> <arg choice="Req">-y /path/to/&dhpackage;</arg> <arg rep="Repeat"><option>twistd options</option></arg>
@@ -66,7 +66,7 @@
     <para>This manual page documents briefly the options available to the &dhpackage; command.</para>
 
     <para><command>&dhpackage;</command> is a helper for downloading Debian packages files with APT.
-        It will download any needed files from other Apt-DHT peers in a
+        It will download any needed files from other Apt-P2P peers in a
         bittorrent-like manner, and so reduce the strain on the Debian mirrors.</para>
 
     <para>In order for APT to send it's requests to &dhpackage;, the source.list entries must be modified to point to the
@@ -95,8 +95,8 @@
         <term><option>-c <replaceable>filename</replaceable>,</option> <option>--configfile=<replaceable>filename</replaceable></option></term>
          <listitem>
           <para>the <replaceable>filename</replaceable> to use for the configuration file, options found in this
-              file are combined with those in ${HOME}/.apt-dht/apt-dht.conf and /etc/apt-dht/apt-dht.conf
-              (see <citerefentry><refentrytitle>apt-dht.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry> for the format of the file)</para>
+              file are combined with those in ${HOME}/.apt-p2p/apt-p2p.conf and /etc/apt-p2p/apt-p2p.conf
+              (see <citerefentry><refentrytitle>apt-p2p.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry> for the format of the file)</para>
         </listitem>
       </varlistentry>
       <varlistentry>
          <listitem>
           <para>the <replaceable>filename</replaceable> to print log messages to,
               or `-' to log to standard output, if not specified then
-              /var/log/apt-dht.log will be used</para>
+              /var/log/apt-p2p.log will be used</para>
         </listitem>
       </varlistentry>
       <varlistentry>
     <title>SEE ALSO</title>
 
     <para>
-      <citerefentry><refentrytitle>apt-dht.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
+      <citerefentry><refentrytitle>apt-p2p.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
       <citerefentry><refentrytitle>twistd</refentrytitle><manvolnum>1</manvolnum></citerefentry>
     </para>
   </refsect1>
index a102107fd367557fbf5244f5e8b97cc6a244e321..fcf86f4af85313a1ce68cab6ac79fd30ee7ecb59 100644 (file)
@@ -1,4 +1,4 @@
-apt-dht (0.0.1~2.gbpc98e84) UNRELEASED; urgency=low
+apt-p2p (0.0.1~2.gbpc98e84) UNRELEASED; urgency=low
 
   ** SNAPSHOT build @c98e840e6f67e2971ffc26a698d76c09a919db91 **
 
@@ -19,7 +19,7 @@ apt-dht (0.0.1~2.gbpc98e84) UNRELEASED; urgency=low
 
  -- Cameron Dale <camrdale@gmail.com>  Wed, 20 Feb 2008 11:35:14 -0800
 
-apt-dht (0.0.0) unstable; urgency=low
+apt-p2p (0.0.0) unstable; urgency=low
 
   * Initial release.
 
index b10043f1e3ef1799b24e5db620ded3259940271c..928e9a16230f8ad463984c09d67186554c83376c 100644 (file)
@@ -1,31 +1,31 @@
-Source: apt-dht
+Source: apt-p2p
 Section: net
 Priority: optional
 Maintainer: Cameron Dale <camrdale@gmail.com>
-Homepage: http://www.camrdale.org/apt-dht.html
+Homepage: http://www.camrdale.org/apt-p2p.html
 Standards-Version: 3.7.3
 Build-Depends: debhelper (>= 5.0.37.2)
 Build-Depends-Indep: python-dev, python-support (>= 0.5.4), docbook-to-man, python-debian (>= 0.1.4)
-Vcs-Git: git://git.camrdale.org/git/apt-dht.git
-Vcs-Browser: http://git.camrdale.org/?p=apt-dht.git;a=summary
+Vcs-Git: git://git.camrdale.org/git/apt-p2p.git
+Vcs-Browser: http://git.camrdale.org/?p=apt-p2p.git;a=summary
 XS-Dm-Upload-Allowed: yes
 
-Package: apt-dht
+Package: apt-p2p
 Architecture: all
 Depends: ${python:Depends}, python-twisted-web2 (>= 0.2), adduser, python-debian (>= 0.1.4), python-apt (>= 0.6.20), python-pysqlite2 (>= 2.1)
-Provides: python-apt-dht, python-apt-dht-khashmir
+Provides: python-apt-p2p, python-apt-p2p-khashmir
 Description: apt helper for peer-to-peer downloads of Debian packages
- Apt-DHT is a helper for downloading Debian packages files with APT.
- It will download any needed files from other Apt-DHT peers in a
+ Apt-P2P is a helper for downloading Debian packages files with APT.
+ It will download any needed files from other Apt-P2P peers in a
  bittorrent-like manner, and so reduce the strain on the Debian mirrors.
  .
- The Apt-DHT daemon runs automatically on startup and listens for
+ The Apt-P2P daemon runs automatically on startup and listens for
  requests from APT for files, as well as maintaining membership in a
  Distributed Hash Table (DHT). For any files which have a hash
  available (most files), peers that have the file are looked for in the
  DHT. The file can then be downloaded from them, using the uploading
  bandwidth of other peers while reducing the demand on the Debian mirror
- network. However, if a package cannot be found on any peers, Apt-DHT
+ network. However, if a package cannot be found on any peers, Apt-P2P
  will fall back to downloading from a mirror to ensure all packages are
  downloaded. Once downloaded, the file is hash checked and added to the
  DHT so that other peers can download it without the mirror.
index 4598a40d5d66ff2be8ae616d26b6bd5e90b5220d..14f9ef3d8c2128598e503bc82e130b7fedd4f7c9 100644 (file)
@@ -1,14 +1,14 @@
-This is the Debian GNU/Linux packaged version of apt-dht
+This is the Debian GNU/Linux packaged version of apt-p2p
 
 The package is written and maintained by Cameron Dale.
 
 The original source can always be found at:
-    http://ftp.debian.org/debian/pool/main/a/apt-dht/
+    http://ftp.debian.org/debian/pool/main/a/apt-p2p/
 
 The project homepage is at
-  http://www.camrdale.org/apt-dht.html
+  http://www.camrdale.org/apt-p2p.html
 
-Apt-dht is Copyright (C) 2008 Cameron Dale <camrdale@gmail.com>
+Apt-p2p is Copyright (C) 2008 Cameron Dale <camrdale@gmail.com>
 
 This software is released under the terms of the GNU General Public License,
 with the exceptions noted below.
@@ -16,7 +16,7 @@ with the exceptions noted below.
 On Debian systems, the complete text of the GNU General Public License
 can be found in /usr/share/common-licenses/GPL.
 
-The module apt_dht_Khashmir is a modified version of the original khashmir,
+The module apt_p2p_Khashmir is a modified version of the original khashmir,
 the source of which can be found at http://sourceforge.net/projects/khashmir.
 It is covered by the following copyright and permission notice:
 
index 490116c007e4fcecc73e2268cc4ad2be96f9a10e..08f503f98bcc08c1d5374534a32b205ca75c9a9f 100644 (file)
@@ -1,7 +1,7 @@
-# apt-dht configuration
+# apt-p2p configuration
 
 ## Filename to store pid of process
-#pidfile=/var/run/apt-dht/apt-dht.pid 
+#pidfile=/var/run/apt-p2p/apt-p2p.pid 
 
 ## Log file
-#logfile=/var/log/apt-dht.log
+#logfile=/var/log/apt-p2p.log
index 74bf09f587c5f9a1139c30b4ec5562f1e96ba4f9..28f10711fbac288f1543e0732ea51fdc8649e3b9 100644 (file)
@@ -1,6 +1,6 @@
 etc/default
 etc/init.d
-usr/share/doc/apt-dht
+usr/share/doc/apt-p2p
 usr/sbin
-var/cache/apt-dht
-var/lib/apt-dht
+var/cache/apt-p2p
+var/lib/apt-p2p
index 1543442d1280da9915b7fdd00730a0e0781a53c4..2faf531e9de4e09a03d968337b5f4c245a2854bd 100755 (executable)
@@ -1,7 +1,7 @@
 #!/bin/sh
 
 ### BEGIN INIT INFO
-# Provides:          apt-dht
+# Provides:          apt-p2p
 # Required-Start:    $network
 # Required-Stop:
 # Should-Start:      $named
@@ -9,25 +9,25 @@
 # Default-Start:     2 3 4 5
 # Default-Stop:      0 1 6
 # Short-Description: apt helper for peer-to-peer downloads of Debian packages
-# Description:       Apt-DHT is a helper for downloading Debian packages
+# Description:       Apt-p2p is a helper for downloading Debian packages
 #                    files with APT. It will download any needed files from
-#                    other Apt-DHT peers in a bittorrent-like manner, and so
+#                    other Apt-p2p peers in a bittorrent-like manner, and so
 #                    reduce the strain on the Debian mirrors.
 ### END INIT INFO
 
-# /etc/init.d/apt-dht: start and stop the apt-dht daemon
+# /etc/init.d/apt-p2p: start and stop the apt-p2p daemon
 
 PATH=/sbin:/bin:/usr/sbin:/usr/bin
 
-rundir=/var/run/apt-dht
-pidfile=$rundir/apt-dht.pid 
-logfile=/var/log/apt-dht.log
-application=/usr/sbin/apt-dht
+rundir=/var/run/apt-p2p
+pidfile=$rundir/apt-p2p.pid 
+logfile=/var/log/apt-p2p.log
+application=/usr/sbin/apt-p2p
 twistd=/usr/bin/twistd
-user=aptdht
+user=aptp2p
 group=nogroup
 
-[ -r /etc/default/apt-dht ] && . /etc/default/apt-dht
+[ -r /etc/default/apt-p2p ] && . /etc/default/apt-p2p
 
 test -x $twistd || exit 0
 test -r $application || exit 0
@@ -50,7 +50,7 @@ alive()
 
 case "$1" in
     start)
-        echo -n "Starting apt-dht"
+        echo -n "Starting apt-p2p"
         [ ! -d $rundir ] && mkdir $rundir
         [ ! -f $logfile ] && touch $logfile
         chown $user $rundir $logfile 
@@ -64,7 +64,7 @@ case "$1" in
     ;;
 
     stop)
-        echo -n "Stopping apt-dht"
+        echo -n "Stopping apt-p2p"
         start-stop-daemon --stop --quiet --pidfile $pidfile
         #
         # Continue stopping until daemon finished or time over
@@ -100,7 +100,7 @@ case "$1" in
     ;;
 
     *)
-        echo "Usage: /etc/init.d/apt-dht {start|stop|restart|force-reload}" >&2
+        echo "Usage: /etc/init.d/apt-p2p {start|stop|restart|force-reload}" >&2
         exit 1
     ;;
 esac
index 4ea6423ccdc49333ab4e5ce913cae2512733cbf0..4ef453def28c7ddd3eb9a0a49098e5c92422d715 100644 (file)
@@ -1 +1 @@
-apt-dht.conf etc/apt-dht
+apt-p2p.conf etc/apt-p2p
index 31493df4ae1f17a12b19eaa551f94cfa1a6e0a50..b10fc0ddc936975671969f1c190fb4bd133d0963 100644 (file)
@@ -1,2 +1,2 @@
-debian/apt-dht.8
-debian/apt-dht.conf.5
+debian/apt-p2p.8
+debian/apt-p2p.conf.5
index 636f90f207e877bea04becb2b260098e2c208411..eb87fd291545b97e6c2cffbaf58a73c452f98869 100644 (file)
@@ -1,5 +1,5 @@
 #! /bin/sh
-# postinst script for apt-dht
+# postinst script for apt-p2p
 #
 # see: dh_installdeb(1)
 
@@ -25,17 +25,17 @@ set -e
 
 case "$1" in
     configure)
-               if ! getent passwd aptdht >/dev/null; then
+               if ! getent passwd aptp2p >/dev/null; then
                        adduser --quiet --system --no-create-home \
-                                       --home /var/cache/apt-dht --disabled-password \
+                                       --home /var/cache/apt-p2p --disabled-password \
                                        --disabled-login --shell /bin/false --ingroup nogroup \
-                                       aptdht
+                                       aptp2p
                fi
                
-               touch /var/log/apt-dht.log
-               chown aptdht:adm /var/log/apt-dht.log
-               mkdir -p /var/cache/apt-dht
-               chown -R aptdht:adm /var/cache/apt-dht
+               touch /var/log/apt-p2p.log
+               chown aptp2p:adm /var/log/apt-p2p.log
+               mkdir -p /var/cache/apt-p2p
+               chown -R aptp2p:adm /var/cache/apt-p2p
     ;;
 
     abort-upgrade|abort-remove|abort-deconfigure)
index 8ff06f8c7009c964daeba1ed05035f9022be8c9f..b604ced74f69d09abe3a3c155ecbb94d267909c4 100644 (file)
@@ -1,5 +1,5 @@
 #! /bin/sh
-# postrm script for apt-dht
+# postrm script for apt-p2p
 #
 # see: dh_installdeb(1)
 
@@ -19,13 +19,13 @@ set -e
 
 if test "$1" = "purge"; then
   # Remove the logs
-  rm -rf /var/log/apt-dht.log*
+  rm -rf /var/log/apt-p2p.log*
   
-  echo Purging apt-dht cache directory
-  rm -rf /var/cache/apt-dht
+  echo Purging apt-p2p cache directory
+  rm -rf /var/cache/apt-p2p
 
-  if id aptdht >/dev/null; then
-    deluser aptdht
+  if id aptp2p >/dev/null; then
+    deluser aptp2p
   fi
 fi
 
index f148cf53f02beb0c2068384418b15c97cc53bc74..9acdfc42ce244384d62973efe28810181b2715e0 100644 (file)
@@ -16,7 +16,7 @@ set -e
 # for details, see http://www.debian.org/doc/debian-policy/ or
 # the debian-policy package
 
-PACKAGE="apt-dht"
+PACKAGE="apt-p2p"
 
 dpkg --listfiles $PACKAGE |
         awk '$0~/\.py$/ {print $0"c\n" $0"o"}' |
index d9b19437d95397b6d4e5a6b49ad7b36adb348beb..456af9b6c86470caa4541f26cc0dd5d3c7ee1b4e 100755 (executable)
@@ -8,7 +8,7 @@
 PYTHON_VERSION=$(shell /usr/bin/python -V 2>&1 | /usr/bin/perl -le 'print "$$1.$$2" if <> =~m/^Python\s+(\d+)\.(\d+)(\.\d+)*/')
 
 
-build-stamp: apt-dht.8 apt-dht.conf.5
+build-stamp: apt-p2p.8 apt-p2p.conf.5
        dh_testdir
        touch build-stamp
 
@@ -18,7 +18,7 @@ build-stamp: apt-dht.8 apt-dht.conf.5
 clean:
        dh_testdir
        dh_testroot
-       rm -rf build/ apt_dht/*.pyc apt_dht_Khashmir/*.pyc *.pyc
+       rm -rf build/ apt_p2p/*.pyc apt_p2p_Khashmir/*.pyc *.pyc
        rm -f debian/*.[58]
        rm -f build-stamp
        dh_clean
@@ -31,14 +31,14 @@ install: build-stamp
        dh_clean -k
        dh_installdirs
 
-       ./setup.py install --prefix=$(CURDIR)/debian/apt-dht/usr \
-               --install-lib=$(CURDIR)/debian/apt-dht/usr/share/python-support/apt-dht \
-               --install-scripts=$(CURDIR)/debian/apt-dht/usr/sbin
+       ./setup.py install --prefix=$(CURDIR)/debian/apt-p2p/usr \
+               --install-lib=$(CURDIR)/debian/apt-p2p/usr/share/python-support/apt-p2p \
+               --install-scripts=$(CURDIR)/debian/apt-p2p/usr/sbin
 
        # Remove the generated .pyc files
-       ( cd debian/apt-dht/usr/share/python-support/apt-dht/apt_dht_Khashmir && \
+       ( cd debian/apt-p2p/usr/share/python-support/apt-p2p/apt_p2p_Khashmir && \
          rm -f *.pyc  && \
-         cd ../apt_dht && \
+         cd ../apt_p2p && \
          rm -f *.pyc )
 
 # Build architecture-independent files here.
@@ -49,7 +49,7 @@ binary-indep: install
        dh_installman
        
        # Remove the .py from the end of each of these
-       mv debian/apt-dht/usr/sbin/apt-dht.py debian/apt-dht/usr/sbin/apt-dht
+       mv debian/apt-p2p/usr/sbin/apt-p2p.py debian/apt-p2p/usr/sbin/apt-p2p
 
        dh_installchangelogs 
        dh_install
index 7435dd020765836608fb969b6f154c28716dd80c..593c5ab1d72e667ebf843400a948b27b61198c1f 100644 (file)
@@ -3,7 +3,7 @@
 # The list of objects to document.  Objects can be named using
 # dotted names, module filenames, or package directory names.
 # Alases for this option include "objects" and "values".
-modules: apt_dht apt_dht_Khashmir test.py
+modules: apt_p2p apt_p2p_Khashmir test.py
 
 # The type of output that should be generated.  Should be one
 # of: html, text, latex, dvi, ps, pdf.
@@ -73,14 +73,14 @@ include-log: yes
 ### Output options
 
 # The documented project's name.
-name: Apt-DHT
+name: Apt-P2P
 
 # The CSS stylesheet for HTML output.  Can be the name of a builtin
 # stylesheet, or the name of a file.
 css: white
 
 # The documented project's URL.
-url: http://www.camrdale.org/apt-dht.html
+url: http://www.camrdale.org/apt-p2p.html
 
 # HTML code for the project link in the navigation bar.  If left
 # unspecified, the project link will be generated based on the
index 05bdc2ff632b82c7bc6113243beb5e90aea0ac71..e3bba67338ada8d55f3f0113421d0120f1f8804d 100644 (file)
@@ -5,7 +5,7 @@ kileprversion=1
 kileversion=1.9.2
 lastDocument=motivation.tex
 masterDocument=
-name=apt-dht-motivation
+name=apt-p2p-motivation
 pkg_extIsRegExp=false
 pkg_extensions=.cls .sty .dtx
 src_extIsRegExp=false
@@ -23,7 +23,7 @@ highlight=BibTeX
 line=225
 open=true
 
-[item:apt-dht-motivation.kilepr]
+[item:apt-p2p-motivation.kilepr]
 archive=true
 column=0
 encoding=
index 4504abdad2532cecdb6a6b34143080a67a6ff7dd..80e6db58dc3d4bca8ee3795476d961b6b3031a5d 100644 (file)
@@ -324,7 +324,7 @@ method as file downloads), should return the torrent string.
 
 A sample implementation has been created that functions as described
 in section \ref{opportunity}. This software, called
-\texttt{apt-dht}, interacts with the \texttt{apt} tool found in most
+\texttt{apt-p2p}, interacts with the \texttt{apt} tool found in most
 Debian-based Linux distributions. Apt uses SHA1 hashes to
 verify most downloaded files, including the large index files that
 contain the hashes of the individual packages. We chose this
@@ -362,7 +362,7 @@ smaller pieces of a large file using the Range request header.
 
 \begin{figure}
 \centering
-\includegraphics[width=\columnwidth]{apt_dht_simulation-size_CDF.eps}
+\includegraphics[width=\columnwidth]{apt_p2p_simulation-size_CDF.eps}
 \caption{The CDF of the size of packages in a Debian system, both
 for the actual size and adjusted size based on the popularity of
 the package.}
index 664f390e950707dacbed81ff7de6f87a84fa9e7a..189af152c34d87574d967ab46fa443afc8536c85 100755 (executable)
--- a/setup.py
+++ b/setup.py
@@ -12,14 +12,14 @@ c = changelog.Changelog(file=data, max_blocks=1)
 del data
 
 setup(
-    name = "apt-dht",
+    name = "apt-p2p",
     version = c.full_version,
     author = "Cameron Dale",
     author_email = "<camrdale@gmail.com>",
-    url = "http://www.camrdale.org/apt-dht.html",
+    url = "http://www.camrdale.org/apt-p2p.html",
     license = "GPL",
 
-    packages = ["apt_dht", "apt_dht_Khashmir"],
+    packages = ["apt_p2p", "apt_p2p_Khashmir"],
 
-    scripts = ['apt-dht.py']
+    scripts = ['apt-p2p.py']
     )
diff --git a/test.py b/test.py
index d697b371a4d9aaf529798bfb510b398cd6d50b3d..10ca2d6ba3a21d44d011d31becd6d8bda47cfed0 100755 (executable)
--- a/test.py
+++ b/test.py
@@ -1,9 +1,9 @@
 #!/usr/bin/env python
 
-"""Automated tests of the apt-dht functionality.
+"""Automated tests of the apt-p2p functionality.
 
 This script runs several automatic tests of some of the functionality in
-the apt-dht program.
+the apt-p2p program.
 
 @type tests: C{dictionary}
 @var tests: all of the tests that can be run.
@@ -15,11 +15,11 @@ the apt-dht program.
     
     The bootstrap nodes keys are integers, which must be in the range 1-9.
     The values are the dictionary of string formatting values for creating
-    the apt-dht configuration file (see L{apt_dht_conf_template} below).
+    the apt-p2p configuration file (see L{apt_p2p_conf_template} below).
     
     The downloaders keys are also integers in the range 1-99. The values are
-    the dictionary of string formatting values for creating the apt-dht
-    configuration file (see L{apt_dht_conf_template} below).
+    the dictionary of string formatting values for creating the apt-p2p
+    configuration file (see L{apt_p2p_conf_template} below).
     
     The apt-get commands' list elements are tuples with 2 elements: the
     downloader to run the command on, and the list of command-line
@@ -312,7 +312,7 @@ Debug
 
 }
 """
-apt_dht_conf_template = """
+apt_p2p_conf_template = """
 [DEFAULT]
 
 # Port to listen on for all requests (TCP and UDP)
@@ -344,12 +344,12 @@ KEY_REFRESH = 57m
 # Which DHT implementation to use.
 # It must be possile to do "from <DHT>.DHT import DHT" to get a class that
 # implements the IDHT interface.
-DHT = apt_dht_Khashmir
+DHT = apt_p2p_Khashmir
 
 # Whether to only run the DHT (for providing only a bootstrap node)
 DHT-ONLY = %(DHT-ONLY)s
 
-[apt_dht_Khashmir]
+[apt_p2p_Khashmir]
 # bootstrap nodes to contact to join the DHT
 BOOTSTRAP = %(BOOTSTRAP)s
 
@@ -579,7 +579,7 @@ def start_downloader(bootstrap_addresses, num_down, options = {},
     @param num_down: the number of the downloader to use
     @type options: C{dictionary}
     @param options: the dictionary of string formatting values for creating
-        the apt-dht configuration file (see L{apt_dht_conf_template} above).
+        the apt-p2p configuration file (see L{apt_p2p_conf_template} above).
         (optional, defaults to only using the default arguments)
     @type mirror: C{string}
     @param mirror: the Debian mirror to use
@@ -635,20 +635,20 @@ def start_downloader(bootstrap_addresses, num_down, options = {},
 
     for k in options:
         defaults[k] = options[k]
-    f = open(join([downloader_dir, 'apt-dht.conf']), 'w')
-    f.write(apt_dht_conf_template % defaults)
+    f = open(join([downloader_dir, 'apt-p2p.conf']), 'w')
+    f.write(apt_p2p_conf_template % defaults)
     f.close()
     
-    pid = start('python', [join([sys.path[0], 'apt-dht.py']),
-                           '--config-file=' + join([downloader_dir, 'apt-dht.conf']),
-                           '--log-file=' + join([downloader_dir, 'apt-dht.log']),],
+    pid = start('python', [join([sys.path[0], 'apt-p2p.py']),
+                           '--config-file=' + join([downloader_dir, 'apt-p2p.conf']),
+                           '--log-file=' + join([downloader_dir, 'apt-p2p.log']),],
                 downloader_dir)
     return pid
 
 def start_bootstrap(bootstrap_addresses, num_boot, options = [], clean = True):
     """Initialize a new bootstrap node process.
 
-    The default arguments specified to the apt-dht invocation are
+    The default arguments specified to the apt-p2p invocation are
     the state file and port to use. Any additional arguments needed 
     should be specified by L{options}.
     
@@ -687,13 +687,13 @@ def start_bootstrap(bootstrap_addresses, num_boot, options = [], clean = True):
 
     for k in options:
         defaults[k] = options[k]
-    f = open(join([bootstrap_dir, 'apt-dht.conf']), 'w')
-    f.write(apt_dht_conf_template % defaults)
+    f = open(join([bootstrap_dir, 'apt-p2p.conf']), 'w')
+    f.write(apt_p2p_conf_template % defaults)
     f.close()
     
-    pid = start('python', [join([sys.path[0], 'apt-dht.py']),
-                           '--config-file=' + join([bootstrap_dir, 'apt-dht.conf']),
-                           '--log-file=' + join([bootstrap_dir, 'apt-dht.log']),],
+    pid = start('python', [join([sys.path[0], 'apt-p2p.py']),
+                           '--config-file=' + join([bootstrap_dir, 'apt-p2p.conf']),
+                           '--log-file=' + join([bootstrap_dir, 'apt-p2p.log']),],
                 bootstrap_dir)
 
     return pid