Opened 12 years ago

Closed 12 years ago

#1497 closed Enhancement (fixed)

[PATCH] enable daemon rpc and bittorent servers to listen on a specific socket

Reported by: kysucix Owned by: jhujhiti
Priority: Normal Milestone: 1.60
Component: libtransmission Version: 1.40
Severity: Normal Keywords: daemon patch
Cc: jhujhiti@…

Description

Patch that enable daemon rpc and bittorent servers to listen on a specific socket. Use it with -l and -L options on command line.

Example:

./daemon/transmission-daemon -f -l 192.168.250.147 -L 192.168.2.45

ciao

Silvano Galliani

Attachments (3)

listen-address.diff (12.0 KB) - added by kysucix 12 years ago.
updated to current trunk
transmission-rpc_bind.diff (8.1 KB) - added by Elbandi 12 years ago.
transmission-rpc_bind_2.diff (3.9 KB) - added by Elbandi 12 years ago.
this load/saves the address to config file

Download all attachments as: .zip

Change History (13)

comment:1 Changed 12 years ago by kysucix

  • Keywords daemon patch added; damon removed

comment:2 Changed 12 years ago by kysucix

  • Status changed from new to assigned

comment:3 Changed 12 years ago by charles

  • Milestone changed from 1.50 to None Set
  • Owner kysucix deleted
  • Status changed from assigned to new

Changed 12 years ago by kysucix

updated to current trunk

comment:4 Changed 12 years ago by jhujhiti

  • Cc jhujhiti@… added
  • Component changed from Daemon to libtransmission
  • Milestone changed from None Set to 1.50

This (or at least the BitTorrent? address half) will be relatively simple once the IPv6 patch is merged. I'm working on a flexible way to specify listener addresses in libtransmission on top of the changes from the IPv6 patch right now.

I will change the properties of this ticket to reflect this.

comment:5 Changed 12 years ago by kysucix

Great. The last version of this patch reflect your changes about ipv6. Maybe it can help you. ciao :)

comment:6 Changed 12 years ago by jhujhiti

Setting a bind address (possibly multiple bind addresses) for BitTorrent? traffic introduces a problem. BitTorrent? assumes one source IP address for a client. Announces use the source address of the HTTP request, or we can set it manually, but there is still only one address. I am in the process of propagating the source address change through the networking code and I don't know how I should handle this. Any thoughts? I could always limit the number of addresses in each family to just one, but that makes all the flexibility changes I just wrote useless :)

comment:7 Changed 12 years ago by Elbandi

For security reason transmission daemon can only access from apache (with proxy module). So we use bind the internal webserver (rpc) to localhost. I added our patch, based on kysucix diff. And we implement the "missing" calls too.

Changed 12 years ago by Elbandi

Changed 12 years ago by Elbandi

this load/saves the address to config file

comment:8 Changed 12 years ago by charles

  • Milestone changed from 1.50 to 1.60

comment:9 Changed 12 years ago by jhujhiti

  • Owner set to jhujhiti

This is definitely something I plan to add in time for 1.60. I'll take ownership of this since it looks like I'm the network guy now :)

comment:10 Changed 12 years ago by jhujhiti

  • Resolution set to fixed
  • Status changed from new to closed

Implemented in r8242. New options in the daemon:

     -i --bind-address-ipv4
             Listen for IPv4 BitTorrent connections on a specific address.
             Only one IPv4 listening address is allowed. Default: 0.0.0.0 (All
             addresses)

     -I --bind-address-ipv6
             Listen for IPv6 BitTorrent connections on a specific address.
             Only one IPv6 listening address is allowed. Default: :: (All
             addresses)

     -r --rpc-bind-address
             Listen for RPC connections on a specific address. This must be an
             IPv4 address. Only one RPC listening address is allowed. Default:
             0.0.0.0 (All addresses)
Note: See TracTickets for help on using tickets.