mirror of
https://github.com/transmission/transmission
synced 2025-03-09 13:50:00 +00:00
Retrieve peer address as a string via tr_torrentPeers().
This commit is contained in:
parent
bb5e80c98d
commit
f41a6ade33
4 changed files with 23 additions and 0 deletions
|
@ -305,6 +305,16 @@ uint8_t * tr_peerId( tr_peer_t * peer )
|
||||||
return & peer->id[0];
|
return & peer->id[0];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/***********************************************************************
|
||||||
|
* tr_peerAddress
|
||||||
|
***********************************************************************
|
||||||
|
*
|
||||||
|
**********************************************************************/
|
||||||
|
struct in_addr * tr_peerAddress( tr_peer_t * peer )
|
||||||
|
{
|
||||||
|
return &peer->addr;
|
||||||
|
}
|
||||||
|
|
||||||
/***********************************************************************
|
/***********************************************************************
|
||||||
* tr_peerHash
|
* tr_peerHash
|
||||||
***********************************************************************
|
***********************************************************************
|
||||||
|
|
|
@ -52,5 +52,6 @@ void tr_peerSetOptimistic ( tr_peer_t *, int );
|
||||||
int tr_peerIsOptimistic ( tr_peer_t * );
|
int tr_peerIsOptimistic ( tr_peer_t * );
|
||||||
void tr_peerBlame ( tr_torrent_t *, tr_peer_t *,
|
void tr_peerBlame ( tr_torrent_t *, tr_peer_t *,
|
||||||
int piece, int success );
|
int piece, int success );
|
||||||
|
struct in_addr * tr_peerAddress ( tr_peer_t * );
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
|
@ -494,11 +494,18 @@ tr_peer_stat_t * tr_torrentPeers( tr_torrent_t * tor, int * peerCount )
|
||||||
if (peers != NULL)
|
if (peers != NULL)
|
||||||
{
|
{
|
||||||
tr_peer_t * peer;
|
tr_peer_t * peer;
|
||||||
|
struct in_addr * addr;
|
||||||
int i = 0;
|
int i = 0;
|
||||||
for( i = 0; i < tor->peerCount; i++ )
|
for( i = 0; i < tor->peerCount; i++ )
|
||||||
{
|
{
|
||||||
peer = tor->peers[i];
|
peer = tor->peers[i];
|
||||||
|
|
||||||
|
addr = tr_peerAddress( peer );
|
||||||
|
if( NULL != addr )
|
||||||
|
{
|
||||||
|
inet_ntop( AF_INET, addr, peers[i].addr,
|
||||||
|
sizeof( peers[i].addr ) );
|
||||||
|
}
|
||||||
peers[i].client = tr_clientForId(tr_peerId(peer));
|
peers[i].client = tr_clientForId(tr_peerId(peer));
|
||||||
peers[i].isDownloading = tr_peerIsDownloading(peer);
|
peers[i].isDownloading = tr_peerIsDownloading(peer);
|
||||||
peers[i].isUploading = tr_peerIsUploading(peer);
|
peers[i].isUploading = tr_peerIsUploading(peer);
|
||||||
|
|
|
@ -44,6 +44,10 @@ extern "C" {
|
||||||
# define MAX_PATH_LENGTH 1024
|
# define MAX_PATH_LENGTH 1024
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#ifndef INET_ADDRSTRLEN
|
||||||
|
#define INET_ADDRSTRLEN 16
|
||||||
|
#endif
|
||||||
|
|
||||||
#define TR_DEFAULT_PORT 9090
|
#define TR_DEFAULT_PORT 9090
|
||||||
#define TR_NOERROR 0
|
#define TR_NOERROR 0
|
||||||
|
|
||||||
|
@ -321,6 +325,7 @@ struct tr_stat_s
|
||||||
|
|
||||||
struct tr_peer_stat_s
|
struct tr_peer_stat_s
|
||||||
{
|
{
|
||||||
|
char addr[INET_ADDRSTRLEN];
|
||||||
char * client;
|
char * client;
|
||||||
|
|
||||||
int isDownloading;
|
int isDownloading;
|
||||||
|
|
Loading…
Add table
Reference in a new issue