lwip-users
[Top][All Lists]
Advanced

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

Re: [lwip-users] IPV6 Stack in LWIP 2.0: Is it IPv6 Ready ?


From: Arpit Agarwal
Subject: Re: [lwip-users] IPV6 Stack in LWIP 2.0: Is it IPv6 Ready ?
Date: Fri, 7 Oct 2016 17:38:38 +0000

Hi Ivan,


I am testing Core Protocols Only.


For e.g. Core Protocols Section 1: (spec.p2) : In my test many of the test cases are failing due to improper neighbor cache cleanup. If I am not wrong, the reason might be non-handling of one of the transition of nd6 state machine (refer link: https://njetwork.files.wordpress.com/2014/01/msi_ipv6-nd-state-machine1.png). I am unable to find the State change from Reachable to Stale on receiving NA with LLADDR change anywhere in the nd6 code.


Similary as per RFC 4861 , DAD-NA might not contain lladdr_opt, but the stack in lwip seems to drop NA if there is not lladdr_opt.

Refer Below code from nd6.c:

/* Unsolicited NA?*/
    if (ip6_addr_ismulticast(ip6_current_dest_addr())) {
      /* This is an unsolicited NA.
       * link-layer changed?
       * part of DAD mechanism? */

      /* Check that link-layer address option also fits in packet. */
      if (p->len < (sizeof(struct na_header) + 2)) {
        /* @todo debug message */
        pbuf_free(p);
        ND6_STATS_INC(nd6.lenerr);
        ND6_STATS_INC(nd6.drop);
        return;
      }

      lladdr_opt = (struct lladdr_option *)((u8_t*)p->payload + sizeof(struct na_header));

      if (p->len < (sizeof(struct na_header) + (lladdr_opt->length << 3))) {
        /* @todo debug message */
        pbuf_free(p);
        ND6_STATS_INC(nd6.lenerr);
        ND6_STATS_INC(nd6.drop);
        return;
      }


Please correct me if I am wrong or I am missing something.



-- 
Thanks & Regards,
ARPIT


From: lwip-users <lwip-users-bounces+address@hidden> on behalf of address@hidden <address@hidden>
Sent: Friday, October 7, 2016 10:26:17 PM
To: address@hidden
Subject: Re: [lwip-users] IPV6 Stack in LWIP 2.0: Is it IPv6 Ready ?
 
Hi,

When I did the testing, several years back, I was going for the "IPv6
Silver" which included the core protocols. I believe all but one of the
tests passed, I don't remember what was missing, but it didn't seem like
a big issue for a "lightweight" stack.

The Silver level is no longer supported, the Gold/Phase 2 tests include
more features, and many are not supported. E.g. DHCPv6, IPSec, etc.

I also think you can get individual test suites for different protocols
and list which ones you support.

I believe this would make a great M.Sc. Thesis work if anyone out there
wants to give it a go. I'd be happy to supervise/cooperate, I've done a
few of those jobs already.

Cheers
Ivan



> Date: Fri, 7 Oct 2016 13:08:33 +0000
> From: "Arpit  Agarwal" <address@hidden>
> To: "address@hidden" <address@hidden>
> Subject: Re: [lwip-users] IPV6 Stack in LWIP 2.0: Is it IPv6 Ready ?
> Message-ID:
>        <address@hidden>
>
> Content-Type: text/plain; charset="iso-8859-1"
>
> Hi Simon,
>
>
> Just for information, I am using Self Test Tool version 5.0.0 (IPv6
> Phase 2 test). Also when I analyzed reason for failed test cases I
> found functionality missing too in the code. Also first I tested using
> lwip-contrib unixsim and my port, but still test cases were failing.
>
>
> --
> Thanks & Regards,
> ARPIT

_______________________________________________
lwip-users mailing list
address@hidden
https://lists.nongnu.org/mailman/listinfo/lwip-users

reply via email to

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