blob: 1f95395b3aa361da3d48f402a76a742ee2ba9540 [file] [log] [blame]
Simon Kelleyc5ad4e72012-02-24 16:06:20 +00001/* dnsmasq is Copyright (c) 2000-2012 Simon Kelley
2
3 This program is free software; you can redistribute it and/or modify
4 it under the terms of the GNU General Public License as published by
5 the Free Software Foundation; version 2 dated June, 1991, or
6 (at your option) version 3 dated 29 June, 2007.
7
8 This program is distributed in the hope that it will be useful,
9 but WITHOUT ANY WARRANTY; without even the implied warranty of
10 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 GNU General Public License for more details.
12
13 You should have received a copy of the GNU General Public License
14 along with this program. If not, see <http://www.gnu.org/licenses/>.
15*/
16
17#define ALL_HOSTS "FF02::1"
18#define ALL_ROUTERS "FF02::2"
19
Simon Kelley353ae4d2012-03-19 20:07:51 +000020struct ping_packet {
21 u8 type, code;
22 u16 checksum;
23 u16 identifier;
24 u16 sequence_no;
25};
26
Simon Kelleyc5ad4e72012-02-24 16:06:20 +000027struct ra_packet {
28 u8 type, code;
29 u16 checksum;
30 u8 hop_limit, flags;
31 u16 lifetime;
32 u32 reachable_time;
33 u32 retrans_time;
34};
35
36struct prefix_opt {
37 u8 type, len, prefix_len, flags;
38 u32 valid_lifetime, preferred_lifetime, reserved;
39 struct in6_addr prefix;
40};
41
Simon Kelleyc5ad4e72012-02-24 16:06:20 +000042#define ICMP6_OPT_SOURCE_MAC 1
43#define ICMP6_OPT_PREFIX 3
44#define ICMP6_OPT_MTU 5
45#define ICMP6_OPT_RDNSS 25
Simon Kelley18f0fb02012-03-31 21:18:55 +010046#define ICMP6_OPT_DNSSL 31
Simon Kelleyc5ad4e72012-02-24 16:06:20 +000047
48
49