chiark / gitweb /
libsystemd-dhcp: add some asserts
authorTom Gundersen <teg@jklm.no>
Wed, 18 Dec 2013 09:52:22 +0000 (10:52 +0100)
committerTom Gundersen <teg@jklm.no>
Sun, 22 Dec 2013 13:42:12 +0000 (14:42 +0100)
src/libsystemd-dhcp/dhcp-client.c
src/libsystemd-dhcp/dhcp-network.c

index a8b9354..68a7328 100644 (file)
@@ -1061,7 +1061,7 @@ int sd_dhcp_client_start(sd_dhcp_client *client)
         int r;
 
         assert_return(client, -EINVAL);
         int r;
 
         assert_return(client, -EINVAL);
-        assert_return(client->index >= 0, -EINVAL);
+        assert_return(client->index > 0, -EINVAL);
         assert_return(client->state == DHCP_STATE_INIT ||
                       client->state == DHCP_STATE_INIT_REBOOT, -EBUSY);
 
         assert_return(client->state == DHCP_STATE_INIT ||
                       client->state == DHCP_STATE_INIT_REBOOT, -EBUSY);
 
index ce27f42..b2de67e 100644 (file)
@@ -34,6 +34,9 @@ int dhcp_network_bind_raw_socket(int index, union sockaddr_union *link)
 {
         int s;
 
 {
         int s;
 
+        assert(index > 0);
+        assert(link);
+
         s = socket(AF_PACKET, SOCK_DGRAM | SOCK_CLOEXEC | SOCK_NONBLOCK,
                    htons(ETH_P_IP));
         if (s < 0)
         s = socket(AF_PACKET, SOCK_DGRAM | SOCK_CLOEXEC | SOCK_NONBLOCK,
                    htons(ETH_P_IP));
         if (s < 0)
@@ -77,6 +80,10 @@ int dhcp_network_bind_udp_socket(int index, be32_t client_address)
 int dhcp_network_send_raw_socket(int s, const union sockaddr_union *link,
                                  const void *packet, size_t len)
 {
 int dhcp_network_send_raw_socket(int s, const union sockaddr_union *link,
                                  const void *packet, size_t len)
 {
+        assert(link);
+        assert(packet);
+        assert(len);
+
         if (sendto(s, packet, len, 0, &link->sa, sizeof(link->ll)) < 0)
                 return -errno;
 
         if (sendto(s, packet, len, 0, &link->sa, sizeof(link->ll)) < 0)
                 return -errno;