scoped_common.h 631 B

12345678910111213141516171819202122232425262728
  1. /* SPDX-License-Identifier: GPL-2.0 */
  2. /*
  3. * Landlock scope test helpers
  4. *
  5. * Copyright © 2024 Tahera Fahimi <fahimitahera@gmail.com>
  6. */
  7. #define _GNU_SOURCE
  8. #include <sys/types.h>
  9. static void create_scoped_domain(struct __test_metadata *const _metadata,
  10. const __u16 scope)
  11. {
  12. int ruleset_fd;
  13. const struct landlock_ruleset_attr ruleset_attr = {
  14. .scoped = scope,
  15. };
  16. ruleset_fd =
  17. landlock_create_ruleset(&ruleset_attr, sizeof(ruleset_attr), 0);
  18. ASSERT_LE(0, ruleset_fd)
  19. {
  20. TH_LOG("Failed to create a ruleset: %s", strerror(errno));
  21. }
  22. enforce_ruleset(_metadata, ruleset_fd);
  23. EXPECT_EQ(0, close(ruleset_fd));
  24. }