[support] MR Flag Prob

Ben McCarthy b.mccarthy at lancaster.ac.uk
Tue Jun 2 22:54:32 JST 2009


Hi Romain,

I have actually just found the problem. The device I am using is big endian
and therefore the value of IP6_MH_BU_MR gets set to 0x0400. However, mob_rtr
in the home_addr_info struct is only set to be a uint8_t so 400 is too big
for it. Setting it to a uint16_t solves the problem.

I am only using umip 0.3 so this may have been solved in 0.4, if not what do
you think is the best permanent fix? Change the mob_rtr variable or change
the values of IP6_MH_BU_ETC to all fit in uint8_t?

Cheers,

Ben 

> -----Original Message-----
> From: Romain KUNTZ [mailto:kuntz at lsiit.u-strasbg.fr]
> Sent: 02 June 2009 14:05
> To: Ben McCarthy
> Cc: Support ML
> Subject: Re: MR Flag Prob
> 
> Hi Ben,
> 
> I've added the support ML as architecture issues have been discussed
> recently there.
> 
> On 2009/06/01, at 19:38, Ben McCarthy wrote:
> > I just stuck a check in to process_first_home_bu after the line:
> >
> > bule->flags = (IP6_MH_BU_HOME | IP6_MH_BU_ACK |
> >                        hai->lladdr_comp | hai->mob_rtr);
> >
> > I put in:
> >
> > if(bule->flags & IP6_MH_BU_MR)
> >                         Print..
> >               Else
> >                         ..
> >
> > And it appears that IP6_MH_BU_MR isn't set at this stage. Could this
> > be anything to do with the difference in endianess between x86 and
> > mips?
> >
> > Are there any other checks you can recommend I perform?
> 
> Could you check the value of "hai->mob_rtr" in the above code? It is
> supposed to be set to IP6_MH_BU_MR when the "IsMobRtr" flag is enabled
> in the config file of the MR (it is set in src/gram.y).
> 
> Cheers,
> romain




More information about the Support mailing list