Deleted Added
full compact
icmp6.h (96116) icmp6.h (103842)
1/* $FreeBSD: head/sys/netinet/icmp6.h 96116 2002-05-06 16:28:25Z ume $ */
1/* $FreeBSD: head/sys/netinet/icmp6.h 103842 2002-09-23 06:25:08Z alfred $ */
2/* $KAME: icmp6.h,v 1.46 2001/04/27 15:09:48 itojun Exp $ */
3
4/*
5 * Copyright (C) 1995, 1996, 1997, and 1998 WIDE Project.
6 * All rights reserved.
7 *
8 * Redistribution and use in source and binary forms, with or without
9 * modification, are permitted provided that the following conditions

--- 65 unchanged lines hidden (view full) ---

75 u_int8_t icmp6_type; /* type field */
76 u_int8_t icmp6_code; /* code field */
77 u_int16_t icmp6_cksum; /* checksum field */
78 union {
79 u_int32_t icmp6_un_data32[1]; /* type-specific field */
80 u_int16_t icmp6_un_data16[2]; /* type-specific field */
81 u_int8_t icmp6_un_data8[4]; /* type-specific field */
82 } icmp6_dataun;
2/* $KAME: icmp6.h,v 1.46 2001/04/27 15:09:48 itojun Exp $ */
3
4/*
5 * Copyright (C) 1995, 1996, 1997, and 1998 WIDE Project.
6 * All rights reserved.
7 *
8 * Redistribution and use in source and binary forms, with or without
9 * modification, are permitted provided that the following conditions

--- 65 unchanged lines hidden (view full) ---

75 u_int8_t icmp6_type; /* type field */
76 u_int8_t icmp6_code; /* code field */
77 u_int16_t icmp6_cksum; /* checksum field */
78 union {
79 u_int32_t icmp6_un_data32[1]; /* type-specific field */
80 u_int16_t icmp6_un_data16[2]; /* type-specific field */
81 u_int8_t icmp6_un_data8[4]; /* type-specific field */
82 } icmp6_dataun;
83} __attribute__((__packed__));
83} __packed;
84
85#define icmp6_data32 icmp6_dataun.icmp6_un_data32
86#define icmp6_data16 icmp6_dataun.icmp6_un_data16
87#define icmp6_data8 icmp6_dataun.icmp6_un_data8
88#define icmp6_pptr icmp6_data32[0] /* parameter prob */
89#define icmp6_mtu icmp6_data32[0] /* packet too big */
90#define icmp6_id icmp6_data16[0] /* echo request/reply */
91#define icmp6_seq icmp6_data16[1] /* echo request/reply */

--- 82 unchanged lines hidden (view full) ---

174#define ND_REDIRECT_ROUTER 1 /* redirect to a better router */
175
176/*
177 * Multicast Listener Discovery
178 */
179struct mld_hdr {
180 struct icmp6_hdr mld_icmp6_hdr;
181 struct in6_addr mld_addr; /* multicast address */
84
85#define icmp6_data32 icmp6_dataun.icmp6_un_data32
86#define icmp6_data16 icmp6_dataun.icmp6_un_data16
87#define icmp6_data8 icmp6_dataun.icmp6_un_data8
88#define icmp6_pptr icmp6_data32[0] /* parameter prob */
89#define icmp6_mtu icmp6_data32[0] /* packet too big */
90#define icmp6_id icmp6_data16[0] /* echo request/reply */
91#define icmp6_seq icmp6_data16[1] /* echo request/reply */

--- 82 unchanged lines hidden (view full) ---

174#define ND_REDIRECT_ROUTER 1 /* redirect to a better router */
175
176/*
177 * Multicast Listener Discovery
178 */
179struct mld_hdr {
180 struct icmp6_hdr mld_icmp6_hdr;
181 struct in6_addr mld_addr; /* multicast address */
182} __attribute__((__packed__));
182} __packed;
183
184/* definitions to provide backward compatibility to old KAME applications */
185#ifndef _KERNEL
186#define mld6_hdr mld_hdr
187#define mld6_type mld_type
188#define mld6_code mld_code
189#define mld6_cksum mld_cksum
190#define mld6_maxdelay mld_maxdelay

--- 10 unchanged lines hidden (view full) ---

