source: trunk/libtransmission/tracker.h @ 1149

Last change on this file since 1149 was 1149, checked in by joshe, 15 years ago

Merge scrape branch:

Automatically scrape trackers as needed.
If tracker supplies a trackerid then use it (untested).
Use tracker's min interval, clamped to the same range as interval.
Show total completed downloads in the MacOS X frontend.

  • Property svn:keywords set to Date Rev Author Id
File size: 3.1 KB
Line 
1/******************************************************************************
2 * $Id: tracker.h 1149 2006-12-02 01:46:54Z joshe $
3 *
4 * Copyright (c) 2005-2006 Transmission authors and contributors
5 *
6 * Permission is hereby granted, free of charge, to any person obtaining a
7 * copy of this software and associated documentation files (the "Software"),
8 * to deal in the Software without restriction, including without limitation
9 * the rights to use, copy, modify, merge, publish, distribute, sublicense,
10 * and/or sell copies of the Software, and to permit persons to whom the
11 * Software is furnished to do so, subject to the following conditions:
12 *
13 * The above copyright notice and this permission notice shall be included in
14 * all copies or substantial portions of the Software.
15 *
16 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
17 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
18 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
19 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
20 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
21 * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
22 * DEALINGS IN THE SOFTWARE.
23 *****************************************************************************/
24
25#ifndef TR_TRACKER_H
26#define TR_TRACKER_H 1
27
28typedef struct tr_tracker_s tr_tracker_t;
29
30tr_tracker_t * tr_trackerInit      ( tr_torrent_t * );
31void           tr_trackerChangePort( tr_tracker_t *, int );
32int            tr_trackerPulse     ( tr_tracker_t * );
33void           tr_trackerCompleted ( tr_tracker_t * );
34void           tr_trackerStopped   ( tr_tracker_t * );
35void           tr_trackerClose     ( tr_tracker_t * );
36
37/***********************************************************************
38 * tr_trackerSeeders
39 ***********************************************************************
40 * Looks for the seeders as returned by the tracker.
41 **********************************************************************/
42int tr_trackerSeeders  ( tr_tracker_t * );
43
44/***********************************************************************
45 * tr_trackerLeechers
46 ***********************************************************************
47 * Looks for the leechers as returned by the tracker.
48 **********************************************************************/
49int tr_trackerLeechers ( tr_tracker_t * );
50
51/***********************************************************************
52 * tr_trackerDownloaded
53 ***********************************************************************
54 * Looks for number of completed downloads as returned by the tracker
55 * (from scrape).
56 **********************************************************************/
57int tr_trackerDownloaded( tr_tracker_t * tc );
58
59/***********************************************************************
60 * tr_trackerScrape
61 ***********************************************************************
62 * Attempt a blocking scrape and return the seeders, leechers, and
63 * completed downloads if successful.
64 **********************************************************************/
65int tr_trackerScrape( tr_torrent_t * tor, int * s, int * l, int * d );
66
67#endif
Note: See TracBrowser for help on using the repository browser.