From c5f722564db74a14c6e1cdea37efdf9b7e81847e Mon Sep 17 00:00:00 2001 From: Daniel Vetter Date: Wed, 20 Feb 2019 17:25:25 +0100 Subject: tests/kms_release: invalid checks for revoke-lease ioctl Found a few corner cases to validate. Put them into the existing testcase. Cc: Keith Packard Reviewed-by: Lyude Paul Signed-off-by: Daniel Vetter --- tests/kms_lease.c | 12 ++++++++++++ 1 file changed, 12 insertions(+) (limited to 'tests/kms_lease.c') diff --git a/tests/kms_lease.c b/tests/kms_lease.c index 3fa0aace..345fba7f 100644 --- a/tests/kms_lease.c +++ b/tests/kms_lease.c @@ -511,6 +511,14 @@ static void lease_revoke(data_t *data) igt_display_require(&lease.display, lease.fd); + /* try to revoke an invalid lease */ + mrl.lessee_id = 0; + igt_assert_eq(revoke_lease(data->master.fd, &mrl), -ENOENT); + + /* try to revoke with the wrong fd */ + mrl.lessee_id = lease.lessee_id; + igt_assert_eq(revoke_lease(lease.fd, &mrl), -EACCES); + /* Revoke the lease using the master fd */ mrl.lessee_id = lease.lessee_id; igt_assert_eq(revoke_lease(data->master.fd, &mrl), 0); @@ -522,6 +530,10 @@ static void lease_revoke(data_t *data) igt_assert_eq(ret, -ENOENT); terminate_lease(&lease); + + /* make sure the lease is gone */ + mrl.lessee_id = lease.lessee_id; + igt_assert_eq(revoke_lease(data->master.fd, &mrl), -ENOENT); } /* Test leasing objects more than once */ -- cgit v1.2.3