samba3.smbtorture_s3.crypt_client.UID-REGRESSION-TEST(nt4_dc_smb1)
samba3.smbtorture_s3.crypt_client.UNLINK(nt4_dc_smb1)
samba3.smbtorture_s3.crypt_client.W2K(nt4_dc_smb1)
-samba3.smbtorture_s3.crypt_client.WILDDELETE(nt4_dc_smb1)
samba3.smbtorture_s3.crypt_client.XCOPY(nt4_dc_smb1)
samba3.smbtorture_s3.crypt.POSIX-ACL-OPLOCK(nt4_dc_smb1)
samba3.smbtorture_s3.crypt.POSIX-ACL-SHAREROOT(nt4_dc_smb1)
samba3.smbtorture_s3.plain.UID-REGRESSION-TEST(fileserver_smb1)
samba3.smbtorture_s3.plain.UNLINK(fileserver_smb1)
samba3.smbtorture_s3.plain.W2K(fileserver_smb1)
-samba3.smbtorture_s3.plain.WILDDELETE(fileserver_smb1)
samba3.smbtorture_s3.plain.WINDOWS-BAD-SYMLINK(nt4_dc_smb1)
samba3.smbtorture_s3.plain.XCOPY(fileserver_smb1)
samba3.smbtorture_s3.vfs_aio_fork(fileserver_smb1).RW1(fileserver_smb1)
"UNLINK", "BROWSE", "ATTR", "TRANS2", "TORTURE",
"OPLOCK1", "OPLOCK2", "OPLOCK4", "STREAMERROR",
"DIR", "DIR1", "DIR-CREATETIME", "TCON", "TCONDEV", "RW1", "RW2", "RW3", "LARGE_READX", "RW-SIGNING",
- "OPEN", "XCOPY", "RENAME", "DELETE", "DELETE-LN", "WILDDELETE", "PROPERTIES", "W2K",
+ "OPEN", "XCOPY", "RENAME", "DELETE", "DELETE-LN", "PROPERTIES", "W2K",
"TCON2", "IOCTL", "CHKPATH", "FDSESS", "CHAIN1", "CHAIN2", "OWNER-RIGHTS",
"CHAIN3", "PIDHIGH", "CLI_SPLICE",
"UID-REGRESSION-TEST", "SHORTNAME-TEST",
return correct;
}
-/*
- Test wildcard delete.
- */
-static bool run_wild_deletetest(int dummy)
-{
- struct cli_state *cli = NULL;
- const char *dname = "\\WTEST";
- const char *fname = "\\WTEST\\A";
- const char *wunlink_name = "\\WTEST\\*";
- uint16_t fnum1 = (uint16_t)-1;
- bool correct = false;
- NTSTATUS status;
-
- printf("starting wildcard delete test\n");
-
- if (!torture_open_connection(&cli, 0)) {
- return false;
- }
-
- smbXcli_conn_set_sockopt(cli->conn, sockops);
-
- cli_unlink(cli, fname, 0);
- cli_rmdir(cli, dname);
- status = cli_mkdir(cli, dname);
- if (!NT_STATUS_IS_OK(status)) {
- printf("mkdir of %s failed %s!\n", dname, nt_errstr(status));
- goto fail;
- }
- status = cli_openx(cli, fname, O_CREAT|O_RDONLY, DENY_NONE, &fnum1);
- if (!NT_STATUS_IS_OK(status)) {
- printf("open of %s failed %s!\n", fname, nt_errstr(status));
- goto fail;
- }
- status = cli_close(cli, fnum1);
- fnum1 = -1;
-
- /*
- * Note the unlink attribute-type of zero. This should
- * map into FILE_ATTRIBUTE_NORMAL at the server even
- * on a wildcard delete.
- */
-
- status = cli_unlink(cli, wunlink_name, 0);
- if (!NT_STATUS_IS_OK(status)) {
- printf("unlink of %s failed %s!\n",
- wunlink_name, nt_errstr(status));
- goto fail;
- }
-
- printf("finished wildcard delete test\n");
-
- correct = true;
-
- fail:
-
- if (fnum1 != (uint16_t)-1) cli_close(cli, fnum1);
- cli_unlink(cli, fname, 0);
- cli_rmdir(cli, dname);
-
- if (cli && !torture_close_connection(cli)) {
- correct = false;
- }
- return correct;
-}
-
static bool run_deletetest_ln(int dummy)
{
struct cli_state *cli;
.name = "DELETE-PRINT",
.fn = run_delete_print_test,
},
- {
- .name = "WILDDELETE",
- .fn = run_wild_deletetest,
- },
{
.name = "DELETE-LN",
.fn = run_deletetest_ln,