[Dibbler] dibbler-server an debian-armel

Tomasz Mrugalski thomson at klub.com.pl
Sat Aug 16 03:18:02 CEST 2008


On Sat, 16 Aug 2008 somebody known as Christian Andersen wrote:

> Thanks for the further investigation and the snapshot. I tried this snapshot
> with the client of Vista and with dibbler-client (on Debian/x86) but without
> success. In all cases dibbler-server cannot interpret the SOLICIT-message.
> Maybe it is really an endianess- or similar problem on my ARM-device.
>
> I attached new complete logs and dumps to this mail and also uploaded them:
> <http://milindur.de/~milindur/dl/dibbler/>. Dump and log belong to the same
> transaction.
Thanks! That helped a lot. Now I know what is going wrong, but I don't 
know the exact cause. During message parsing, when msg-type and 
transaction-id is parsed, dibbler starts option parsing. But for some 
reason, it starts one by too early. The suspected code is in SrvMsg.cpp, 
lines 132 and following:

         unsigned short code   = ntohs( *((unsigned short*) (buf+pos)));
         pos+=2;
         unsigned short length = ntohs( *((unsigned short*) (buf+pos)));
         pos+=2;

You could try to debug it. Or change it to something like this:

         unsigned short code   = buf[pos]*256 + buf[pos+1];
 	pos+=2;
 	unsigned short length = buf[pos]*256 + buf[pos+1];
 	pos+=2;

Very long time ago I've read about architecture that is not able to read 
words from memory that are not word-aligned. Maybe that is the case here?

If this doesn't help, here's another way.
Would it be possible for me to connect to your device and debug the 
problem? Keep in mind that to run dibbler, root access is required.

Regards,
-- 
Tomasz Mrugalski,              | Him not my excellent grammar to criticize I told. |
thomson(at)klub(dot)com(dot)pl |                                   angry Yoda      |


More information about the Dibbler mailing list