201
202/*
203 * Neighbor Discovery
204 */
205
206struct nd_router_solicit { /* router solicitation */
207 struct icmp6_hdr nd_rs_hdr;
208 /* could be followed by options */
183
184/* definitions to provide backward compatibility to old KAME applications */
185#ifndef _KERNEL
186#define mld6_hdr mld_hdr
187#define mld6_type mld_type
188#define mld6_code mld_code
189#define mld6_cksum mld_cksum
190#define mld6_maxdelay mld_maxdelay

--- 10 unchanged lines hidden (view full) ---

201
202/*
203 * Neighbor Discovery
204 */
205
206struct nd_router_solicit { /* router solicitation */
207 struct icmp6_hdr nd_rs_hdr;
208 /* could be followed by options */
209} __attribute__((__packed__));
209} __packed;
210
211#define nd_rs_type nd_rs_hdr.icmp6_type
212#define nd_rs_code nd_rs_hdr.icmp6_code
213#define nd_rs_cksum nd_rs_hdr.icmp6_cksum
214#define nd_rs_reserved nd_rs_hdr.icmp6_data32[0]
215
216struct nd_router_advert { /* router advertisement */
217 struct icmp6_hdr nd_ra_hdr;
218 u_int32_t nd_ra_reachable; /* reachable time */
219 u_int32_t nd_ra_retransmit; /* retransmit timer */
220 /* could be followed by options */
210
211#define nd_rs_type nd_rs_hdr.icmp6_type
212#define nd_rs_code nd_rs_hdr.icmp6_code
213#define nd_rs_cksum nd_rs_hdr.icmp6_cksum
214#define nd_rs_reserved nd_rs_hdr.icmp6_data32[0]
215
216struct nd_router_advert { /* router advertisement */
217 struct icmp6_hdr nd_ra_hdr;
218 u_int32_t nd_ra_reachable; /* reachable time */
219 u_int32_t nd_ra_retransmit; /* retransmit timer */
220 /* could be followed by options */
221} __attribute__((__packed__));
221} __packed;
222
223#define nd_ra_type nd_ra_hdr.icmp6_type
224#define nd_ra_code nd_ra_hdr.icmp6_code
225#define nd_ra_cksum nd_ra_hdr.icmp6_cksum
226#define nd_ra_curhoplimit nd_ra_hdr.icmp6_data8[0]
227#define nd_ra_flags_reserved nd_ra_hdr.icmp6_data8[1]
228#define ND_RA_FLAG_MANAGED 0x80
229#define ND_RA_FLAG_OTHER 0x40

--- 11 unchanged lines hidden (view full) ---

241#define ND_RA_FLAG_RTPREF_RSV 0x10 /* 00010000 */
242
243#define nd_ra_router_lifetime nd_ra_hdr.icmp6_data16[1]
244
245struct nd_neighbor_solicit { /* neighbor solicitation */
246 struct icmp6_hdr nd_ns_hdr;
247 struct in6_addr nd_ns_target; /*target address */
248 /* could be followed by options */
222
223#define nd_ra_type nd_ra_hdr.icmp6_type
224#define nd_ra_code nd_ra_hdr.icmp6_code
225#define nd_ra_cksum nd_ra_hdr.icmp6_cksum
226#define nd_ra_curhoplimit nd_ra_hdr.icmp6_data8[0]
227#define nd_ra_flags_reserved nd_ra_hdr.icmp6_data8[1]
228#define ND_RA_FLAG_MANAGED 0x80
229#define ND_RA_FLAG_OTHER 0x40

--- 11 unchanged lines hidden (view full) ---

241#define ND_RA_FLAG_RTPREF_RSV 0x10 /* 00010000 */
242
243#define nd_ra_router_lifetime nd_ra_hdr.icmp6_data16[1]
244
245struct nd_neighbor_solicit { /* neighbor solicitation */
246 struct icmp6_hdr nd_ns_hdr;
247 struct in6_addr nd_ns_target; /*target address */
248 /* could be followed by options */
249} __attribute__((__packed__));
249} __packed;
250
251#define nd_ns_type nd_ns_hdr.icmp6_type
252#define nd_ns_code nd_ns_hdr.icmp6_code
253#define nd_ns_cksum nd_ns_hdr.icmp6_cksum
254#define nd_ns_reserved nd_ns_hdr.icmp6_data32[0]
255
256struct nd_neighbor_advert { /* neighbor advertisement */
257 struct icmp6_hdr nd_na_hdr;
258 struct in6_addr nd_na_target; /* target address */
259 /* could be followed by options */
250
251#define nd_ns_type nd_ns_hdr.icmp6_type
252#define nd_ns_code nd_ns_hdr.icmp6_code
253#define nd_ns_cksum nd_ns_hdr.icmp6_cksum
254#define nd_ns_reserved nd_ns_hdr.icmp6_data32[0]
255
256struct nd_neighbor_advert { /* neighbor advertisement */
257 struct icmp6_hdr nd_na_hdr;
258 struct in6_addr nd_na_target; /* target address */
259 /* could be followed by options */
260} __attribute__((__packed__));
260} __packed;
261
262#define nd_na_type nd_na_hdr.icmp6_type
263#define nd_na_code nd_na_hdr.icmp6_code
264#define nd_na_cksum nd_na_hdr.icmp6_cksum
265#define nd_na_flags_reserved nd_na_hdr.icmp6_data32[0]
266#if BYTE_ORDER == BIG_ENDIAN
267#define ND_NA_FLAG_ROUTER 0x80000000
268#define ND_NA_FLAG_SOLICITED 0x40000000

