Traduction française : Polaris et Cedricdd de L'Alliance Francophone


Index :: BAM! Bug Report :: Inconsistent signing key from account manager

Pages: 1 [2]
Author
Message
ebahapo
PM Profile
BAM!-ID: 239
Joined: 2006-05-12
Posts: 656
Credits: 20,490,454
World-rank: 22,039
Posted 2011-01-27 17:47:53
BOINCstats Willy wrote:
Maybe on the next connect the host will not send invalid XML and get a proper response.

This is happening at every connection!

[BOINCstats] Willy
PM Profile
Forum moderator - Administrator - Developer - Tester - Translator
BAM!-ID: 1
Joined: 2006-01-09
Posts: 9032
Credits: 348,241,820
World-rank: 2,763
Posted 2011-01-27 21:25:08
Augustine wrote:
BOINCstats Willy wrote:
Maybe on the next connect the host will not send invalid XML and get a proper response.

This is happening at every connection!


Then you probably should check that host because 78.000 other hosts don't have this problem.

Please do not PM, IM or email me for support (they will go unread/ignored). Use the forum for support.
ebahapo
PM Profile
BAM!-ID: 239
Joined: 2006-05-12
Posts: 656
Credits: 20,490,454
World-rank: 22,039
Posted 2011-01-27 22:19:39
BOINCstats Willy wrote:
Then you probably should check that host because 78.000 other hosts don't have this problem.

This error started to appear only after you change "a line of code"...

HTH

[BOINCstats] Willy
PM Profile
Forum moderator - Administrator - Developer - Tester - Translator
BAM!-ID: 1
Joined: 2006-01-09
Posts: 9032
Credits: 348,241,820
World-rank: 2,763
Posted 2011-01-28 08:24:51
You don't understand: it means that every request from your host is invalid, that's why BAM! throws the error. First it gave you a PHP error, now it gives you the error in proper XML. But the reason for the error remains the same: the XML send to BAM! is invalid.

Please do not PM, IM or email me for support (they will go unread/ignored). Use the forum for support.
rroonnaalldd
PM
BAM!-ID: 15220
Joined: 2006-12-20
Posts: 207
Credits: 77,733,697
World-rank: 8,220
Posted 2011-01-28 10:56:15
Augustine wrote:
BOINCstats Willy wrote:
Then you probably should check that host because 78.000 other hosts don't have this problem.

This error started to appear only after you change "a line of code"...

HTH

I checked your host 166574 at PG and found "x 6.12.6, (BOINC)". This alpha release has many bugs. I suggest a downgrade to an officially released version like 6.10.58.

ebahapo
PM Profile
BAM!-ID: 239
Joined: 2006-05-12
Posts: 656
Credits: 20,490,454
World-rank: 22,039
Posted 2011-01-28 16:04:04
rroonnaalldd wrote:
I checked your host 166574 at PG and found "x 6.12.6, (BOINC)". This alpha release has many bugs. I suggest a downgrade to an officially released version like 6.10.58.

Thanks for the tip. I downgraded it to 6.10.58, yet it still error with an empty acct_mgr_request.

rroonnaalldd
PM
BAM!-ID: 15220
Joined: 2006-12-20
Posts: 207
Credits: 77,733,697
World-rank: 8,220
Posted 2011-01-28 21:28:58
Augustine wrote:
Thanks for the tip. I downgraded it to 6.10.58, yet it still error with an empty acct_mgr_request.

Okay. Then disable BAM in your client, shutdown your client, move the four acc_mgr_*.xml files to a save place and restart your boinc-client again. You should get a clean connect to BAM now.

ebahapo
PM Profile
BAM!-ID: 239
Joined: 2006-05-12
Posts: 656
Credits: 20,490,454
World-rank: 22,039
Posted 2011-01-28 21:44:09
rroonnaalldd wrote:
Okay. Then disable BAM in your client, shutdown your client, move the four acc_mgr_*.xml files to a save place and restart your boinc-client again. You should get a clean connect to BAM now.

Thanks, but no dice. I still see an empty acct_mgr_request error and the corrupt tag "</host_authentictoor>" in the XML files.

rroonnaalldd
PM
BAM!-ID: 15220
Joined: 2006-12-20
Posts: 207
Credits: 77,733,697
World-rank: 8,220
Posted 2011-01-28 23:37:24
Augustine wrote:
rroonnaalldd wrote:
Okay. Then disable BAM in your client, shutdown your client, move the four acc_mgr_*.xml files to a save place and restart your boinc-client again. You should get a clean connect to BAM now.

