[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