Bug 430849

Summary: bittorrent track/generate/seed fails, and documents do not help
Product: [Fedora] Fedora Reporter: John Reiser <jreiser>
Component: bittorrentAssignee: Paul Howarth <paul>
Status: CLOSED CURRENTRELEASE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: low Docs Contact:
Priority: low    
Version: 8Keywords: Tracking
Target Milestone: ---   
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: 4.4.0-6.fc8 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2008-05-10 13:51:56 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description John Reiser 2008-01-30 06:18:06 UTC
Description of problem: Attempting to distribute [send] a file using bittorrent
fails at every turn, and the documents are incorrect.  The bittorrent-tracker
requires root privileges to write into /var/run, which is not documented.  The
maketorrent-console takes its positional arguments in the other order.  The
downloader complains "unknown key --saveas", and when that is removed then it
comlains "Could not load fastresume data: invalid literal for int() with base
10: '1201668582.0' Will perform full hash check." and then waits forever while
doing nothing.  That is three attempts (track, generate, seed) and three failures.


Version-Release number of selected component (if applicable):
bittorrent-4.4.0-5.fc7  [which is current in Fedora 8]


How reproducible: Always


Steps to Reproduce:
1. As an ordinary user, try to run a tracker according to the directions in
/usr/share/doc/bittorrent-4.4.0/README.txt.  This does not work (see Actual
results), so do it as superuser root, which succeeds.

2. Download a Fedora 8 Rescue CD .iso into a new directory 'mydir':
-rw-rw-r-- 1 jreiser jreiser 108611584 2008-01-29 20:28 Fedora-8-x86_64-rescuecd.iso
and try to generate a torrent file according to README.txt:
$ mktorrent-console mydir/Fedora-8-x86_64-rescuecd.iso
http://127.0.0.1:6969/announce
This does not work (see Actual results), so swap the arguments:
$ maketorrent-console http://127.0.0.1:6969/announce
mydir/Fedora-8-x86_64-rescuecd.iso
which does generate mydir/Fedora-8-x86_64-rescuecd.iso.torrent

3. Try to seed by starting a downloader as a resume on the complete file:
$ cd mydir; mkdir foodir
$ cd foodir; bittorrent-curses --ip 127.0.0.1
../Fedora-8-x86_64-rescuecd.iso.torrent --saveas ../Fedora-8-x86_64-rescuecd.iso
This does not work, so try removing the --saveas and following filename.  That
fails, too.

Actual results:
1. $ bittorrent-tracker --port 6969 --dfile dstate
Traceback (most recent call last):
  File "/usr/bin/bittorrent-tracker", line 24, in <module>
    track(argv[1:])
  File "/usr/lib/python2.5/site-packages/BitTorrent/track.py", line 857, in track
    file(config['pid'], 'w').write(str(os.getpid()))
IOError: [Errno 13] Permission denied: '/var/run/bittorrent-tracker.pid'

2. $ maketorrent-console mydir/Fedora-8-x86_64-rescuecd.iso
http://127.0.0.1:6969/announce
Traceback (most recent call last):
  File "/usr/bin/maketorrent-console", line 62, in <module>
    data_dir=config['data_dir'])
  File "/usr/lib/python2.5/site-packages/BitTorrent/makemetafile.py", line 85,
in make_meta_files
    total += calcsize(f)
  File "/usr/lib/python2.5/site-packages/BitTorrent/makemetafile.py", line 175,
in calcsize
    total += os.path.getsize(s[1])
  File "/usr/lib64/python2.5/posixpath.py", line 139, in getsize
    return os.stat(filename).st_size
OSError: [Errno 2] No such file or directory:
'/home/jreiser/http:/127.0.0.1:6969/announce'

3.
-----
$ bittorrent-curses --ip 127.0.0.1 ../*.torrent --saveas ../*.iso
unknown key --saveas
So try removing the "--saveas" parameter:
$ bittorrent-curses --ip 127.0.0.1 ../Fedora-8-x86_64-rescuecd.iso.torrent
These errors occurred during execution:
[21:57:15] Could not load fastresume data: invalid literal for int() with base
10: '1201669524.0' Will perform full hash check.
Exception in thread Thread-4 (most likely raised during interpreter shutdown):
Traceback (most recent call last):
  File "/usr/lib64/python2.5/threading.py", line 460, in __bootstrap
  File "/usr/lib64/python2.5/threading.py", line 440, in run
  File "/usr/lib/python2.5/site-packages/BitTorrent/Rerequester.py", line 170,
in _rerequest
  File "/usr/lib64/python2.5/urllib2.py", line 121, in urlopen
  File "/usr/lib64/python2.5/urllib2.py", line 374, in open
  File "/usr/lib64/python2.5/urllib2.py", line 392, in _open
  File "/usr/lib64/python2.5/urllib2.py", line 353, in _call_chain
  File "/usr/lib/python2.5/site-packages/BitTorrent/zurllib.py", line 151, in
http_open
  File "/usr/lib64/python2.5/urllib2.py", line 1074, in do_open
<type 'exceptions.AttributeError'>: 'NoneType' object has no attribute 'error'
Unhandled exception in thread started by 
Error in sys.excepthook:

Original exception was:
-----

Expected results:  Successful track/generate/seed.


Additional info:  All the ".py" extensions in the README.txt should be removed.
The directions regarding the "--ip" parameter should be more explicit.

Comment 1 Jon Stanley 2008-03-28 01:46:07 UTC
Adding Tracking keyword

Comment 2 Fedora Update System 2008-04-09 16:29:20 UTC
bittorrent-4.4.0-6.fc8 has been submitted as an update for Fedora 8

Comment 3 Fedora Update System 2008-04-09 16:30:45 UTC
bittorrent-4.4.0-6.fc7 has been submitted as an update for Fedora 7

Comment 4 Paul Howarth 2008-04-09 17:54:00 UTC
The README.txt file in the bittorrent package is actually the one from the
upstream bittorrent project and contains a few errors. In the updated package I
have included an additional file, README.Fedora, which contains additional
(tested) information on created torrents and running the seed/tracker services.

Comment 5 Fedora Update System 2008-05-10 13:51:50 UTC
bittorrent-4.4.0-6.fc8 has been pushed to the Fedora 8 stable repository.  If problems still persist, please make note of it in this bug report.

Comment 6 Fedora Update System 2008-05-10 13:55:29 UTC
bittorrent-4.4.0-6.fc7 has been pushed to the Fedora 7 stable repository.  If problems still persist, please make note of it in this bug report.