Thanks, but no dice. I still see an empty acct_mgr_request error and the corrupt tag "</host_authentictoor>" in the XML files.

Which source is your boinc-client, berkeley or linux-repo?

ebahapo
PM Profile
BAM!-ID: 239
Joined: 2006-05-12
Posts: 656
Credits: 20,490,454
World-rank: 22,039
Posted 2011-01-29 00:18:48
rroonnaalldd wrote:
Which source is your boinc-client, berkeley or linux-repo?

Berkeley.

rroonnaalldd
PM
BAM!-ID: 15220
Joined: 2006-12-20
Posts: 207
Credits: 77,733,697
World-rank: 8,220
Posted 2011-01-30 15:36:10
Augustine wrote:
rroonnaalldd wrote:
Which source is your boinc-client, berkeley or linux-repo?

Berkeley.

I saw some people at Primegrid using "6.10.58+dfsg-3". Maybe a repo-version for *buntu10.10, i don't know.

Khangollo
PM
BAM!-ID: 96613
Joined: 2011-02-08
Posts: 9
Credits: 869,577,717
World-rank: 1,376
Posted 2011-03-08 22:21:37
I had exactly the same problem with *all* my boinc clients on 64-bit Linux machines.
Then I took the boinc source code and equipped parsing code for acct_mgr_login.xml with bunch of printfs (heh!) to determine where the string corruption occurs.
Turns out, strip_whitespace (char array one) in lib/str_util.cpp garbles up strings which is exactly what causes xml being parsed incorrectly (that strcpy-ing?).
After replacing it with my own code, it strips white space from all strings correctly and connection with BAM! now works flawlessly.

Someone from boinc devel. team should check this one up.

ebahapo
PM Profile
BAM!-ID: 239
Joined: 2006-05-12
Posts: 656
Credits: 20,490,454
World-rank: 22,039
Posted 2011-03-08 23:02:43 , last modified: 2011-03-08 23:04:24
Khangollo wrote:
Turns out, strip_whitespace (char array one) in lib/str_util.cpp garbles up strings which is exactly what causes xml being parsed incorrectly (that strcpy-ing?).

Indeed, strcpy() is undefined if its arguments overlap. It seems that the BOINC developers did notice this issue last month, but this change hasn't made into any release yet, official or beta.

Thank you.

[BOINCstats] Willy
PM Profile
Forum moderator - Administrator - Developer - Tester - Translator
BAM!-ID: 1
Joined: 2006-01-09
Posts: 9032
Credits: 348,241,820
World-rank: 2,763
Posted 2011-03-09 05:56:13
The client side fix should be in the current beta release.

I also fixed it in BAM! by automagically replacing the wrong characters with the correct ones, the issue from TS should be solved.

Please do not PM, IM or email me for support (they will go unread/ignored). Use the forum for support.
ebahapo
PM Profile
BAM!-ID: 239
Joined: 2006-05-12
Posts: 656
Credits: 20,490,454
World-rank: 22,039
Posted 2011-03-09 15:31:21
BOINCstats Willy wrote:
The client side fix should be in the current beta release.

Are you sure about it? The source file tagged for 6.12.18 doesn't have the fix in yet (see here). Or am I missing something?

TIA

[BOINCstats] Willy
PM Profile
Forum moderator - Administrator - Developer - Tester - Translator
BAM!-ID: 1
Joined: 2006-01-09
Posts: 9032
Credits: 348,241,820
World-rank: 2,763
Posted 2011-03-09 16:00:41
Augustine wrote:
Are you sure about it? The source file tagged for 6.12.18 doesn't have the fix in yet (see here). Or am I missing something?

TIA


I'm certainly not sure about it because I don't make that modification. It's what it says in the release notes (see a couple of posts back).

Please do not PM, IM or email me for support (they will go unread/ignored). Use the forum for support.
Khangollo
PM
BAM!-ID: 96613
Joined: 2011-02-08
Posts: 9
Credits: 869,577,717
World-rank: 1,376
Posted 2011-03-09 16:14:09 , last modified: 2011-03-09 16:18:14
It's definitely not in 6.12.18 yet. I'm using this release right now and I had to replace the code (same error when synchronizing with Bam!).
If anyone is interested in a temporary fix, here is the code I replaced procedure strip_whitespace(char *str) (file lib/str_util.cpp) with:

