From e7504d95479455be5cef120fc8e0a48fd74ad5ca Mon Sep 17 00:00:00 2001 From: Patrik Flykt Date: Tue, 20 Jan 2015 19:35:56 +0200 Subject: sd-dhcp6-lease: Revise address iteration functions Revise the address iteration functions so that one helper function resets the iterator to the start of the address list while the second one fetches addresses one by one. The test case is also updated. --- src/libsystemd-network/test-dhcp6-client.c | 45 +++++++++++++++--------------- 1 file changed, 23 insertions(+), 22 deletions(-) (limited to 'src/libsystemd-network/test-dhcp6-client.c') diff --git a/src/libsystemd-network/test-dhcp6-client.c b/src/libsystemd-network/test-dhcp6-client.c index 75908391f0..9386f31ce4 100644 --- a/src/libsystemd-network/test-dhcp6-client.c +++ b/src/libsystemd-network/test-dhcp6-client.c @@ -286,26 +286,27 @@ static int test_advertise_option(sd_event *e) { assert_se(opt_clientid); - assert_se(sd_dhcp6_lease_get_first_address(lease, &addr, <_pref, - <_valid) >= 0); + sd_dhcp6_lease_reset_address_iter(lease); + assert_se(sd_dhcp6_lease_get_address(lease, &addr, <_pref, + <_valid) >= 0); 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_next_address(lease, &addr, <_pref, - <_valid) == -ENOMSG); + assert_se(sd_dhcp6_lease_get_address(lease, &addr, <_pref, + <_valid) == -ENOMSG); - assert_se(sd_dhcp6_lease_get_first_address(lease, &addr, <_pref, - <_valid) >= 0); + sd_dhcp6_lease_reset_address_iter(lease); + assert_se(sd_dhcp6_lease_get_address(lease, &addr, <_pref, + <_valid) >= 0); assert_se(!memcmp(&addr, &msg_advertise[42], sizeof(addr))); - assert_se(sd_dhcp6_lease_get_next_address(lease, &addr, <_pref, - <_valid) == -ENOMSG); - assert_se(sd_dhcp6_lease_get_next_address(lease, &addr, <_pref, - <_valid) == -ENOMSG); - assert_se(sd_dhcp6_lease_get_first_address(lease, &addr, <_pref, - <_valid) >= 0); + assert_se(sd_dhcp6_lease_get_address(lease, &addr, <_pref, + <_valid) == -ENOMSG); + sd_dhcp6_lease_reset_address_iter(lease); + assert_se(sd_dhcp6_lease_get_address(lease, &addr, <_pref, + <_valid) >= 0); assert_se(!memcmp(&addr, &msg_advertise[42], sizeof(addr))); - assert_se(sd_dhcp6_lease_get_next_address(lease, &addr, <_pref, - <_valid) == -ENOMSG); + assert_se(sd_dhcp6_lease_get_address(lease, &addr, <_pref, + <_valid) == -ENOMSG); assert_se(dhcp6_lease_get_serverid(lease, &opt, &len) >= 0); assert_se(len == 14); @@ -439,14 +440,15 @@ static int test_client_verify_request(DHCP6Message *request, uint8_t *option, assert_se(found_clientid && found_iana && found_serverid && found_elapsed_time); - assert_se(sd_dhcp6_lease_get_first_address(lease, &addr, <_pref, - <_valid) >= 0); + sd_dhcp6_lease_reset_address_iter(lease); + assert_se(sd_dhcp6_lease_get_address(lease, &addr, <_pref, + <_valid) >= 0); 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_next_address(lease, &addr, <_pref, - <_valid) == -ENOMSG); + assert_se(sd_dhcp6_lease_get_address(lease, &addr, <_pref, + <_valid) == -ENOMSG); return 0; } @@ -587,11 +589,10 @@ static int test_client_verify_information_request(DHCP6Message *information_requ assert_se(r == -ENOMSG); assert_se(found_clientid && found_elapsed_time); - assert_se(sd_dhcp6_lease_get_first_address(lease, &addr, <_pref, - <_valid) == -ENOMSG); + sd_dhcp6_lease_reset_address_iter(lease); - assert_se(sd_dhcp6_lease_get_next_address(lease, &addr, <_pref, - <_valid) == -ENOMSG); + assert_se(sd_dhcp6_lease_get_address(lease, &addr, <_pref, + <_valid) == -ENOMSG); return 0; } -- cgit v1.2.3-54-g00ecf