~ubuntu-branches/ubuntu/jaunty/transmission/jaunty-security

« back to all changes in this revision

Viewing changes to libtransmission/tracker.h

  • Committer: Bazaar Package Importer
  • Author(s): Chris Coulson
  • Date: 2008-11-28 15:33:48 UTC
  • mfrom: (1.1.19 upstream)
  • Revision ID: james.westby@ubuntu.com-20081128153348-it70trfnxiroblmc
Tags: 1.40-0ubuntu1
* New upstream release (LP: #302672)
  - Tracker communication uses fewer resources
  - More accurate bandwidth limits
  - Reduce disk fragmentation by preallocating files (LP: #287726)
  - Stability, security and performance improvements to the RPC /
    Web UI server (closes LP: #290423)
  - Support compression when serving Web UI and RPC responses
  - Simplify the RPC whitelist
  - Fix bug that prevented handshakes with encrypted BitComet peers
  - Fix 1.3x bug that could re-download some data unnecessarily
    (LP: #295040)
  - Option to automatically update the blocklist weekly
  - Added off-hour bandwidth scheduling
  - Simplify file/priority selection in the details dialog
  - Fix a couple of crashes
  - New / updated translations
  - Don't inhibit hibernation by default (LP: #292929)
  - Use "close" animation when sending to notification area (LP: #130811)
  - Fix resize problems (LP: #269872)
  - Support "--version" option when launching from command line
    (LP: #292011)
  - Correctly parse announce URLs that have leading or trailing
    spaces (LP: #262411)
  - Display an error when "Open Torrent" fails (LP: #281463)
* Dropped 10_fix_crasher_from_upstream.dpatch: Fix is in this
  upstream release.
* debian/control: Don't just build-depend on libcurl-dev, which is
  a virtual package.

Show diffs side-by-side

added added

removed removed

Lines of Context:
3
3
 *
4
4
 * This file is licensed by the GPL version 2.  Works owned by the
5
5
 * Transmission project are granted a special exemption to clause 2(b)
6
 
 * so that the bulk of its code can remain under the MIT license. 
 
6
 * so that the bulk of its code can remain under the MIT license.
7
7
 * This exemption does not extend to derived works not owned by
8
8
 * the Transmission project.
9
9
 *
10
 
 * $Id: tracker.h 6421 2008-07-31 13:06:59Z charles $
 
10
 * $Id: tracker.h 6795 2008-09-23 19:11:04Z charles $
11
11
 */
12
12
 
13
13
#ifndef _TR_TRACKER_H_
25
25
 
26
26
tr_tracker * tr_trackerNew( const tr_torrent * );
27
27
 
28
 
void  tr_trackerFree ( tr_tracker * );
 
28
void         tr_trackerFree( tr_tracker * );
29
29
 
30
 
void  tr_trackerSessionClose( tr_handle * );
 
30
void         tr_trackerSessionClose( tr_handle * );
31
31
 
32
32
/**
33
33
***  Tracker Publish / Subscribe
45
45
typedef struct
46
46
{
47
47
    /* what type of event this is */
48
 
    TrackerEventType messageType;
 
48
    TrackerEventType    messageType;
49
49
 
50
50
    /* the torrent's 20-character sha1 hash */
51
 
    const uint8_t * hash;
 
51
    const uint8_t *  hash;
52
52
 
53
53
    /* for TR_TRACKER_WARNING and TR_TRACKER_ERROR */
54
 
    const char * text;
 
54
    const char *  text;
55
55
 
56
56
    /* for TR_TRACKER_PEERS */
57
 
    const uint8_t * compact;
58
 
    int compactLen;
59
 
    int allAreSeeds;
 
57
    const uint8_t *  compact;
 
58
    int              compactLen;
 
59
    int              allAreSeeds;
60
60
}
61
61
tr_tracker_event;
62
62
 
63
 
tr_publisher_tag  tr_trackerSubscribe       ( struct tr_tracker      * tag,
64
 
                                              tr_delivery_func         func,
65
 
                                              void                   * user );
 
63
tr_publisher_tag        tr_trackerSubscribe( struct tr_tracker * tag,
 
64
                                             tr_delivery_func    func,
 
65
                                             void *              user );
66
66
 
67
 
void              tr_trackerUnsubscribe     ( struct tr_tracker      * tracker,
68
 
                                              tr_publisher_tag         tag );
 
67
void                    tr_trackerUnsubscribe( struct tr_tracker * tracker,
 
68
                                               tr_publisher_tag    tag );
69
69
 
70
70
/***
71
71
****
72
72
***/
73
73
 
74
 
void tr_trackerStat                         ( const tr_tracker       * tracker,
75
 
                                              struct tr_stat         * setme);
76
 
 
77
 
void tr_trackerStart                        ( struct tr_tracker * );
78
 
 
79
 
void tr_trackerCompleted                    ( struct tr_tracker * );
80
 
 
81
 
void tr_trackerStop                         ( struct tr_tracker * );
82
 
 
83
 
void tr_trackerReannounce                   ( struct tr_tracker * );
84
 
 
85
 
void tr_trackerChangeMyPort                 ( struct tr_tracker * );
 
74
void                    tr_trackerStat( const tr_tracker * tracker,
 
75
                                        struct tr_stat *   setme );
 
76
 
 
77
void                    tr_trackerStart( struct tr_tracker * );
 
78
 
 
79
void                    tr_trackerCompleted( struct tr_tracker * );
 
80
 
 
81
void                    tr_trackerStop( struct tr_tracker * );
 
82
 
 
83
void                    tr_trackerReannounce( struct tr_tracker * );
 
84
 
 
85
void                    tr_trackerChangeMyPort( struct tr_tracker * );
86
86
 
87
87
const tr_tracker_info * tr_trackerGetAddress( struct tr_tracker * );
88
88
 
89
 
int  tr_trackerCanManualAnnounce            ( const struct tr_tracker * );
90
 
 
91
 
time_t tr_trackerGetManualAnnounceTime      ( const struct tr_tracker * );
92
 
 
93
 
void tr_trackerGetCounts                    ( const struct tr_tracker *,
94
 
                                              int * setme_completedCount,
95
 
                                              int * setme_leecherCount,
96
 
                                              int * setme_seederCount );
 
89
int                     tr_trackerCanManualAnnounce(
 
90
    const struct tr_tracker * );
 
91
 
 
92
time_t                  tr_trackerGetManualAnnounceTime(
 
93
    const struct tr_tracker * );
 
94
 
 
95
void                    tr_trackerGetCounts(
 
96
    const struct tr_tracker *,
 
97
    int *
 
98
                 setme_completedCount,
 
99
    int *
 
100
                 setme_leecherCount,
 
101
    int *        setme_seederCount );
97
102
 
98
103
#endif