Ensure we don't use massive writes in pipe mode.
authorJeremy Allison <jra@samba.org>
Tue, 6 Nov 2007 22:12:38 +0000 (14:12 -0800)
committerJeremy Allison <jra@samba.org>
Tue, 6 Nov 2007 22:12:38 +0000 (14:12 -0800)
Jeremy.
(This used to be commit 47640fb20e42f226e7ea104076fd52547bfe1abb)

source3/libsmb/clireadwrite.c

index 0c79da9f84d2a32422c2dec13303f8be903cfbef..d77875bae52f3b0e5144b82e8c583a03aa138bdb 100644 (file)
@@ -402,11 +402,12 @@ ssize_t cli_write(struct cli_state *cli,
                mpx = 1;
        }
 
-        if (!client_is_signing_on(cli) &&
+        if (write_mode == 0 &&
+                       !client_is_signing_on(cli) &&
                        (cli->posix_capabilities & CIFS_UNIX_LARGE_WRITE_CAP) &&
                        (cli->capabilities & CAP_LARGE_FILES)) {
                /* Only do massive writes if we can do them direct
-                * with no signing. */
+                * with no signing - not on a pipe. */
                writesize = CLI_SAMBA_MAX_POSIX_LARGE_WRITEX_SIZE;
        } else if (cli->capabilities & CAP_LARGE_READX) {
                if (cli->is_samba) {