BT 1.30 bug

Started by txr13, January 04, 2012, 03:24:19 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

txr13

Hi there, Fred!  ;D  I ran across a bug in 1.30 yesterday night just after installing it, thought I'd let you know.

In 1.25, I previously had BT set to contact six machines using an IP address of localhost. One of them really was the localhost, and five of them were SSH tunnel endpoints to a remote site. And that worked just fine.

After upgrade to 1.30, those six machines had their IP addresses changed to localhost, localhost2, localhost3, etc. This does not seem to be an issue for the SSH endpoints, but the actual local client would not connect for anything. I tried setting all six machines back to "localhost" without any numbers, but BT immediately re-numbered them.

I'm using Windows 7 Professional x64 SP1. And I remembered that Windows can be very finickety about allowing localhost connections (since XP SP2 came out, anyways). So, I tried setting the actual local client manually to "localhost" (it was previously "localhost6") and re-numbering the other SSH endpoints accordingly. It worked!

My suggested fix: add a bit of code to detect which machine is the local machine, and set that one first to "localhost". All my SSH endpoints happened to be listed in name order before my local desktop, and so they received the lower numbers. But if you set the local client first, and then re-numbered all the other "localhost" connections, you might avoid an issue where the local client no longer connects, with no reasons immediately apparent.

Thoughts on what code could be used to detect the local client: compare hostname to computer name in BT, compare local gui_rpc_auth contents to listed contents in BT, compare hostname to hostname reported by the BOINC clients attached to BT... It's possible none of these would be 100% accurate, but it would probably give you a good guess, I'm thinking.

Anyways, there it is!  :D Thanks again for writing such an excellent program, Fred!

fred

Quote from: txr13 on January 04, 2012, 03:24:19 PM
Hi there, Fred!  ;D  I ran across a bug in 1.30 yesterday night just after installing it, thought I'd let you know.
All localhost names use the same address, so localhost, localhost1, localhost2 = localhost.
The only difference is that localhost is reserved for the local machine.
This name is used for e.g. snooze.
What also happens is that the localhost reads the local password file, this is probably why is won't connect.
I will see what I can do about the renumbering.