char c_dir[1024];
sprintf(c_dir, "/mode_test_%d", getpid());
ASSERT_EQ(0, ceph_mkdirs(admin, c_dir, 0700));
- ASSERT_EQ(ceph_chmod(cmount, c_dir, 0777), -CEPHFS_EPERM);
+ ASSERT_EQ(ceph_chmod(cmount, c_dir, 0777), -EPERM);
}
+static void run_set_sgid_suid_test_case(int old_suid_sgid,
+ int new_suid_sgid,
+ int expected_result)
+{
+ char c_dir[1024];
+ sprintf(c_dir, "/mode_test_%d", getpid());
+ const int mode = 0766;
+ ASSERT_EQ(ceph_mkdirs(admin, c_dir, mode | old_suid_sgid), 0);
+ ASSERT_EQ(ceph_chmod(cmount, c_dir, mode | new_suid_sgid), expected_result);
+}
+
TEST(SuidsgidTest, WriteClearSetuid) {
ASSERT_EQ(0, ceph_create(&admin, NULL));
ASSERT_EQ(0, ceph_conf_read_file(admin, NULL));