[serverConfig] ServerPort = ":8000" #leave format as is it expects a string with colon ServerAddr = "" #blank will bind to default IP address, usually fine to leave be LogLevel = "Warn" # Options = Debug, Info, Warn, Error, Fatal, Panic LogOutput = "file" #Options = file, stdout #file will print it to logs/server.log SeedRatioStop = 1.50 #automatically stops the torrent after it reaches this seeding ratio #Relative or absolute path accepted, the server will convert any relative path to an absolute path. DefaultMoveFolder = 'downloaded' #default path that a finished torrent is symlinked to after completion. Torrents added via RSS will default here [notifications] PushBulletToken = "" #add your pushbullet api token here to notify of torrent completion to pushbullet [EncryptionPolicy] DisableEncryption = false ForceEncryption = false PreferNoEncryption = true [torrentClientConfig] DownloadDir = 'downloading' #the full OR relative path where the torrent server stores in-progress torrents Seed = true #boolean #seed after download # Never send chunks to peers. NoUpload = false #boolean #The address to listen for new uTP and TCP bittorrent protocol connections. DHT shares a UDP socket with uTP unless configured otherwise. ListenAddr = "" #Leave Blank for default, syntax "HOST:PORT" #Don't announce to trackers. This only leaves DHT to discover peers. DisableTrackers = false #boolean DisablePEX = false # boolean # Don't create a DHT. NoDHT = false #boolean # Events are data bytes sent in pieces. The burst must be large enough to fit a whole chunk. UploadRateLimiter = "" #*rate.Limiter #The events are bytes read from connections. The burst must be biggerthan the largest Read performed on a Conn minus one. This is likely to #be the larger of the main read loop buffer (~4096), and the requested chunk size (~16KiB). DownloadRateLimiter = "" #*rate.Limiter #User-provided Client peer ID. If not present, one is generated automatically. PeerID = "" #string #For the bittorrent protocol. DisableUTP = false #bool #For the bittorrent protocol. DisableTCP = false #bool #Called to instantiate storage for each added torrent. Builtin backends # are in the storage package. If not set, the "file" implementation is used. DefaultStorage = "storage.ClientImpl" #encryption policy IPBlocklist = "" #of type iplist.Ranger DisableIPv6 = false #boolean Debug = false #boolean #HTTP *http.Client HTTPUserAgent = "" # HTTPUserAgent changes default UserAgent for HTTP requests ExtendedHandshakeClientVersion = "" Bep20 = "" # Overrides the default DHT configuration, see dhtServerConfig #advanced.. so be careful DHTConfig = "" # default is "dht.ServerConfig" [dhtServerConfig] # Set NodeId Manually. Caller must ensure that if NodeId does not conform to DHT Security Extensions, that NoSecurity is also set. NodeId = "" #[20]byte Conn = "" # https:#godoc.org/net#PacketConn #not implemented # Don't respond to queries from other nodes. Passive = false # boolean # the default addresses are "router.utorrent.com:6881","router.bittorrent.com:6881","dht.transmissionbt.com:6881","dht.aelitis.com:6881", #https:#github.com/anacrolix/dht/blob/master/dht.go StartingNodes = "dht.GlobalBootstrapAddrs" #Disable the DHT security extension: http:#www.libtorrent.org/dht_sec.html. NoSecurity = false #Initial IP blocklist to use. Applied before serving and bootstrapping begins. IPBlocklist = "" #of type iplist.Ranger #Used to secure the server's ID. Defaults to the Conn's LocalAddr(). Set to the IP that remote nodes will see, #as that IP is what they'll use to validate our ID. PublicIP = "" #net.IP #Hook received queries. Return true if you don't want to propagate to the default handlers. OnQuery = "func(query *krpc.Msg, source net.Addr) (propagate bool)" #Called when a peer successfully announces to us. OnAnnouncePeer = "func(infoHash metainfo.Hash, peer Peer)" #How long to wait before re-sending queries that haven't received a response. Defaults to a random value between 4.5 and 5.5s. QueryResendDelay = "func() time.Duration"