Subject: kern/9340: NetBSD/alpha can't reassemble IPv6 packet
To: None <gnats-bugs@gnats.netbsd.org>
From: None <iwamoto@sat.t.u-tokyo.ac.jp>
List: netbsd-bugs
Date: 02/03/2000 04:37:02
>Number:         9340
>Category:       kern
>Synopsis:       NetBSD/alpha can't reassemble IPv6 packet
>Confidential:   no
>Severity:       serious
>Priority:       high
>Responsible:    kern-bug-people (Kernel Bug People)
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Thu Feb  3 04:36:01 2000
>Last-Modified:
>Originator:     
>Organization:
>Release:        a few days old -current
>Environment:
	
System: NetBSD vega.sat.t.u-tokyo.ac.jp 1.4R NetBSD 1.4R (VEGA) #21: Thu Feb 3 20:18:49 JST 2000 iwamoto@vega.sat.t.u-tokyo.ac.jp:/usr/src/syssrc/sys/arch/alpha/compile/VEGA alpha


>Description:
NetBSD/alpha can't reassemble fragmented IPv6 pacekt successfully.
It can't respond to fragmented ICMP or UDP packets.
Although sending fragmented packets seems OK.

>How-To-Repeat:
send fragmented packets to NetBSD/alpha machine(vega):
  $ traceroute6 vega 1500
or,
  $ ping6 -s 1500 vega

>Fix:
probably the problem is around sys/netinet6/frag6.c:306:

        /* Override the IPv6 header */
        ip6af = (struct ip6asfrag *)ip6;

because ip6_hdr and ip6asfrag have different data structures on
sizeof(long)!=4 archs. But I couldn't fix simply by replacing
u_long's in ip6asfrag with u_int32_t.
>Audit-Trail:
>Unformatted: