chiark / gitweb /
sd-dhcp-client: only verify UDP messages
[elogind.git] / src / libsystemd-network / sd-dhcp-server.c
index 5c32fdfffa9053c3d239cfd6ed506c5acd3ce271..bcf7d1fa2ca262c62caf9040d2dd73c074a0c5ed 100644 (file)
@@ -362,7 +362,7 @@ int dhcp_server_send_packet(sd_dhcp_server *server,
 static int server_message_init(sd_dhcp_server *server, DHCPPacket **ret,
                                uint8_t type, size_t *_optoffset, DHCPRequest *req) {
         _cleanup_free_ DHCPPacket *packet = NULL;
-        size_t optoffset;
+        size_t optoffset = 0;
         int r;
 
         assert(server);
@@ -712,9 +712,9 @@ int dhcp_server_handle_message(sd_dhcp_server *server, DHCPMessage *message,
                         } else
                                 lease = existing_lease;
 
-                        r = sd_event_now(server->event, CLOCK_MONOTONIC, &time_now);
+                        r = sd_event_now(server->event, clock_boottime_or_monotonic(), &time_now);
                         if (r < 0)
-                                time_now = now(CLOCK_MONOTONIC);
+                                time_now = now(clock_boottime_or_monotonic());
                         lease->expiration = req->lifetime * USEC_PER_SEC + time_now;
 
                         r = server_send_ack(server, req, address);