Subject: Re: ICMP messages.
To: None <tech-net@netbsd.org>
From: Rune Pedersen <runepe@stud.cs.uit.no>
List: tech-net
Date: 09/21/2000 17:00:45
itojun@iijlab.net wrote:
> 
> >I am unable to receive ICMPv6 messages with type 1,2 & 4. I have made a
> >client which sends ICMPv6 messages with these types, but my server
> >program doesn't detect them. I'm making an IPv6/IPv4 relay, and would
> >like to receive all ICMP messages into userspace. Is there an elegant
> >way to get the kernel to hand these type of messages to a userlevel
> >program?
> 
>         RFC2292 talks about how to manipulate ICMPv6 inbound and outbound
>         messages via AF_INET6 (IPPROTO_ICMPV6) sockets.  source code for
>         sbin/ping6, usr.sbin/rtsold and sbin/traceroute6 should be a good
>         reference.
> 
> itojun

As far as I can see, none of the 3 programs mentioned do receive ICMP
messages of type 1,2 or 4. In fact, my program is based upon some of the
ping6 code. Stevens "Network programming. Networking APIs: Sockets and
XTI vol 1" does mention that type 1,2 and 4 ICMPv6 messages generate an
errno in userspace, but are received and processed by the kernel only.
The rest of
the messages (like echo reply, type 128) are handled by user process
according to the same book.

Rune.

-- 
Rune Pedersen                
Siv.Ing k-96 Informatikk     
http://www.cs.uit.no/~runepe