--- 6 unchanged lines hidden (view full) ---

275#endif
276#endif
277
278struct nd_redirect { /* redirect */
279 struct icmp6_hdr nd_rd_hdr;
280 struct in6_addr nd_rd_target; /* target address */
281 struct in6_addr nd_rd_dst; /* destination address */
282 /* could be followed by options */
261
262#define nd_na_type nd_na_hdr.icmp6_type
263#define nd_na_code nd_na_hdr.icmp6_code
264#define nd_na_cksum nd_na_hdr.icmp6_cksum
265#define nd_na_flags_reserved nd_na_hdr.icmp6_data32[0]
266#if BYTE_ORDER == BIG_ENDIAN
267#define ND_NA_FLAG_ROUTER 0x80000000
268#define ND_NA_FLAG_SOLICITED 0x40000000

--- 6 unchanged lines hidden (view full) ---

275#endif
276#endif
277
278struct nd_redirect { /* redirect */
279 struct icmp6_hdr nd_rd_hdr;
280 struct in6_addr nd_rd_target; /* target address */
281 struct in6_addr nd_rd_dst; /* destination address */
282 /* could be followed by options */
283} __attribute__((__packed__));
283} __packed;
284
285#define nd_rd_type nd_rd_hdr.icmp6_type
286#define nd_rd_code nd_rd_hdr.icmp6_code
287#define nd_rd_cksum nd_rd_hdr.icmp6_cksum
288#define nd_rd_reserved nd_rd_hdr.icmp6_data32[0]
289
290struct nd_opt_hdr { /* Neighbor discovery option header */
291 u_int8_t nd_opt_type;
292 u_int8_t nd_opt_len;
293 /* followed by option specific data*/
284
285#define nd_rd_type nd_rd_hdr.icmp6_type
286#define nd_rd_code nd_rd_hdr.icmp6_code
287#define nd_rd_cksum nd_rd_hdr.icmp6_cksum
288#define nd_rd_reserved nd_rd_hdr.icmp6_data32[0]
289
290struct nd_opt_hdr { /* Neighbor discovery option header */
291 u_int8_t nd_opt_type;
292 u_int8_t nd_opt_len;
293 /* followed by option specific data*/
294} __attribute__((__packed__));
294} __packed;
295
296#define ND_OPT_SOURCE_LINKADDR 1
297#define ND_OPT_TARGET_LINKADDR 2
298#define ND_OPT_PREFIX_INFORMATION 3
299#define ND_OPT_REDIRECTED_HEADER 4
300#define ND_OPT_MTU 5
301
302#define ND_OPT_ROUTE_INFO 200 /* draft-ietf-ipngwg-router-preference, not officially assigned yet */
303
304struct nd_opt_prefix_info { /* prefix information */
305 u_int8_t nd_opt_pi_type;
306 u_int8_t nd_opt_pi_len;
307 u_int8_t nd_opt_pi_prefix_len;
308 u_int8_t nd_opt_pi_flags_reserved;
309 u_int32_t nd_opt_pi_valid_time;
310 u_int32_t nd_opt_pi_preferred_time;
311 u_int32_t nd_opt_pi_reserved2;
312 struct in6_addr nd_opt_pi_prefix;
295
296#define ND_OPT_SOURCE_LINKADDR 1
297#define ND_OPT_TARGET_LINKADDR 2
298#define ND_OPT_PREFIX_INFORMATION 3
299#define ND_OPT_REDIRECTED_HEADER 4
300#define ND_OPT_MTU 5
301
302#define ND_OPT_ROUTE_INFO 200 /* draft-ietf-ipngwg-router-preference, not officially assigned yet */
303
304struct nd_opt_prefix_info { /* prefix information */
305 u_int8_t nd_opt_pi_type;
306 u_int8_t nd_opt_pi_len;
307 u_int8_t nd_opt_pi_prefix_len;
308 u_int8_t nd_opt_pi_flags_reserved;
309 u_int32_t nd_opt_pi_valid_time;
310 u_int32_t nd_opt_pi_preferred_time;
311 u_int32_t nd_opt_pi_reserved2;
312 struct in6_addr nd_opt_pi_prefix;
313} __attribute__((__packed__));
313} __packed;
314
315#define ND_OPT_PI_FLAG_ONLINK 0x80
316#define ND_OPT_PI_FLAG_AUTO 0x40
317
318struct nd_opt_rd_hdr { /* redirected header */
319 u_int8_t nd_opt_rh_type;
320 u_int8_t nd_opt_rh_len;
321 u_int16_t nd_opt_rh_reserved1;
322 u_int32_t nd_opt_rh_reserved2;
323 /* followed by IP header and data */
314
315#define ND_OPT_PI_FLAG_ONLINK 0x80
316#define ND_OPT_PI_FLAG_AUTO 0x40
317
318struct nd_opt_rd_hdr { /* redirected header */
319 u_int8_t nd_opt_rh_type;
320 u_int8_t nd_opt_rh_len;
321 u_int16_t nd_opt_rh_reserved1;
322 u_int32_t nd_opt_rh_reserved2;
323 /* followed by IP header and data */
324} __attribute__((__packed__));
324} __packed;
325
326struct nd_opt_mtu { /* MTU option */
327 u_int8_t nd_opt_mtu_type;
328 u_int8_t nd_opt_mtu_len;
329 u_int16_t nd_opt_mtu_reserved;
330 u_int32_t nd_opt_mtu_mtu;
325
326struct nd_opt_mtu { /* MTU option */
327 u_int8_t nd_opt_mtu_type;
328 u_int8_t nd_opt_mtu_len;
329 u_int16_t nd_opt_mtu_reserved;
330 u_int32_t nd_opt_mtu_mtu;
331} __attribute__((__packed__));
331} __packed;
332
333struct nd_opt_route_info { /* route info */
334 u_int8_t nd_opt_rti_type;
335 u_int8_t nd_opt_rti_len;
336 u_int8_t nd_opt_rti_prefixlen;
337 u_int8_t nd_opt_rti_flags;
338 u_int32_t nd_opt_rti_lifetime;
339 /* prefix follows */
332
333struct nd_opt_route_info { /* route info */
334 u_int8_t nd_opt_rti_type;
335 u_int8_t nd_opt_rti_len;
336 u_int8_t nd_opt_rti_prefixlen;
337 u_int8_t nd_opt_rti_flags;
338 u_int32_t nd_opt_rti_lifetime;
339 /* prefix follows */
340} __attribute__((__packed__));
340} __packed;
341
342/*
343 * icmp6 namelookup
344 */
345
346struct icmp6_namelookup {
347 struct icmp6_hdr icmp6_nl_hdr;
348 u_int8_t icmp6_nl_nonce[8];
349 int32_t icmp6_nl_ttl;
350#if 0
351 u_int8_t icmp6_nl_len;
352 u_int8_t icmp6_nl_name[3];
353#endif
354 /* could be followed by options */
341
342/*
343 * icmp6 namelookup
344 */
345
346struct icmp6_namelookup {
347 struct icmp6_hdr icmp6_nl_hdr;
348 u_int8_t icmp6_nl_nonce[8];
349 int32_t icmp6_nl_ttl;
350#if 0
351 u_int8_t icmp6_nl_len;
352 u_int8_t icmp6_nl_name[3];
353#endif
354 /* could be followed by options */
355} __attribute__((__packed__));
355} __packed;
356
357/*
358 * icmp6 node information
359 */
360struct icmp6_nodeinfo {
361 struct icmp6_hdr icmp6_ni_hdr;
362 u_int8_t icmp6_ni_nonce[8];
363 /* could be followed by reply data */
356
357/*
358 * icmp6 node information
359 */
360struct icmp6_nodeinfo {
361 struct icmp6_hdr icmp6_ni_hdr;
362 u_int8_t icmp6_ni_nonce[8];
363 /* could be followed by reply data */
364} __attribute__((__packed__));
364} __packed;
365
366#define ni_type icmp6_ni_hdr.icmp6_type
367#define ni_code icmp6_ni_hdr.icmp6_code
368#define ni_cksum icmp6_ni_hdr.icmp6_cksum
369#define ni_qtype icmp6_ni_hdr.icmp6_data16[0]
370#define ni_flags icmp6_ni_hdr.icmp6_data16[1]
371
372#define NI_QTYPE_NOOP 0 /* NOOP */

