1
0
mirror of https://github.com/samba-team/samba.git synced 2025-07-14 12:59:07 +03:00
Commit Graph

1278 Commits

Author SHA1 Message Date
a235676dd1 Fix a debug message
(This used to be commit 1970eed1b7)
2008-07-27 18:41:19 +02:00
b117e10394 Remove a pointless CONST_DISCARD
(This used to be commit c63cb78b4c)
2008-07-27 18:37:00 +02:00
ee49e0391f Fix bug creating files using DOS clients with mixed
case files. Reported by Daniel Johnson <Progman2000@usa.net>.
The smb_set_file_time() call to set the filetimes is failing
because it's using the unmodified name passed in by the
client, not the modified name (matching case on the
disk) that comes out from create_file().
Jeremy.
(This used to be commit 1706a33e78)
2008-07-25 13:16:18 -07:00
c885ae01eb Remove current_user reference from printfsp.c
(This used to be commit 510f45d01a)
2008-06-26 13:13:23 +02:00
52664f62ba Remove current_user references from trans2.c
This involved replacing the CHECK_NTQUOTA_HANDLE_OK macro by a function.
(This used to be commit 5595cdf837)
2008-06-19 18:51:38 +02:00
f1cd0bdbcc Remove reference to current_user from reply.c
(This used to be commit e895e44cc7)
2008-06-19 18:51:38 +02:00
e40b6e296a Remove the "current_user" arg from fsp_belongs_conn
fsp_belongs_conn only used the vuid struct member anyway, and this is available
in the smb_request structure as well.
(This used to be commit 64e9372ab9)
2008-06-19 18:51:37 +02:00
49ca8efa91 Remove the "current_user" arg from check_fsp
check_fsp only used the vuid struct member anyway, and this is available in the
smb_request structure as well.
(This used to be commit 8d364c4c33)
2008-06-19 18:51:37 +02:00
ee8dffbca6 Fix the build of reply_setattrE().
How ever could this compile ?

Guenther
(This used to be commit 02f5f35e5e)
2008-04-08 21:41:16 +02:00
19f49de92e smbd: make it possible to disable get_file_infos() on searches
metze
(This used to be commit 404a865a34)
2008-04-07 12:29:30 +02:00
d03453864a smbd: implement the strange write time update logic
We now never call file_ntimes() directly, every update
is done via smb_set_file_time().

This let samba3 pass the BASE-DELAYWRITE test.

The write time is only updated 2 seconds after the
first write() on any open handle to the current time
(not the time of the first write).

Each handle which had write requests updates the write
time to the current time on close().

If the write time is set explicit via setfileinfo or setpathinfo
the write time is visible directly and a following close
on the same handle doesn't update the write time.

metze
(This used to be commit 2eab212ea2)
2008-04-07 12:29:26 +02:00
2ccf50256e locking: store the write time in the locking.tdb
This is needed to implement the strange write time update
logic later. We need to store 2 time timestamps to
distinguish between the time the file system had before
the first client opened the file and a forced timestamp update.

metze
(This used to be commit 6aaa2ce0ee)
2008-04-07 12:29:25 +02:00
43fdd1748c Fix missing '&&'.
Jeremy.
(This used to be commit 251df53811)
2008-03-28 17:32:52 -07:00
e00bfc5092 Only allow sendfile on non-stream fsp's. Should fix make test for streams
as sendfile isn't implemented in the streams vfs modules yet.
Jeremy.
(This used to be commit eef53e9603)
2008-03-28 17:31:06 -07:00
afa682943c printclose has only 1 vwv
(This used to be commit 99d9801250)
2008-03-28 13:44:30 +01:00
b7a014a6ee Allow us to pass RAW-RENAME by testing that the connection struct
connection paths are equal, not just the conn structs themselves.
Jeremy.
(This used to be commit 632f3fe66f)
2008-03-11 13:38:25 -07:00
bac7b5b19e Try and fix bug #5315, as well as S4 torture tests RAW-OPLOCK BATCH19,
BATCH20 and RAW-RENAME.
Jeremy.
(This used to be commit 9065792d4b)
2008-03-11 13:27:33 -07:00
14aa57a9e3 Don't use fname after create_file has been called
create_file calls unix_convert internally, so modifies fname. So we can't use
"fname" after create_file has returned. Use fsp->fsp_name instead.

