
4.4 Client Implementation 351
Immediate Request
Listing 4-31
dhcp6c.c
1670 if (newserver->pref == DH6OPT_PREF_MAX) {
1671 /*
1672 * If the client receives an Advertise message that includes a
1673 * Preference option with a preference value of 255, the client
1674 * immediately begins a client-initiated message exchange.
1675 * [RFC3315 Section 17.1.2]
1676 */
1677 ev->current_server = newserver;
1678 if (duidcpy(&ev->serverid,
1679 &ev->current_server->optinfo.serverID)) {
1680 dprintf(LOG_NOTICE, FNAME, "can’t copy server ID");
1681 return (-1); /* XXX: better recovery? */
1682 }
1683 if (construct_reqdata(ifp, &ev->current_server->optinfo, ev)) {
1684 dprintf(LOG_NOTICE, ...