Move the callers that need to use the new cli_open() back to calling
[kai/samba.git] / source3 / client / client.c
index 074fbc93bc496dfd132a63050f8a8cfe1c812918..47d44705d2d80d9758703168e68fad53af9e2727 100644 (file)
@@ -300,121 +300,6 @@ static void send_message(const char *username)
        }
 }
 
-/****************************************************************************
- Wrapper function around cli_open() that does an NtCreateX open by preference.
-****************************************************************************/
-
-NTSTATUS smbclient_cli_open(struct cli_state *cli, const char *fname, int flags,
-                       int share_mode_in, uint16_t *pfnum)
-{
-       NTSTATUS status;
-       unsigned int openfn = 0;
-       unsigned int dos_deny = 0;
-       uint32_t access_mask, share_mode, create_disposition, create_options;
-
-       /* Do the initial mapping into OpenX parameters. */
-       if (flags & O_CREAT) {
-               openfn |= (1<<4);
-       }
-       if (!(flags & O_EXCL)) {
-               if (flags & O_TRUNC)
-                       openfn |= (1<<1);
-               else
-                       openfn |= (1<<0);
-       }
-
-       dos_deny = (share_mode_in<<4);
-
-       if ((flags & O_ACCMODE) == O_RDWR) {
-               dos_deny |= 2;
-       } else if ((flags & O_ACCMODE) == O_WRONLY) {
-               dos_deny |= 1;
-       }
-
-#if defined(O_SYNC)
-       if ((flags & O_SYNC) == O_SYNC) {
-               dos_deny |= (1<<14);
-       }
-#endif /* O_SYNC */
-
-       if (share_mode_in == DENY_FCB) {
-               dos_deny = 0xFF;
-       }
-
-#if 0
-       /* Hmmm. This is what I think the above code
-          should look like if it's using the constants
-          we #define. JRA. */
-
-       if (flags & O_CREAT) {
-               openfn |= OPENX_FILE_CREATE_IF_NOT_EXIST;
-       }
-       if (!(flags & O_EXCL)) {
-               if (flags & O_TRUNC)
-                       openfn |= OPENX_FILE_EXISTS_TRUNCATE;
-               else
-                       openfn |= OPENX_FILE_EXISTS_OPEN;
-       }
-
-       dos_deny = SET_DENY_MODE(share_mode_in);
-
-       if ((flags & O_ACCMODE) == O_RDWR) {
-               dos_deny |= DOS_OPEN_RDWR;
-       } else if ((flags & O_ACCMODE) == O_WRONLY) {
-               dos_deny |= DOS_OPEN_WRONLY;
-       }
-
-#if defined(O_SYNC)
-       if ((flags & O_SYNC) == O_SYNC) {
-               dos_deny |= FILE_SYNC_OPENMODE;
-       }
-#endif /* O_SYNC */
-
-       if (share_mode_in == DENY_FCB) {
-               dos_deny = 0xFF;
-       }
-#endif
-
-       if (!map_open_params_to_ntcreate(fname, dos_deny,
-                                       openfn, &access_mask,
-                                       &share_mode, &create_disposition,
-                                       &create_options, NULL)) {
-               goto try_openx;
-       }
-
-       status = cli_ntcreate(cli,
-                               fname,
-                               0,
-                               access_mask,
-                               0,
-                               share_mode,
-                               create_disposition,
-                               create_options,
-                               0,
-                               pfnum);
-
-       /* Try and cope will all varients of "we don't do this call"
-          and fall back to openX. */
-
-       if (NT_STATUS_EQUAL(status,NT_STATUS_NOT_IMPLEMENTED) ||
-                       NT_STATUS_EQUAL(status,NT_STATUS_INVALID_INFO_CLASS) ||
-                       NT_STATUS_EQUAL(status,NT_STATUS_PROCEDURE_NOT_FOUND) ||
-                       NT_STATUS_EQUAL(status,NT_STATUS_INVALID_LEVEL) ||
-                       NT_STATUS_EQUAL(status,NT_STATUS_INVALID_PARAMETER) ||
-                       NT_STATUS_EQUAL(status,NT_STATUS_INVALID_DEVICE_REQUEST) ||
-                       NT_STATUS_EQUAL(status,NT_STATUS_INVALID_DEVICE_STATE) ||
-                       NT_STATUS_EQUAL(status,NT_STATUS_CTL_FILE_NOT_SUPPORTED) ||
-                       NT_STATUS_EQUAL(status,NT_STATUS_UNSUCCESSFUL)) {
-               goto try_openx;
-       }
-
-       return status;
-
-  try_openx:
-
-       return cli_openx(cli, fname, flags, share_mode_in, pfnum);
-}
-
 /****************************************************************************
  Check the space on a device.
 ****************************************************************************/
@@ -1212,7 +1097,7 @@ static int do_get(const char *rname, const char *lname_in, bool reget)
 
        clock_gettime_mono(&tp_start);
 
-       status = smbclient_cli_open(targetcli, targetname, O_RDONLY, DENY_NONE, &fnum);
+       status = cli_open(targetcli, targetname, O_RDONLY, DENY_NONE, &fnum);
        if (!NT_STATUS_IS_OK(status)) {
                d_printf("%s opening remote file %s\n", nt_errstr(status),
                         rname);
@@ -1971,7 +1856,7 @@ static int do_put(const char *rname, const char *lname, bool reput)
        clock_gettime_mono(&tp_start);
 
        if (reput) {
-               status = smbclient_cli_open(targetcli, targetname, O_RDWR|O_CREAT, DENY_NONE, &fnum);
+               status = cli_open(targetcli, targetname, O_RDWR|O_CREAT, DENY_NONE, &fnum);
                if (NT_STATUS_IS_OK(status)) {
                        if (!NT_STATUS_IS_OK(status = cli_qfileinfo_basic(
                                                     targetcli, fnum, NULL,
@@ -1986,7 +1871,7 @@ static int do_put(const char *rname, const char *lname, bool reput)
                        }
                }
        } else {
-               status = smbclient_cli_open(targetcli, targetname, O_RDWR|O_CREAT|O_TRUNC, DENY_NONE, &fnum);
+               status = cli_open(targetcli, targetname, O_RDWR|O_CREAT|O_TRUNC, DENY_NONE, &fnum);
        }
 
        if (!NT_STATUS_IS_OK(status)) {