s3:passdb: add sid_check_object_is_for_passdb()
[kai/samba.git] / source3 / torture / locktest2.c
index b99fdbc093653e169ce70dab3443b7cf62523c47..aefdcd3ff2588a86fa12414876cd3de91da527e9 100644 (file)
@@ -18,6 +18,9 @@
 */
 
 #include "includes.h"
+#include "libsmb/libsmb.h"
+#include "system/filesys.h"
+#include "locking/proto.h"
 
 static fstring password;
 static fstring username;
@@ -68,7 +71,13 @@ static int try_open(struct cli_state *c, char *nfs, int fstype, const char *fnam
 
        switch (fstype) {
        case FSTYPE_SMB:
-               return cli_open(c, fname, flags, DENY_NONE);
+               {
+                       uint16_t fd;
+                       if (!NT_STATUS_IS_OK(cli_openx(c, fname, flags, DENY_NONE, &fd))) {
+                               return -1;
+                       }
+                       return fd;
+               }
 
        case FSTYPE_NFS:
                if (asprintf(&path, "%s%s", nfs, fname) > 0) {
@@ -88,7 +97,7 @@ static bool try_close(struct cli_state *c, int fstype, int fd)
 {
        switch (fstype) {
        case FSTYPE_SMB:
-               return cli_close(c, fd);
+               return NT_STATUS_IS_OK(cli_close(c, fd));
 
        case FSTYPE_NFS:
                return close(fd) == 0;
@@ -105,7 +114,8 @@ static bool try_lock(struct cli_state *c, int fstype,
 
        switch (fstype) {
        case FSTYPE_SMB:
-               return cli_lock(c, fd, start, len, LOCK_TIMEOUT, op);
+               return NT_STATUS_IS_OK(cli_lock32(c, fd, start, len,
+                                      LOCK_TIMEOUT, op));
 
        case FSTYPE_NFS:
                lock.l_type = (op==READ_LOCK) ? F_RDLCK:F_WRLCK;
@@ -126,7 +136,7 @@ static bool try_unlock(struct cli_state *c, int fstype,
 
        switch (fstype) {
        case FSTYPE_SMB:
-               return cli_unlock(c, fd, start, len);
+               return NT_STATUS_IS_OK(cli_unlock(c, fd, start, len));
 
        case FSTYPE_NFS:
                lock.l_type = F_UNLCK;
@@ -184,7 +194,7 @@ static struct cli_state *connect_one(char *share)
 
        nt_status = cli_full_connection(&c, myname, server_n, NULL, 0, share, "?????", 
                                        username, lp_workgroup(), password, 0,
-                                       Undefined, NULL);
+                                       SMB_SIGNING_DEFAULT);
 
        if (!NT_STATUS_IS_OK(nt_status)) {
                DEBUG(0, ("cli_full_connection failed with error %s\n", nt_errstr(nt_status)));
@@ -317,7 +327,7 @@ static void close_files(struct cli_state *cli[NSERVERS][NCONNECTIONS],
                }
        }
        for (server=0;server<NSERVERS;server++) {
-               cli_unlink(cli[server][0], FILENAME);
+               cli_unlink(cli[server][0], FILENAME, FILE_ATTRIBUTE_SYSTEM | FILE_ATTRIBUTE_HIDDEN);
        }
 }
 
@@ -485,13 +495,13 @@ static void usage(void)
 
        setlinebuf(stdout);
 
-       dbf = x_stderr;
-
        if (argc < 5 || argv[1][0] == '-') {
                usage();
                exit(1);
        }
 
+       setup_logging(argv[0], DEBUG_STDOUT);
+
        share1 = argv[1];
        share2 = argv[2];
        nfspath1 = argv[3];
@@ -500,12 +510,10 @@ static void usage(void)
        all_string_sub(share1,"/","\\",0);
        all_string_sub(share2,"/","\\",0);
 
-       setup_logging(argv[0],True);
-
        argc -= 4;
        argv += 4;
 
-       lp_load(dyn_CONFIGFILE,True,False,False,True);
+       lp_load_global(get_dyn_CONFIGFILE());
        load_interfaces();
 
        if (getenv("USER")) {