summaryrefslogtreecommitdiffhomepage
path: root/src/dhcpv6.h
diff options
context:
space:
mode:
authorSteven Barth <steven@midlink.org>2014-04-01 11:19:31 +0200
committerSteven Barth <steven@midlink.org>2014-04-01 11:19:31 +0200
commitd12c7b8c39bc0f727bde5aa34595e9a581891dca (patch)
treece1cbba4f2e879720f30679a66f40f26288e62e8 /src/dhcpv6.h
parent2b4200f2510874a3ee9c09f594d5ab6340ffb336 (diff)
Complete managed PD/CER-ID support
Diffstat (limited to 'src/dhcpv6.h')
-rw-r--r--src/dhcpv6.h11
1 files changed, 10 insertions, 1 deletions
diff --git a/src/dhcpv6.h b/src/dhcpv6.h
index 936a350..dbde88a 100644
--- a/src/dhcpv6.h
+++ b/src/dhcpv6.h
@@ -164,6 +164,15 @@ struct dhcpv6_assignment {
uint8_t clid_data[];
};
+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;
+};
+
#define dhcpv6_for_each_option(start, end, otype, olen, odata)\
@@ -173,7 +182,7 @@ struct dhcpv6_assignment {
_o += 4 + (_o[2] << 8 | _o[3]))
int dhcpv6_init_ia(struct interface *iface, int socket);
-size_t dhcpv6_handle_ia(uint8_t *buf, size_t buflen, struct interface *iface,
+ssize_t dhcpv6_handle_ia(uint8_t *buf, size_t buflen, struct interface *iface,
const struct sockaddr_in6 *addr, const void *data, const uint8_t *end);
int dhcpv6_ia_init(void);
int setup_dhcpv6_ia_interface(struct interface *iface, bool enable);