Skip to content

add utorrent 3.6.0 - #46

Closed
tunisiano187 wants to merge 5 commits into
NikolayIT:masterfrom
tunisiano187:master
Closed

add utorrent 3.6.0#46
tunisiano187 wants to merge 5 commits into
NikolayIT:masterfrom
tunisiano187:master

Conversation

@tunisiano187

Copy link
Copy Markdown

No description provided.

The original PR NikolayIT#46 added uTorrent 3.6.0 but used UT3320 (3.3.2) values
for User-Agent, PeerID prefix and SearchString instead of UT3600.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0145awWnPzsCjUvneEgnUSmk
claude and others added 3 commits June 24, 2026 15:51
Added 15 new uTorrent client profiles to cover the full version range:
- 3.5.5, 3.5.3, 3.5.1, 3.5.0 (3.5.x series)
- 3.4.9, 3.4.2, 3.4.0 (3.4.x series)
- 3.1.3, 3.1.0, 3.0.0 (3.0.x / 3.1.x series)
- 2.2.1, 2.2.0 (2.2.x series)
- 2.0.4, 2.0.2, 2.0.0 (2.0.x series)

Each client uses the correct Azureus-style peer ID (-UTXXYY-)
and matching User-Agent header (uTorrent/XXYY). Updated the
version dropdown in RM.cs accordingly.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0145awWnPzsCjUvneEgnUSmk
Fix uTorrent 3.6.0 client version identifiers (resolves NikolayIT#46)
NikolayIT added a commit that referenced this pull request Sep 7, 2026
Both new profiles come from real announces (a public capture of 3.5.5 and
the SB-Innovation client files for builds 44994-46074 and 46828), not from
extrapolating the 3.3.2 entry:

- The peer id is "-UT360S-"/"-UT355S-", then the build number as a
  little-endian 16-bit integer, then ten random bytes. The old 0.43 entries
  already encoded the build that way (30488, 29625, 19078, 17414 and 11903
  are all real builds), which is why PR #46's twelve random bytes after
  "-UT3550-" would have stood out to a tracker that decodes them.
- The user agent is uTorrent/360(113358572)(46828): a per-version constant
  times 65536 plus the build, then the build again. The constant is 1729
  for 3.6.0 and 1707 for every 3.5.5 build seen.
- The headers end with "Connection: Close", which 3.x sends and the 0.43
  entries lack.

uTorrent 2.0.1, 1.8.5, 1.8.1-beta, 1.8.0, 1.7.7, 1.7.6, 1.7.5, 1.6.1 and
1.6 are gone; no tracker has accepted them for a decade. A saved torrent
that used one of them falls back to the default client through
ClientProfileCatalog.GetByName. The catalog now holds 35 profiles and the
goldens were regenerated for the new list.
@NikolayIT

Copy link
Copy Markdown
Owner

Thanks for the PR. uTorrent 3.6.0 and 3.5.5 emulations are now on master and will ship in RatioMaster.NET 1.1 (1ce9065). They were built from real announces rather than by copying the 3.3.2 entry, because the real client differs from what this PR sends: the peer id prefix is -UT360S- / -UT355S- (S for stable), the two bytes after it are the build number as a little-endian 16-bit integer followed by ten random bytes, the user agent is uTorrent/360(113358572)(46828) style with the build in it, and the headers end with Connection: Close. The old Source/ tree this PR changes no longer exists (1.0 is a complete rewrite, and emulations now live in clients.json), so I am closing this one.

@NikolayIT NikolayIT closed this Sep 7, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants