Watt-32 tcp/ip  2.2 dev-rel.10
Data Structures | Functions | Variables
pcicmp6.c File Reference

Go to the source code of this file.

Data Structures

struct  prefix_table
 
struct  _pkt
 

Functions

static void icmp6_print (int dbg_lvl, const char *msg, const void *src)
 
static int icmp6_send (in6_Header *ip, ICMP6_PKT *icmp, UINT len)
 
static void router_advert (const union ICMP6_PKT *icmp, unsigned len)
 
static int neighbor_advert (const eth_address *eth)
 
static void echo_reply (const in6_Header *ip, const union ICMP6_PKT *icmp)
 
static const voidicmp6_mac_addr (const void *ip_addr)
 
int icmp6_router_solicitation (void)
 
BOOL icmp6_add_gateway4 (void)
 
int icmp6_neigh_solic (const void *addr, eth_address *eth)
 
void icmp6_handler (const in6_Header *ip)
 
void icmp6_unreach (const in6_Header *ip, int code)
 
struct icmp6_cacheicmp6_ncache_lookup (const void *ip)
 
struct icmp6_cacheicmp6_ncache_insert (const void *ip, const void *eth)
 
struct icmp6_cacheicmp6_ncache_insert_fix (const void *ip, const void *eth)
 
static void parse_options (const BYTE *opt, unsigned max)
 

Variables

struct prefix_table prefix_list [10]
 
struct icmp6_cache neighbor_cache [ND_CACHE_SIZE]
 
struct icmp6_cache destin_cache [ND_CACHE_SIZE]
 
int icmp6_prefix_len
 
ip6_address icmp6_prefix
 
DWORD icmp6_6to4_gateway = 0
 
static const char * icmp6_options_str []
 
static WORD route_lifetime
 

Detailed Description

ICMP routines for IPv6 (RFC-2461/2463).

Copyright (c) 1997-2002 Gisle Vanem gvane.nosp@m.m@ya.nosp@m.hoo.n.nosp@m.o

Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:

  1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
  2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
  3. All advertising materials mentioning features or use of this software must display the following acknowledgement: This product includes software developed by Gisle Vanem Bergen, Norway.

THIS SOFTWARE IS PROVIDED BY ME (Gisle Vanem) AND CONTRIBUTORS ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL I OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

Version

0.5 : Aug 01, 2002 : G. Vanem - created

Lot of works remains to get routing working.

Definition in file pcicmp6.c.

Function Documentation

int icmp6_neigh_solic ( const void addr,
eth_address *  eth 
)
Todo:
wait for Neighbor Advertisement

Definition at line 172 of file pcicmp6.c.

References _eth_addr, and _eth_formatpacket().

Variable Documentation

const char* icmp6_options_str[]
static
Initial value:
= {
"",
__LANG ("source link-layer addr"),
__LANG ("target link-layer addr"),
__LANG ("prefix information"),
__LANG ("redirected header"),
__LANG ("MTU")
}

Definition at line 90 of file pcicmp6.c.