chiark / gitweb /
networkd: VLAN - allow multiple vlans to be created on a link
[elogind.git] / src / libsystemd-dhcp / test-dhcp-client.c
index 617236b5df6c38ff23c86dd21ad7f1827775845d..56a10b3dfc7bb6c8b7fc2a5420275a36f955e595 100644 (file)
@@ -42,12 +42,18 @@ static int test_fd[2];
 
 static void test_request_basic(sd_event *e)
 {
+        int r;
+
         sd_dhcp_client *client;
 
-        client = sd_dhcp_client_new(e);
+        r = sd_dhcp_client_new(&client);
 
+        assert(r >= 0);
         assert(client);
 
+        r = sd_dhcp_client_attach_event(client, e, 0);
+        assert(r >= 0);
+
         assert(sd_dhcp_client_set_request_option(NULL, 0) == -EINVAL);
         assert(sd_dhcp_client_set_request_address(NULL, NULL) == -EINVAL);
         assert(sd_dhcp_client_set_index(NULL, 0) == -EINVAL);
@@ -85,6 +91,7 @@ static void test_request_basic(sd_event *e)
         assert(sd_dhcp_client_set_request_option(client, 33) == 0);
         assert(sd_dhcp_client_set_request_option(client, 33) == -EEXIST);
         assert(sd_dhcp_client_set_request_option(client, 44) == 0);
+        assert(sd_dhcp_client_set_request_option(client, 33) == -EEXIST);
 }
 
 static uint16_t client_checksum(void *buf, int len)
@@ -198,11 +205,15 @@ int dhcp_network_send_udp_socket(int s, be32_t server_address,
 static void test_discover_message(sd_event *e)
 {
         sd_dhcp_client *client;
-        int res;
+        int res, r;
 
-        client = sd_dhcp_client_new(e);
+        r = sd_dhcp_client_new(&client);
+        assert(r >= 0);
         assert(client);
 
+        r = sd_dhcp_client_attach_event(client, e, 0);
+        assert(r >= 0);
+
         assert(sd_dhcp_client_set_index(client, 42) >= 0);
         assert(sd_dhcp_client_set_mac(client, &mac_addr) >= 0);