-- result = sendto(fd, &packet, sizeof(struct udp_dhcp_packet), 0, (struct sockaddr *) &dest, sizeof(dest));
-+ result = sendto(fd, &packet, p_len, 0, (struct sockaddr *) &dest, sizeof(dest));
- if (result <= 0) {
- DEBUG(LOG_ERR, "write on socket failed: %m");
- }
-@@ -201,7 +208,7 @@
- return -1;
+- /* Currently we send full-sized DHCP packets (zero padded).
+- * If you need to change this: last byte of the packet is
+- * packet.data.options[end_option(packet.data.options)]
+- */
+- result = sendto(fd, &packet, IP_UPD_DHCP_SIZE, 0,
++ result = sendto(fd, &packet, p_len, 0,
+ (struct sockaddr *) &dest, sizeof(dest));
+ msg = "sendto";
+ ret_close:
+@@ -224,8 +219,7 @@ int udhcp_send_kernel_packet(struct dhcp
+ goto ret_close;