]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
sd-dhcp6-client: always use ENODATA when a lease does not have requested data
authorYu Watanabe <watanabe.yu+github@gmail.com>
Sun, 6 Feb 2022 06:01:47 +0000 (15:01 +0900)
committerYu Watanabe <watanabe.yu+github@gmail.com>
Mon, 14 Feb 2022 05:43:45 +0000 (14:43 +0900)
src/libsystemd-network/sd-dhcp6-lease.c
src/libsystemd-network/test-dhcp6-client.c

index 87c3a89acedafb6846882d0ca39394186451c65d..4cd6d3e3527806507ad6db5b1ce52f49c443f6cb 100644 (file)
@@ -176,7 +176,7 @@ int sd_dhcp6_lease_get_address(
         assert_return(lease, -EINVAL);
 
         if (!lease->addr_iter)
-                return -ENOMSG;
+                return -ENODATA;
 
         if (ret_addr)
                 *ret_addr = lease->addr_iter->iaaddr.address;
@@ -204,7 +204,7 @@ int sd_dhcp6_lease_get_pd(
         assert_return(lease, -EINVAL);
 
         if (!lease->prefix_iter)
-                return -ENOMSG;
+                return -ENODATA;
 
         if (ret_prefix)
                 *ret_prefix = lease->prefix_iter->iapdprefix.address;
@@ -238,7 +238,7 @@ int sd_dhcp6_lease_get_dns(sd_dhcp6_lease *lease, const struct in6_addr **ret) {
         assert_return(lease, -EINVAL);
 
         if (!lease->dns)
-                return -ENOENT;
+                return -ENODATA;
 
         if (ret)
                 *ret = lease->dns;
@@ -268,7 +268,7 @@ int sd_dhcp6_lease_get_domains(sd_dhcp6_lease *lease, char ***ret) {
         assert_return(ret, -EINVAL);
 
         if (!lease->domains)
-                return -ENOENT;
+                return -ENODATA;
 
         *ret = lease->domains;
         return strv_length(lease->domains);
@@ -349,14 +349,14 @@ int sd_dhcp6_lease_get_ntp_addrs(sd_dhcp6_lease *lease, const struct in6_addr **
                 return lease->sntp_count;
         }
 
-        return -ENOENT;
+        return -ENODATA;
 }
 
 int sd_dhcp6_lease_get_ntp_fqdn(sd_dhcp6_lease *lease, char ***ret) {
         assert_return(lease, -EINVAL);
 
         if (!lease->ntp_fqdn)
-                return -ENOENT;
+                return -ENODATA;
 
         if (ret)
                 *ret = lease->ntp_fqdn;
@@ -390,7 +390,7 @@ int sd_dhcp6_lease_get_fqdn(sd_dhcp6_lease *lease, const char **ret) {
         assert_return(ret, -EINVAL);
 
         if (!lease->fqdn)
-                return -ENOENT;
+                return -ENODATA;
 
         *ret = lease->fqdn;
         return 0;
index 53def1b07f7da4beef25b212d97bb5cd87a64621..6152a30863e65d64d758d35ba709cbadfed68c00 100644 (file)
@@ -571,16 +571,16 @@ static void test_advertise_option(sd_event *e) {
         assert_se(!memcmp(&addr, &msg_advertise[42], sizeof(addr)));
         assert_se(lt_pref == 150);
         assert_se(lt_valid == 180);
-        assert_se(sd_dhcp6_lease_get_address(lease, &addr, &lt_pref, &lt_valid) == -ENOMSG);
+        assert_se(sd_dhcp6_lease_get_address(lease, &addr, &lt_pref, &lt_valid) == -ENODATA);
 
         sd_dhcp6_lease_reset_address_iter(lease);
         assert_se(sd_dhcp6_lease_get_address(lease, &addr, &lt_pref, &lt_valid) >= 0);
         assert_se(!memcmp(&addr, &msg_advertise[42], sizeof(addr)));
-        assert_se(sd_dhcp6_lease_get_address(lease, &addr, &lt_pref, &lt_valid) == -ENOMSG);
+        assert_se(sd_dhcp6_lease_get_address(lease, &addr, &lt_pref, &lt_valid) == -ENODATA);
         sd_dhcp6_lease_reset_address_iter(lease);
         assert_se(sd_dhcp6_lease_get_address(lease, &addr, &lt_pref, &lt_valid) >= 0);
         assert_se(!memcmp(&addr, &msg_advertise[42], sizeof(addr)));
-        assert_se(sd_dhcp6_lease_get_address(lease, &addr, &lt_pref, &lt_valid) == -ENOMSG);
+        assert_se(sd_dhcp6_lease_get_address(lease, &addr, &lt_pref, &lt_valid) == -ENODATA);
 
         assert_se(dhcp6_lease_get_serverid(lease, &opt, &len) >= 0);
         assert_se(len == 14);
@@ -735,7 +735,7 @@ static void test_client_verify_request(DHCP6Message *request, size_t len) {
         assert_se(found_clientid && found_iana && found_serverid && found_elapsed_time);
 
         sd_dhcp6_lease_reset_address_iter(lease);
-        assert_se(sd_dhcp6_lease_get_address(lease, &addr, &lt_pref, &lt_valid) == -ENOMSG);
+        assert_se(sd_dhcp6_lease_get_address(lease, &addr, &lt_pref, &lt_valid) == -ENODATA);
 }
 
 static void test_client_send_advertise(DHCP6Message *solicit) {
@@ -910,7 +910,7 @@ static void test_client_verify_information_request(DHCP6Message *information_req
 
         sd_dhcp6_lease_reset_address_iter(lease);
 
-        assert_se(sd_dhcp6_lease_get_address(lease, &addr, &lt_pref, &lt_valid) == -ENOMSG);
+        assert_se(sd_dhcp6_lease_get_address(lease, &addr, &lt_pref, &lt_valid) == -ENODATA);
 }
 
 int dhcp6_network_send_udp_socket(int s, struct in6_addr *server_address,