Found during a lengthy debugging session with Karolin testing the xattr_tdb
module...
(This used to be commit 183fe57046)
2008-02-22 17:15:09 +01:00
2a6a2288c5 Fix some typos.
Karolin
(This used to be commit 2bec0a1fb7)
2008-02-08 10:05:32 +01:00
a4436154b8 Change the file time before we change the file mode.
This doesn't matter for most applications, but for offline files it matters as it allows you to set
files offline from windows clients even with HSM systems that refuse to offline newly created files.
Merge from Tridge's v3-0-ctdb tree.
(This used to be commit 7da6c67544)
2008-02-06 09:10:50 +03:00
b42a5d68a3 Convert read_data() to NTSTATUS
(This used to be commit af40b71023)
2008-02-02 11:03:23 +01:00
21e7344d2f Make get_srv_read_error static to process.c
(This used to be commit 9e2947039e)
2008-02-02 11:03:23 +01:00
9f6e983d0b Convert read_smb_length to return NTSTATUS
(This used to be commit 5750c3a51b)
2008-02-02 11:03:21 +01:00
34a92c6285 Re-enable async I/O for non-TSM systems
The logic was wrong: A "SMB_VFS_AIO_FORCE()==False" disabled async I/O, whereas
a "SMB_VFS_AIO_FORCE()==True" should enforce it regardless of other settings.

Alexander, please check!
(This used to be commit 46882ad992)
2008-01-30 11:12:10 +01:00
33f3eeaa00 Fix some "set but never used" warnings
(This used to be commit 4a6dadc517)
2008-01-20 17:44:40 +01:00
f87d08f622 Don't test split_ntfs_stream_name
This is a hot code path, and if it has a :, the name will be split later on
anyway.
(This used to be commit 9f7f6b812d)
2008-01-20 14:44:39 +01:00
1069cfe4ad Add streams support
This is the core of the streams support. The main change is that in
files_struct there is now a base_fsp pointer that holds the main file open
while a stream is open. This is necessary to get the rather strange delete
semantics right: You can't delete the main file while a stream is open without
FILE_SHARE_DELETE, and while a stream is open a successful unlink of the main
file leads to DELETE_PENDING for all further access on the main file or any
stream.
(This used to be commit 6022873cc1)
2008-01-19 23:25:36 +01:00
d86fc3ec8c Add support for offline files support, remote storage, and Async I/O force operations to VFS
Offline files support and remote storage are for allowing communication with
backup and archiving tools that mark files moved to a tape library as offline.
We translate this info into corresponding CIFS offline file attribute and
mark an exported volume as remote storage.

Async I/O force is to allow selective redirection of I/O operations to asynchronous
processing in case it is viable at VFS module discretion. It is needed for
proper handling of offline files as performing regular I/O on offline file will
block smbd.


