Print this page
7388 Support DHCP Client FQDN. Allow IAID/DUID for all v4.
*** 19,28 ****
--- 19,29 ----
* CDDL HEADER END
*/
/*
* Copyright 2009 Sun Microsystems, Inc. All rights reserved.
* Use is subject to license terms.
+ * Copyright (c) 2016, Chris Fraire <cfraire@me.com>.
*
* REQUESTING state of the client state machine.
*/
#include <stdlib.h>
*** 77,86 ****
--- 78,90 ----
sizeof (d6in) - sizeof (dhcpv6_option_t));
/* Add required Option Request option */
(void) add_pkt_prl(dpkt, dsmp);
+ /* Add FQDN if configured */
+ (void) dhcp_add_fqdn_opt(dpkt, dsmp);
+
(void) send_pkt_v6(dsmp, dpkt, dsmp->dsm_server, stop_requesting,
DHCPV6_REQ_TIMEOUT, DHCPV6_REQ_MAX_RT);
/* For DHCPv6, state switch cannot fail */
(void) set_smach_state(dsmp, REQUESTING);
*** 311,321 ****
/*
* dsm_reqhost was set for this state machine in
* dhcp_selecting() if the DF_REQUEST_HOSTNAME option set and a
* host name was found
*/
! if (dsmp->dsm_reqhost != NULL) {
(void) add_pkt_opt(dpkt, CD_HOSTNAME, dsmp->dsm_reqhost,
strlen(dsmp->dsm_reqhost));
}
(void) add_pkt_opt(dpkt, CD_END, NULL, 0);
--- 315,326 ----
/*
* dsm_reqhost was set for this state machine in
* dhcp_selecting() if the DF_REQUEST_HOSTNAME option set and a
* host name was found
*/
! if (dhcp_add_fqdn_opt(dpkt, dsmp) != 0 &&
! dsmp->dsm_reqhost != NULL) {
(void) add_pkt_opt(dpkt, CD_HOSTNAME, dsmp->dsm_reqhost,
strlen(dsmp->dsm_reqhost));
}
(void) add_pkt_opt(dpkt, CD_END, NULL, 0);