source: branches/multitracker/libtransmission/tracker.h @ 1234

Last change on this file since 1234 was 1234, checked in by livings124, 16 years ago

libT can now better report if it can connect to a tracker, and as a result the mac's queue system will now start the next for any error (not just those sent by the tracker)

  • Property svn:keywords set to Date Rev Author Id
File size: 3.4 KB
Line 
1/******************************************************************************
2 * $Id: tracker.h 1234 2006-12-16 01:58:07Z livings124 $
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 );
32void           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
59const char * tr_trackerAddress ( tr_tracker_t * tc );
60int          tr_trackerPort    ( tr_tracker_t * tc );
61const char * tr_trackerAnnounce( tr_tracker_t * tc );
62
63int tr_trackerCannotConnecting( tr_tracker_t * tc );
64
65/***********************************************************************
66 * tr_trackerScrape
67 ***********************************************************************
68 * Attempt a blocking scrape and return the seeders, leechers, and
69 * completed downloads if successful.
70 **********************************************************************/
71int tr_trackerScrape( tr_torrent_t * tor, int * s, int * l, int * d );
72
73#endif
Note: See TracBrowser for help on using the repository browser.