From 3ea7a6988e7a038e1b0604a56c828b929c60d0d5 Mon Sep 17 00:00:00 2001 From: Denis Ovsienko Date: Sat, 4 Jan 2014 16:39:33 +0400 Subject: IPv6: refresh options decoding (GH #47 pt. 3) Brian Haley points that mobility (sub-)options decoded in print-ip6opts.c are specific to draft-ietf-mobileip-ipv6 only. RFC3775 (and respectively RFC6275) uses different encoding and parameter space, which print-mobility.c already handles. Remove deprecated code and update some related macros. --- ip6.h | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) (limited to 'ip6.h') diff --git a/ip6.h b/ip6.h index da5a570a..c19d7ee4 100644 --- a/ip6.h +++ b/ip6.h @@ -127,11 +127,15 @@ struct ip6_dest { /* followed by options */ } UNALIGNED; +/* http://www.iana.org/assignments/ipv6-parameters/ipv6-parameters.xhtml */ + /* Option types and related macros */ #define IP6OPT_PAD1 0x00 /* 00 0 00000 */ #define IP6OPT_PADN 0x01 /* 00 0 00001 */ #define IP6OPT_JUMBO 0xC2 /* 11 0 00010 = 194 */ #define IP6OPT_JUMBO_LEN 6 +#define IP6OPT_RPL 0x63 /* 01 1 00011 */ +#define IP6OPT_TUN_ENC_LIMIT 0x04 /* 00 0 00100 */ #define IP6OPT_ROUTER_ALERT 0x05 /* 00 0 00101 */ #define IP6OPT_RTALERT_LEN 4 @@ -140,11 +144,16 @@ struct ip6_dest { #define IP6OPT_RTALERT_ACTNET 2 /* contains an Active Networks msg */ #define IP6OPT_MINLEN 2 -#define IP6OPT_BINDING_UPDATE 0xc6 /* 11 0 00110 */ -#define IP6OPT_BINDING_ACK 0x07 /* 00 0 00111 */ -#define IP6OPT_BINDING_REQ 0x08 /* 00 0 01000 */ +#define IP6OPT_QUICK_START 0x26 /* 00 1 00110 */ +#define IP6OPT_CALIPSO 0x07 /* 00 0 00111 */ +#define IP6OPT_SMF_DPD 0x08 /* 00 0 01000 */ #define IP6OPT_HOME_ADDRESS 0xc9 /* 11 0 01001 */ +#define IP6OPT_HOMEADDR_MINLEN 18 #define IP6OPT_EID 0x8a /* 10 0 01010 */ +#define IP6OPT_ILNP_NOTICE 0x8b /* 10 0 01011 */ +#define IP6OPT_LINE_ID 0x8c /* 10 0 01100 */ +#define IP6OPT_MPL 0x6d /* 01 1 01101 */ +#define IP6OPT_IP_DFF 0xee /* 11 1 01110 */ #define IP6OPT_TYPE(o) ((o) & 0xC0) #define IP6OPT_TYPE_SKIP 0x00 -- cgit v1.2.1