Print this page
7388 Support DHCP Client FQDN. Allow IAID/DUID for all v4.

*** 19,28 **** --- 19,29 ---- * CDDL HEADER END */ /* * Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 2013 by Delphix. All rights reserved. + * Copyright (c) 2016, Chris Fraire <cfraire@me.com>. */ #ifndef _LIBIPADM_IMPL_H #define _LIBIPADM_IMPL_H
*** 85,94 **** --- 86,96 ---- boolean_t ipadm_stateful; } ipadm_ipv6_intfid_s; struct { boolean_t ipadm_primary; int32_t ipadm_wait; + char ipadm_reqhost[MAXNAMELEN]; } ipadm_dhcp_s; } ipadm_addr_u; }; #define ipadm_static_addr ipadm_addr_u.ipadm_static_addr_s.ipadm_addr
*** 100,109 **** --- 102,112 ---- #define ipadm_intfidlen ipadm_addr_u.ipadm_ipv6_intfid_s.ipadm_intfidlen #define ipadm_stateless ipadm_addr_u.ipadm_ipv6_intfid_s.ipadm_stateless #define ipadm_stateful ipadm_addr_u.ipadm_ipv6_intfid_s.ipadm_stateful #define ipadm_primary ipadm_addr_u.ipadm_dhcp_s.ipadm_primary #define ipadm_wait ipadm_addr_u.ipadm_dhcp_s.ipadm_wait + #define ipadm_reqhost ipadm_addr_u.ipadm_dhcp_s.ipadm_reqhost /* * Data structures and callback functions related to property management */ struct ipadm_prop_desc;
*** 143,153 **** nvlist_t **); extern ipadm_status_t i_ipadm_init_ifobj(ipadm_handle_t, const char *, nvlist_t *); extern ipadm_status_t i_ipadm_init_addrobj(ipadm_handle_t, nvlist_t *); extern ipadm_status_t i_ipadm_addr_persist(ipadm_handle_t, ! const ipadm_addrobj_t, boolean_t, uint32_t); extern ipadm_status_t i_ipadm_delete_addr(ipadm_handle_t, ipadm_addrobj_t); extern int i_ipadm_strioctl(int, int, char *, int); extern boolean_t i_ipadm_is_loopback(const char *); extern boolean_t i_ipadm_is_vni(const char *); extern boolean_t i_ipadm_is_ipmp(ipadm_handle_t, const char *); --- 146,156 ---- nvlist_t **); extern ipadm_status_t i_ipadm_init_ifobj(ipadm_handle_t, const char *, nvlist_t *); extern ipadm_status_t i_ipadm_init_addrobj(ipadm_handle_t, nvlist_t *); extern ipadm_status_t i_ipadm_addr_persist(ipadm_handle_t, ! const ipadm_addrobj_t, boolean_t, uint32_t, const char *); extern ipadm_status_t i_ipadm_delete_addr(ipadm_handle_t, ipadm_addrobj_t); extern int i_ipadm_strioctl(int, int, char *, int); extern boolean_t i_ipadm_is_loopback(const char *); extern boolean_t i_ipadm_is_vni(const char *); extern boolean_t i_ipadm_is_ipmp(ipadm_handle_t, const char *);
*** 183,193 **** const void *); /* ipadm_addr.c */ extern void i_ipadm_init_addr(ipadm_addrobj_t, const char *, const char *, ipadm_addr_type_t); ! extern ipadm_status_t i_ipadm_merge_prefixlen_from_nvl(nvlist_t *, nvlist_t *, const char *); extern ipadm_status_t i_ipadm_get_addrobj(ipadm_handle_t, ipadm_addrobj_t); extern ipadm_status_t i_ipadm_enable_static(ipadm_handle_t, const char *, nvlist_t *, sa_family_t); extern ipadm_status_t i_ipadm_enable_dhcp(ipadm_handle_t, const char *, --- 186,196 ---- const void *); /* ipadm_addr.c */ extern void i_ipadm_init_addr(ipadm_addrobj_t, const char *, const char *, ipadm_addr_type_t); ! extern ipadm_status_t i_ipadm_merge_addrprops_from_nvl(nvlist_t *, nvlist_t *, const char *); extern ipadm_status_t i_ipadm_get_addrobj(ipadm_handle_t, ipadm_addrobj_t); extern ipadm_status_t i_ipadm_enable_static(ipadm_handle_t, const char *, nvlist_t *, sa_family_t); extern ipadm_status_t i_ipadm_enable_dhcp(ipadm_handle_t, const char *,