if (client->state == DHCP_STATE_RENEWING) {
err = dhcp_network_send_udp_socket(client->fd,
client->lease->server_address,
+ DHCP_PORT_SERVER,
&request->dhcp,
len - DHCP_IP_UDP_SIZE);
} else {
client->attempt = 1;
r = dhcp_network_bind_udp_socket(client->index,
- client->lease->address);
+ client->lease->address,
+ DHCP_PORT_CLIENT);
if (r < 0) {
client_stop(client, r);
return 0;
assert(message);
if (be32toh(message->xid) != client->xid)
- return -EINVAL;
+ return 0;
if (memcmp(&message->chaddr[0], &client->mac_addr.ether_addr_octet,
ETHER_ADDR_LEN))
- return -EINVAL;
+ return 0;
switch (client->state) {
case DHCP_STATE_SELECTING:
r = dhcp_packet_verify_headers(packet, BOOTREPLY, len);
if (r < 0)
- return r;
+ return 0;
len -= DHCP_IP_UDP_SIZE;