--- 46 unchanged lines hidden (view full) ---

419#define NI_NODEADDR_FLAG_ANYCAST 0x4000 /* just experimental. not in spec */
420#endif
421#endif
422
423struct ni_reply_fqdn {
424 u_int32_t ni_fqdn_ttl; /* TTL */
425 u_int8_t ni_fqdn_namelen; /* length in octets of the FQDN */
426 u_int8_t ni_fqdn_name[3]; /* XXX: alignment */
365
366#define ni_type icmp6_ni_hdr.icmp6_type
367#define ni_code icmp6_ni_hdr.icmp6_code
368#define ni_cksum icmp6_ni_hdr.icmp6_cksum
369#define ni_qtype icmp6_ni_hdr.icmp6_data16[0]
370#define ni_flags icmp6_ni_hdr.icmp6_data16[1]
371
372#define NI_QTYPE_NOOP 0 /* NOOP */

--- 46 unchanged lines hidden (view full) ---

419#define NI_NODEADDR_FLAG_ANYCAST 0x4000 /* just experimental. not in spec */
420#endif
421#endif
422
423struct ni_reply_fqdn {
424 u_int32_t ni_fqdn_ttl; /* TTL */
425 u_int8_t ni_fqdn_namelen; /* length in octets of the FQDN */
426 u_int8_t ni_fqdn_name[3]; /* XXX: alignment */
427} __attribute__((__packed__));
427} __packed;
428
429/*
430 * Router Renumbering. as router-renum-08.txt
431 */
432struct icmp6_router_renum { /* router renumbering header */
433 struct icmp6_hdr rr_hdr;
434 u_int8_t rr_segnum;
435 u_int8_t rr_flags;
436 u_int16_t rr_maxdelay;
437 u_int32_t rr_reserved;
428
429/*
430 * Router Renumbering. as router-renum-08.txt
431 */
432struct icmp6_router_renum { /* router renumbering header */
433 struct icmp6_hdr rr_hdr;
434 u_int8_t rr_segnum;
435 u_int8_t rr_flags;
436 u_int16_t rr_maxdelay;
437 u_int32_t rr_reserved;
438} __attribute__((__packed__));
438} __packed;
439
440#define ICMP6_RR_FLAGS_TEST 0x80
441#define ICMP6_RR_FLAGS_REQRESULT 0x40
442#define ICMP6_RR_FLAGS_FORCEAPPLY 0x20
443#define ICMP6_RR_FLAGS_SPECSITE 0x10
444#define ICMP6_RR_FLAGS_PREVDONE 0x08
445
446#define rr_type rr_hdr.icmp6_type

