summaryrefslogtreecommitdiff
path: root/src/odhcp6c.h
diff options
context:
space:
mode:
authorSteven Barth <steven@midlink.org>2014-03-30 19:51:56 +0200
committerSteven Barth <steven@midlink.org>2014-03-30 19:51:56 +0200
commit47fac6f603c236d7b149e0ec593269322572b352 (patch)
tree082d94f6e3f4c1a9145123afd60989e03a50ac31 /src/odhcp6c.h
parent6c8109e0c77d5a54950ba607d1ec1f83d5efb5b7 (diff)
downloadodhcp6c-47fac6f603c236d7b149e0ec593269322572b352.tar.gz
Add initial support for CER-ID
Diffstat (limited to 'src/odhcp6c.h')
-rw-r--r--src/odhcp6c.h14
1 files changed, 14 insertions, 0 deletions
diff --git a/src/odhcp6c.h b/src/odhcp6c.h
index f9a3fec..2bc289b 100644
--- a/src/odhcp6c.h
+++ b/src/odhcp6c.h
@@ -67,6 +67,10 @@ enum dhcvp6_opt {
/* draft-bhandari-dhc-class-based-prefix, not yet standardized */
DHCPV6_OPT_PREFIX_CLASS = EXT_PREFIX_CLASS,
#endif
+#ifdef EXT_CER_ID
+ /* draft-donley-dhc-cer-id-option-03 */
+ DHCPV6_OPT_CER_ID = EXT_CER_ID,
+#endif
};
enum dhcpv6_opt_npt {
@@ -170,6 +174,15 @@ struct dhcpv6_auth_reconfigure {
uint8_t key[16];
} _packed;
+struct dhcpv6_cer_id {
+ uint16_t type;
+ uint16_t len;
+ uint16_t reserved;
+ uint16_t auth_type;
+ uint8_t auth[16];
+ struct in6_addr addr;
+} _packed;
+
#define dhcpv6_for_each_option(start, end, otype, olen, odata)\
for (uint8_t *_o = (uint8_t*)(start); _o + 4 <= (uint8_t*)(end) &&\
@@ -215,6 +228,7 @@ enum odhcp6c_state {
STATE_AFTR_NAME,
STATE_VENDORCLASS,
STATE_USERCLASS,
+ STATE_CER,
_STATE_MAX
};