Code:
// remove whitespace from start and end of a string
//
void strip_whitespace(char *str) {
int p = 0;
while (1) {
if (!str[p] || !isascii(str[p]) || !isspace(str[p]))
break;
p++;
}
if (p > 0) {
int tol = (int)strlen(str) - p + 1;
for (int i=0; i<tol; i++) {
str[i] = str[i+p];
}
}
p = (int)strlen(str) - 1;
while (1) {
if ((p < 0) || !isascii(str[p]) || !isspace(str[p]))
break;
p--;
}
str[p+1] = 0;
}


Detach/reattach to acount manager is needed (to get rid of corrupted files).

ebahapo
PM Profile
BAM!-ID: 239
Joined: 2006-05-12
Posts: 656
Credits: 20,490,454
World-rank: 22,039
Posted 2011-03-09 16:42:58
Khangollo wrote:
It's definitely not in 6.12.18 yet. I'm using this release right now and I had to replace the code (same error when synchronizing with Bam!).
If anyone is interested in a temporary fix, here is the code I replaced procedure strip_whitespace(char *str) (file lib/str_util.cpp) with:

BTW, not only written more elegantly, but also much faster than both the original code and the recent fix.

[BOINCstats] Willy
PM Profile
Forum moderator - Administrator - Developer - Tester - Translator
BAM!-ID: 1
Joined: 2006-01-09
Posts: 9032
Credits: 348,241,820
World-rank: 2,763
Posted 2011-03-09 16:51:52
Khangollo wrote:
It's definitely not in 6.12.18 yet. I'm using this release right now and I had to replace the code (same error when synchronizing with Bam!).


So you're saying that BAM! still doesn't handle the incorrect XML correctly? I'm fairly certain I fixed it. Can you give me a host id which still has the error?

Please do not PM, IM or email me for support (they will go unread/ignored). Use the forum for support.
ebahapo
PM Profile
BAM!-ID: 239
Joined: 2006-05-12
Posts: 656
Credits: 20,490,454
World-rank: 22,039
Posted 2011-03-09 16:58:43 , last modified: 2011-03-09 17:00:08
BOINCstats Willy wrote:
So you're saying that BAM! still doesn't handle the incorrect XML correctly? I'm fairly certain I fixed it. Can you give me a host id which still has the error?

It's not 6.12.18, but it still has the error: http://boincstats.com/bam/account_host.php?host_id=261814

However, I'd say that it's not worth to try to fix this from the BAM side. strcpy is undefined when the strings overlap. Period. You may get a fix in, but it will only work for certain flavors of Linux, depending on the version of GLIBC and whether or not they optimized their strcpy and how. Of course, you could try to fix many variants out there, but it would not address 100%.of the cases.

Good luck.

Curly
PM
BOINCstats SOFA member
BAM!-ID: 2588
Joined: 2006-06-26
Posts: 480
Credits: 166,529,917
World-rank: 4,747
Posted 2011-03-10 19:35:38
BOINCstats Willy wrote:
So you're saying that BAM! still doesn't handle the incorrect XML correctly? I'm fairly certain I fixed it. Can you give me a host id which still has the error?


Try host with BAM id 162290 (running Ubuntu 10.04). I detached yesterday and attached successfully. Next synchronization with BAM failed with message "Account manager error: 0 acct_mgr_request empty or corrupt!".

acct_mgr_login.xml contains the wrong opaque section: "<opaque><host_authenticator>...</host_authentictoor></opaque>"
supernoctem
PM
BAM!-ID: 18714
Joined: 2007-02-06
Posts: 1
Credits: 6,837,454
World-rank: 51,666
Posted 2011-05-10 09:55:32 , last modified: 2011-05-10 10:06:10
Ok So I got this error fixed on my side (Kubuntu 10.10) this way:


  1. Detaching from BAM!
  2. Deleting all acct_mgr_* files in the boinc directory.
  3. Re-attaching to BAM!



I suspect this will work for others as well, seeing as it is a problem between your host and BAM! communicating with each other. I also noticed that this happened when BoincStats.com was quite busy and had major load on their servers. I suspect that something between myself and BAM! got mixed up, and the client didn't auto-fix this.

Point is, I got it solved and I'm not blaming anyone.
I should add, I have not restarted my pc yet, so we'll see what happens then.

If anyone has a better fix, please comment here.


ebahapo
PM Profile
BAM!-ID: 239
Joined: 2006-05-12
Posts: 656
Credits: 20,490,454
World-rank: 22,039
Posted 2011-07-13 16:31:25 , last modified: 2011-07-13 16:32:43
I compiled the client with version tag 6.13.0 and they finally fixed their broken string parsing routine. The client is now finally working with BAM as it should.

Pages: 1 [2]

Index :: BAM! Bug Report :: Inconsistent signing key from account manager
Reason: