gnunet-developers
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: I think I have fixed it somehow.


From: Martin Schanzenbach
Subject: Re: I think I have fixed it somehow.
Date: Mon, 09 Nov 2020 15:55:25 +0900
User-agent: Evolution 3.38.1 (3.38.1-1.fc33)

On Mon, 2020-11-09 at 01:18 +0000, Daniel Golle wrote:
> On Mon, Nov 09, 2020 at 07:20:35AM +0900, Martin Schanzenbach wrote:
> > Well, good catch ;)
> > 
> > I agree with David that this very likely was not the issue.
> > We all are on LE systems (unless you have an old powerbook or a
> > sparc?). Which means that the only reason why that assert may fail
> > is
> > if the caller forgot to convert the size field to BE.
> 
> Or on OpenWrt :) Most MIPS boxes running OpenWrt are big endian,
> ie. all Lantiq, Broadcom and Atheros MIPS SoCs (MediaTek/Ralink being
> the exception with little endian).
> 

Good to know! Maybe we need a MIPS runner for the CI then!
However, IF you had BE, then the operation would be a NOP and thus
wouldn't result in a failed assertion even if the caller forgot to
convert!

BR

> > 
> > My money is on this: Your change to the gnunet_crypto_lib.h header
> > triggered a recompile of most of the gnunet code. This fixed some
> > binary-level inconsistencies which caused the tests to fail.
> > 
> > BR
> > Martin
> >  
> > On Sun, 2020-11-08 at 16:24 +0100, TheJackiMonster wrote:
> > > I thought so too. That's why I was really surprised that it made
> > > any
> > > difference because it was also in an assert statement.
> > > 
> > > Maybe I changed anything else during configuration which lead to
> > > passing the testcases but I can't think of anything.
> > > 
> > > Anyway in worst case, nothing changed by that commit. Otherwise
> > > some
> > > tests won't fail now on weird setups. ^^'
> > > 
> > > On Sun, 2020-11-08 at 08:33 -0600, David Barksdale wrote:
> > > > I don't understand how swapping htonl with ntohl made any
> > > > difference,
> > > > they are the same function. If you're on a big-endian system
> > > > they
> > > > both
> > > > do nothing, if you're on a little-endian system they both swap
> > > > byte
> > > > order, you'd have to be on some insane "middle-endian" system
> > > > where
> > > > one
> > > > rotates left and the other rotates right for them to do
> > > > different
> > > > things.
> > > > 
> > > > On 11/7/20 6:58 PM, TheJackiMonster wrote:
> > > > > Hey,
> > > > > 
> > > > > funny story... I was actually debugging my code of the
> > > > > messenger
> > > > > service and encountered a weird bug which was caused by an
> > > > > assert
> > > > > in
> > > > > one of my latest changes (the signing via EGO keys).
> > > > > 
> > > > > It turned out the assert failed because of a wrongly used
> > > > > htonl()
> > > > > instead of ntohl() to check the signatures size. But I was
> > > > > really
> > > > > confused of this because I was very certain, I had copied it
> > > > > from
> > > > > the
> > > > > signing macro for ECDSA keys to not make any mistake. ^^'
> > > > > 
> > > > > ...well, I did: So it seemed that both (ECDSA and EDDSA) sign
> > > > > makros
> > > > > and the one (ECDSA) verify makro swapped htonl() and ntohl()
> > > > > in
> > > > > its
> > > > > first assert.
> > > > > 
> > > > > So I tried correcting it and it looks like nearly all of the
> > > > > tests
> > > > > pass
> > > > > now. Before most tests didn't even start when I called 'make
> > > > > check'
> > > > > (only 50) and one test of them failed while one other skipped
> > > > > (which I
> > > > > thought was normal from such a huge project) but that simply
> > > > > changed
> > > > > just by flipping this typo. I have never seen so much green
> > > > > flowing
> > > > > down during debugging before. ^^'
> > > > > 
> > > > > I guess, I will commit the change to the main branch. Lucky
> > > > > thing
> > > > > to
> > > > > encounter. ^-^
> > > > > 
> > > > > Oh and by the way the messenger service seems to work fine
> > > > > now as
> > > > > well
> > > > > but I still need to write more testcases to make sure huge
> > > > > groups
> > > > > work
> > > > > actually as intended.
> > > > > 
> > > > > Happy hacking
> > > > > Jacki
> > > > > 
> > > > 
> > > 
> > 
> 
> 

Attachment: signature.asc
Description: This is a digitally signed message part


reply via email to

[Prev in Thread] Current Thread [Next in Thread]