v0.8.0: Local SRP and Bug Fixes

Started by Ribose, December 10, 2011, 08:13:54 PM

Previous topic - Next topic


Get it on Google Code (link)

To install for Windows/Pidgin users, just run the featured installer.

(Re)start Pidgin, and make a new account.

To install on Linux, you'll have to compile from source, see the Setup wiki page on Google Code.

I do not know whether it works on Adium, but it should!

v0.8.0: SRP Version & Bug Fixes
  • Added: Warcraft III local SRP support. Requires libgmp (included in installer). You won't send your passwords to BNLS ever again!
  • Fixed: Non UTF-8 messages will not crash you.
  • Fixed: A crash that occurs when connection was lost or you were unable to connect to BNLS.
  • Fixed: CD-Key decoding issues.
  • Fixed crash on friend remove/buddy remove
  • Fixed: more issues than I can remember. Come on! Half of them were made months ago...
  • Changed: Use bnls.net as default BNLS server.
  • Updated the build system. I got around to actually writing my own Makefile that does everything you need for this small project... doesn't really affect users of the Windows installer though.
v0.7.2: "Unnamed Release"
  • It should now be compilable without modification on Linux.
  • Fixed a bug where the "hide mutual friend status-change messages" option didn't hide messages on other gateways.
  • Updated CD-Key error code and added an informative message for ghosting. If you get "CD-key in use" with your own username, you will get a different error and Pidgin will automatically reconnect you as if you had a network connection error.
  • Updated Windows installer.
v0.7.1: "Small Bugfix Release"
  • Fixed: A couple possible crashes during logon if BNLS connection fails or you are IPBanned from Battle.net.
  • Fixed: Now correctly reports NLS revision to BNLS servers. This fixes "incorrect password" when using a JBLS server for WarCraft III logon
v0.7.0: "Installer and WarCraft III Release"
  • Added: Warcraft III support.
  • Added: Do not disturb mode is now correctly updated by your Pidgin status.
  • Added: "User is away" warning and "User is unavailable" error on IM (whisper) are now correctly shown in the IM and not in the channel.
  • Added: EID_ERRORs in channels now appear red instead of black.
  • Added: "X is away (away message)" is now displayed as an auto-response! "X <AUTO-RESPONSE>: Away (away message)".
  • Added: Warcraft III and Diablo channel user stats are now parsed.
  • Fixed: From the room list window, if you click "Join Channel" you will crash.
  • Fixed: Jailout's RBNETD (uswest.bnet.cc) will give you a blank username on logon.
  • Fixed: 26-character keys will no longer IPBan you.
  • Fixed: Certain new StarCraft keys will no longer IPBan you.
  • Fixed: If you have a channel "persisted" or you are in it and Pidgin doesn't know and you reopen/"rejoin" it, the channel user list is emptied.
  • Fixed: If you are in channel A with user X and you move to channel B then do Buddies > Get User Info... on that user X, their user information and stats will be shown as if they are in the current channel.
  • Fixed: User ban, kick, and unban messages will now always appear in the channel and never in an IM.
  • Fixed: Whisper commands open a new IM and show your sent whisper.
v0.6.0: "Public Release 1"
  • This is the first release, so nothing "changed" since the last one.

Screenshots and Features
See this topic for screenshots and the current supported features.

  • Trying to create accounts does not function correctly at this time. You may make the account hard to use if attempted.
Usage notes
You will have to use a valid BNLS ("Logon Server") and CD-key for the selected client, see the Advanced tab.

Notice: WarCraft III support NO LONGER sends passwords to BNLS. I finally implemented local SRP!

To join a channel after logging on, use the Buddies -> Join a Chat. You can then make it your "home channel" (as termed by other bots) by adding the chat to your buddy list with the setting "auto-join" checked.

All standard Battle.net commands are directed to Battle.net through libpurple's command processor. If you want to use a non-standard command (ex. PvPGN), you have to use libpurple's /say command, example: /say /ann sometext. You can also bypass it by sending multiple messages at once using CTRL+ENTER. I have left the command system there so that your libpurple or Pidgin plugins can then add commands without them being bypassed by the protocol. Also, it allows the plugin to do the proper modification to certain commands for Diablo II (ex. /whois user -> /whois *user).

Post comments and ideas, please.


for those that don't know, this is a chat bot for battle.net 1.0 on pidgin.  try it out & let us know what you think.


You can now use the binaries in the source tree (may not work due to different distributions having different ABI versions of libgmp available!) on Linux, or if that doesn't work, I detailed a very simple 2-command process for compiling it on Linux (from what I can tell it works on both Fedora and Ubuntu both 32 and 64 bit), see here.