On 14.02.2016 18:47, Samuel Thibault wrote: > From: Guillaume Subiron <maet...@subiron.org> > > This patch adds the functions needed to handle IPv6 packets. ICMPv6 and > NDP headers are implemented. > > Slirp is now able to send NDP Router or Neighbor Advertisement when it > receives Router or Neighbor Solicitation. Using a 64bit-sized IPv6 > prefix, the guest is now able to perform stateless autoconfiguration > (SLAAC) and to compute its IPv6 address. > > This patch adds an ndp_table, mainly inspired by arp_table, to keep an > NDP cache and manage network address resolution. > Slirp regularly sends NDP Neighbor Advertisement, as recommended by the > RFC, to make the guest refresh its route. > > This also adds ip6_cksum() to compute ICMPv6 checksums using IPv6 > pseudo-header. > > Some #define ETH_* are moved upper in slirp.h to make them accessible to > other slirp/*.h > > Signed-off-by: Guillaume Subiron <maet...@subiron.org> > Signed-off-by: Samuel Thibault <samuel.thiba...@ens-lyon.org> > --- > slirp/Makefile.objs | 6 +- > slirp/cksum.c | 25 ++++ > slirp/if.c | 2 +- > slirp/ip6.h | 135 ++++++++++++++++++++ > slirp/ip6_icmp.c | 347 > ++++++++++++++++++++++++++++++++++++++++++++++++++++ > slirp/ip6_icmp.h | 203 ++++++++++++++++++++++++++++++ > slirp/ip6_input.c | 69 +++++++++++ > slirp/ip6_output.c | 38 ++++++ > slirp/ndp_table.c | 84 +++++++++++++ > slirp/slirp.c | 49 +++++++- > slirp/slirp.h | 37 ++++++ > slirp/socket.h | 7 ++ > 12 files changed, 996 insertions(+), 6 deletions(-) > create mode 100644 slirp/ip6.h > create mode 100644 slirp/ip6_icmp.c > create mode 100644 slirp/ip6_icmp.h > create mode 100644 slirp/ip6_input.c > create mode 100644 slirp/ip6_output.c > create mode 100644 slirp/ndp_table.c
Patch looks fine to me now. Reviewed-by: Thomas Huth <th...@redhat.com>