I asked my collegeau about it and he also thinks it's like I said ...we tested it and it works ...then again we do not really use IPv6 yet so it's done in the lab.

I have a text here that states :

The problem is that it discards the low-order bits, as it
should do, but you then have to compare the *high-order* bits, with

ip[0] & 0xf0 != 0x40

The mask operation does *NOT* move the high-order bits down; it leaves
them where they are.

I kow it came of the internet somewhere but I don't know from where exactly , I'll ask him tommorow.

Also I found a bit of interesting stuff on the net ..try this link maybe it helps ?

Gr33tz