X-Git-Url: http://git.sameswireless.fr/l2tpns.git/blobdiff_plain/f22a9cebbe6a3a99c6c5bd5e9fd410274a8562b9..bb40243c71b99c8bbb08deb95c68b7af9b7bb0d4:/icmp.c?ds=sidebyside diff --git a/icmp.c b/icmp.c index 56b83b4..5f05127 100644 --- a/icmp.c +++ b/icmp.c @@ -1,7 +1,5 @@ // L2TPNS: icmp -char const *cvs_id_icmp = "$Id: icmp.c,v 1.10 2005-08-10 11:25:56 bodea Exp $"; - #include #include #include @@ -15,8 +13,10 @@ char const *cvs_id_icmp = "$Id: icmp.c,v 1.10 2005-08-10 11:25:56 bodea Exp $"; #include #include #include +#include #include "l2tpns.h" +#include "pppoe.h" static uint16_t _checksum(uint8_t *addr, int count); @@ -114,7 +114,7 @@ void send_ipv6_ra(sessionidt s, tunnelidt t, struct in6_addr *ip) LOG(3, s, t, "Sending IPv6 RA\n"); memset(b, 0, sizeof(b)); - o = makeppp(b, sizeof(b), 0, 0, s, t, PPPIPV6); + o = makeppp(b, sizeof(b), 0, 0, s, t, PPPIPV6, 0, 0, 0); if (!o) { @@ -132,7 +132,9 @@ void send_ipv6_ra(sessionidt s, tunnelidt t, struct in6_addr *ip) *(o+9) = 0x80; *(o+23) = 1; if (ip != NULL) + { memcpy(o+24, ip, 16); // dest = ip + } else { // FF02::1 - all hosts