--- 5 unchanged lines hidden (view full) ---

452 u_int8_t rpm_code;
453 u_int8_t rpm_len;
454 u_int8_t rpm_ordinal;
455 u_int8_t rpm_matchlen;
456 u_int8_t rpm_minlen;
457 u_int8_t rpm_maxlen;
458 u_int16_t rpm_reserved;
459 struct in6_addr rpm_prefix;
439
440#define ICMP6_RR_FLAGS_TEST 0x80
441#define ICMP6_RR_FLAGS_REQRESULT 0x40
442#define ICMP6_RR_FLAGS_FORCEAPPLY 0x20
443#define ICMP6_RR_FLAGS_SPECSITE 0x10
444#define ICMP6_RR_FLAGS_PREVDONE 0x08
445
446#define rr_type rr_hdr.icmp6_type

--- 5 unchanged lines hidden (view full) ---

452 u_int8_t rpm_code;
453 u_int8_t rpm_len;
454 u_int8_t rpm_ordinal;
455 u_int8_t rpm_matchlen;
456 u_int8_t rpm_minlen;
457 u_int8_t rpm_maxlen;
458 u_int16_t rpm_reserved;
459 struct in6_addr rpm_prefix;
460} __attribute__((__packed__));
460} __packed;
461
462#define RPM_PCO_ADD 1
463#define RPM_PCO_CHANGE 2
464#define RPM_PCO_SETGLOBAL 3
465#define RPM_PCO_MAX 4
466
467struct rr_pco_use { /* use prefix part */
468 u_int8_t rpu_uselen;
469 u_int8_t rpu_keeplen;
470 u_int8_t rpu_ramask;
471 u_int8_t rpu_raflags;
472 u_int32_t rpu_vltime;
473 u_int32_t rpu_pltime;
474 u_int32_t rpu_flags;
475 struct in6_addr rpu_prefix;
461
462#define RPM_PCO_ADD 1
463#define RPM_PCO_CHANGE 2
464#define RPM_PCO_SETGLOBAL 3
465#define RPM_PCO_MAX 4
466
467struct rr_pco_use { /* use prefix part */
468 u_int8_t rpu_uselen;
469 u_int8_t rpu_keeplen;
470 u_int8_t rpu_ramask;
471 u_int8_t rpu_raflags;
472 u_int32_t rpu_vltime;
473 u_int32_t rpu_pltime;
474 u_int32_t rpu_flags;
475 struct in6_addr rpu_prefix;
476} __attribute__((__packed__));
476} __packed;
477#define ICMP6_RR_PCOUSE_RAFLAGS_ONLINK 0x80
478#define ICMP6_RR_PCOUSE_RAFLAGS_AUTO 0x40
479
480#if BYTE_ORDER == BIG_ENDIAN
481#define ICMP6_RR_PCOUSE_FLAGS_DECRVLTIME 0x80000000
482#define ICMP6_RR_PCOUSE_FLAGS_DECRPLTIME 0x40000000
483#elif BYTE_ORDER == LITTLE_ENDIAN
484#define ICMP6_RR_PCOUSE_FLAGS_DECRVLTIME 0x80
485#define ICMP6_RR_PCOUSE_FLAGS_DECRPLTIME 0x40
486#endif
487
488struct rr_result { /* router renumbering result message */
489 u_int16_t rrr_flags;
490 u_int8_t rrr_ordinal;
491 u_int8_t rrr_matchedlen;
492 u_int32_t rrr_ifid;
493 struct in6_addr rrr_prefix;
477#define ICMP6_RR_PCOUSE_RAFLAGS_ONLINK 0x80
478#define ICMP6_RR_PCOUSE_RAFLAGS_AUTO 0x40
479
480#if BYTE_ORDER == BIG_ENDIAN
481#define ICMP6_RR_PCOUSE_FLAGS_DECRVLTIME 0x80000000
482#define ICMP6_RR_PCOUSE_FLAGS_DECRPLTIME 0x40000000
483#elif BYTE_ORDER == LITTLE_ENDIAN
484#define ICMP6_RR_PCOUSE_FLAGS_DECRVLTIME 0x80
485#define ICMP6_RR_PCOUSE_FLAGS_DECRPLTIME 0x40
486#endif
487
488struct rr_result { /* router renumbering result message */
489 u_int16_t rrr_flags;
490 u_int8_t rrr_ordinal;
491 u_int8_t rrr_matchedlen;
492 u_int32_t rrr_ifid;
493 struct in6_addr rrr_prefix;
494} __attribute__((__packed__));
494} __packed;
495#if BYTE_ORDER == BIG_ENDIAN
496#define ICMP6_RR_RESULT_FLAGS_OOB 0x0002
497#define ICMP6_RR_RESULT_FLAGS_FORBIDDEN 0x0001
498#elif BYTE_ORDER == LITTLE_ENDIAN
499#define ICMP6_RR_RESULT_FLAGS_OOB 0x0200
500#define ICMP6_RR_RESULT_FLAGS_FORBIDDEN 0x0100
501#endif
502

--- 238 unchanged lines hidden ---
495#if BYTE_ORDER == BIG_ENDIAN
496#define ICMP6_RR_RESULT_FLAGS_OOB 0x0002
497#define ICMP6_RR_RESULT_FLAGS_FORBIDDEN 0x0001
498#elif BYTE_ORDER == LITTLE_ENDIAN
499#define ICMP6_RR_RESULT_FLAGS_OOB 0x0200
500#define ICMP6_RR_RESULT_FLAGS_FORBIDDEN 0x0100
501#endif
502

--- 238 unchanged lines hidden ---