Hi,
On Wed, 2012-07-25 at 15:42 +0900, Danny Jeongseok Seo wrote:
> @@ -2281,6 +2283,18 @@ int g_dhcp_client_start(GDHCPClient *dhcp_client,
> const char *last_address)
> dhcp_client->last_address = g_strdup(last_address);
> }
> }
> +
> + if (last_server_address != NULL && strlen(last_server_address) > 0) {
> + dhcp_client->last_server_address =
> + g_strdup(last_server_address);
> + dhcp_client->server_ip = inet_addr(last_server_address);
> + dhcp_client->requested_ip = addr;
> +
> + start_request(dhcp_client);
> +
> + return 0;
> + }
> +
> send_discover(dhcp_client, addr);
>
> dhcp_client->timeout = g_timeout_add_seconds_full(G_PRIORITY_HIGH,
Since RFC 2131 chapter 4.3.2 says "'server identifier' MUST NOT be
filled in" when we are sending DHCPREQUEST in INIT-REBOOT state, the
start_request() part above is the only part needed now.
What is the condition where we can ignore send_discover() and go
directly to start_request()?
Do we need to fall back to send_discover() if we don't get a reply to
start_request() or do we simply fail obtaining a DHCP address in this
case?
Cheers,
Patrik
_______________________________________________
connman mailing list
[email protected]
http://lists.connman.net/listinfo/connman