Signed-off-by: Alexander Bokovoy <ab@samba.org>(This used to be commit 875208724e)
2008-01-16 12:17:03 +03:00
ec412b60ea Convert OpenDir to talloc, use talloc_tos()
This cuts some mallocs on NtCreate&X
(This used to be commit 8e64107b78)
2008-01-12 21:04:06 +01:00
4caab9ca25 Combine fsp and fromfd to fromfsp in SMB_VFS_SENDFILE().
Michael
(This used to be commit a52cfb7d77)
2008-01-11 01:27:05 +01:00
3cc3b9e187 use talloc_tos in a few more places
(This used to be commit 65dd869bea)
2008-01-10 13:19:58 +01:00
2371d31f64 Fix resource leak found by coverity (CID 521).
Jeremy.
(This used to be commit acfb233acc)
2008-01-08 18:44:19 -08:00
87a684f7fc Remove redundant parameter fd from SMB_VFS_FSTAT().
Michael
(This used to be commit 0b86c420be)
2008-01-07 15:59:01 +01:00
6f657c873e Remove redundant parameter fd from SMB_VFS_LSEEK().
Michael
(This used to be commit df929796f2)
2008-01-07 15:59:01 +01:00
29562987c3 Now conn is part of smb_request, we don't need it as
an extra parameter. This cleans up quite a few places
we were passing it around without needing it.
Jeremy.
(This used to be commit 8f36def18e)
2008-01-04 15:37:24 -08:00
9254bb4ef1 Refactor the crypto code after a very helpful conversation
with Volker. Mostly making sure we have data on the incoming
packet type, not stored in the smb header.
Jeremy.
(This used to be commit c4e5a50504)
2008-01-04 12:56:23 -08:00
8ad3db1d2b Convert reply_mknew to create_file
(This used to be commit 1b1cea9ef0)
2008-01-02 13:32:23 +01:00
cc322c708c Convert reply_open_and_X to create_file
(This used to be commit fa09b9ab26)
2008-01-02 13:32:12 +01:00
c132824265 Convert reply_open to create_file
(This used to be commit 209c696ab8)
2008-01-02 13:32:07 +01:00
afc93255d1 Add SMB encryption. Still fixing client decrypt but
negotiation works.
Jeremy.
(This used to be commit d78045601a)
2007-12-26 17:12:36 -08:00
addf598cde Some C++ warnings
(This used to be commit 5ab82d4f57)
2007-12-21 09:58:20 +01:00
ae74aa9993 Constrain "min receivefile size" to max of BUFFER_SIZE
(128k). Add debug error messages so we can see why
writeX large is denied. Ensure we don't allow recvfile
writes on IPC$.
Jeremy.
(This used to be commit 6bf053a6a1)
2007-11-07 21:47:00 -08:00
36441da424 Remove the horror that was the global smb_rw_error.
Each cli struct has it's own local copy of this variable,
so use that in client code. In the smbd server, add one
static to smbd/proccess.c and use that inside smbd. Fix
a bunch of places where smb_rw_error could be set by
calling read_data() in places where we weren't reading
from the SMB client socket (ie. winbindd).
Jeremy.
(This used to be commit 255c2adf7b)
2007-11-05 11:12:56 -08:00
329365684b Change the client library to write directly out of
the incoming buffer in the non-signed case. Speeds
up writes by over 10% or so. Complete the server
recvfile implementation.
Jeremy.
(This used to be commit 81ca5853b2)
2007-11-02 12:21:34 -07:00
414ab2ce46 Argggh. smblen doesn't include the +4, so my smb_doff calculations
shouldn't either :-).
Jeremy.
(This used to be commit c3de44b6b0)
2007-11-02 10:35:10 -07:00
10500184bf Ensure we can't accidently do a pipe write with
unread bytes in the socket buffer.
Jeremy
(This used to be commit 84d22f7747)
2007-11-01 22:42:21 -07:00
bece9609cd Be careful and take care of the correct lengths in large
writeX calls.
Jeremy.
(This used to be commit 2d3ff9c502)
2007-11-01 22:24:39 -07:00
c94b2898cd Ensure we detect a large writeX when using recvfile.
More changes needed to make the UNIX_LARGE_WRITEX_CAP
writes work (I'll add these tomorrow).
Jeremy.
(This used to be commit 1c71546b61)
2007-11-01 21:51:45 -07:00
8f1f2f04c7 Fix some cases where file_set_dosmode was being passed
False instead of NULL. Fix more of the notifications to
be correct for Samba4 RAW-NOTIFY torture (we had missed
one when calling set_ea_dos_attribute().
Jeremy.
(This used to be commit 39d265375c)
2007-10-31 15:45:45 -07:00
ff82c0a037 Handle the disk full error case correctly.
Jeremy.
(This used to be commit b7088bb9c2)
2007-10-30 18:18:40 -07:00