struct client { char *id; char *name; }; /* Azureus-style uses the following encoding: '-', two characters for client id, four ascii digits for version number, '-', followed by random numbers. For example: '-AZ2060-'... */ struct client azureus[] = { { "AR", "Arctic" }, { "AX", "BitPump" }, { "AZ", "Azureus" }, { "BB", "BitBuddy" }, { "BC", "BitComet" }, { "BS", "BTSlave" }, { "BX", "Bittorrent X" }, { "CD", "Enahnced CTorrent" }, { "CT", "CTorrent" }, { "LP", "Lphant" }, { "LT", "libtorrent" }, { "lt", "libTorrent" }, { "MP", "MooPolice" }, { "MT", "MoonlightTorrent" }, { "QT", "Qt 4 Torrent example" }, { "RT", "Retriever" }, { "SB", "Swiftbit" }, { "SS", "SwarmScope" }, { "SZ", "Shareaza" }, { "TN", "TorrentDotNET" }, { "TR", "Transmission" }, { "TS", "Torrentstorm" }, { "UT", "uTorrent" }, /* µTorrent */ { "XT", "XanTorrent" }, { "XB", "XBitTorrent" }, { "ZT", "ZipTorrent" }, { NULL, NULL } }; /* Shadow's style uses the following encoding: one ascii alphanumeric for client identification, three ascii digits for version number, '----', followed by random numbers. For example: 'S587----'... */ struct client shadow[] = { { "A", "ABC" }, { "O", "Osprey Permaseed" }, { "R", "Tribler" }, { "S", "Shadow's client" }, { "T", "BitTornado" }, { "U", "UPnP NAT Bit Torrent" }, { NULL, NULL } }; /* Bram's client now uses this style... 'M3-4-2--' */ struct client bram[] = { { "M", "BitTorrent" }, { NULL, NULL } };