Minor fixes
[project/odhcpd.git] / src / dhcpv4.c
index 7a68f66..6f15a0a 100644 (file)
@@ -49,6 +49,7 @@ int init_dhcpv4(void)
 int setup_dhcpv4_interface(struct interface *iface, bool enable)
 {
        if (iface->dhcpv4_event.uloop.fd > 0) {
 int setup_dhcpv4_interface(struct interface *iface, bool enable)
 {
        if (iface->dhcpv4_event.uloop.fd > 0) {
+               uloop_fd_delete(&iface->dhcpv4_event.uloop);
                close(iface->dhcpv4_event.uloop.fd);
                iface->dhcpv4_event.uloop.fd = -1;
        }
                close(iface->dhcpv4_event.uloop.fd);
                iface->dhcpv4_event.uloop.fd = -1;
        }
@@ -65,7 +66,7 @@ int setup_dhcpv4_interface(struct interface *iface, bool enable)
                setsockopt(sock, SOL_SOCKET, SO_BROADCAST, &val, sizeof(val));
                setsockopt(sock, IPPROTO_IP, IP_PKTINFO, &val, sizeof(val));
 
                setsockopt(sock, SOL_SOCKET, SO_BROADCAST, &val, sizeof(val));
                setsockopt(sock, IPPROTO_IP, IP_PKTINFO, &val, sizeof(val));
 
-               val = IPTOS_CLASS_CS6;
+               val = IPTOS_PREC_INTERNETCONTROL;
                setsockopt(sock, IPPROTO_IP, IP_TOS, &val, sizeof(val));
 
                val = IP_PMTUDISC_DONT;
                setsockopt(sock, IPPROTO_IP, IP_TOS, &val, sizeof(val));
 
                val = IP_PMTUDISC_DONT;