Stefan Metzmacher
34a9892ec1
s3:smb2_server: make the logic in smbd_smb2_request_verify_creditcharge() simpler
...
We just need a max_charge variable to make the algorithm independent
of multi_credit support.
metze
2012-06-29 00:14:56 +02:00
Stefan Metzmacher
967f2c44b3
s3:smb2_server: simplify smbd_smb2_request_verify_creditcharge() a bit.
...
A credit charge of 0 is really not a special case, it just means the same
as 1.
metze
2012-06-29 00:14:56 +02:00
Stefan Metzmacher
5b7f5d02b5
s3:smb2_negprot: support SMB2_CAP_LARGE_MTU on everything but port 139
...
In future we'll have other transports like RDMA.
This makes NBT (tcp port 139) special instead of port 445.
metze
2012-06-29 00:14:56 +02:00
Stefan Metzmacher
1db83d2b37
s3:smb2_server: grant extra credits for multi-credit requests
...
metze
2012-06-29 00:14:55 +02:00
Stefan Metzmacher
648b959b13
s3:smb2_server: implement credit granting similar to windows
...
This makes it much easier to compare traces.
metze
2012-06-29 00:14:55 +02:00
Stefan Metzmacher
82dc0b33b9
s3:smb2_server: make sure sequence numbers don't wrap at UINT64_MAX
...
metze
2012-06-29 00:14:54 +02:00
Stefan Metzmacher
ee8ae459ae
s3:smb2_server: make sure we don't grant more credits than we allow
...
If the client hasn't consumed the lowest seqnum, but the distance
between lowest and highest seqnum has reached max credits.
In that case we should stop granting credits.
metze
2012-06-29 00:14:54 +02:00
Stefan Metzmacher
4fe41c0bb1
s3:smb2_server: check the credit_charge against the already granted credits
...
metze
2012-06-29 00:14:54 +02:00
Stefan Metzmacher
984fdaf914
s3:smb2_server: split out a smb2_validate_sequence_number() function
...
metze
2012-06-29 00:14:53 +02:00
Stefan Metzmacher
d6e7a76461
s3:smb2_server: clear sequence window if we got the lowest sequence id
...
Otherwise we'll never consume sequence id '0'.
metze
2012-06-29 00:14:53 +02:00
Stefan Metzmacher
bd6d415cae
s3:smb2_server: fix calculation of the next bitmap_offset
...
metze
2012-06-29 00:14:52 +02:00
Stefan Metzmacher
d1ee774ed0
s3:smb2_server: remove unused and confusing DEFAULT_SMB2_MAX_CREDIT_BITMAP_FACTOR
...
metze
2012-06-29 00:14:52 +02:00
Stefan Metzmacher
925994e42e
s3:smb2_server: call smbd_smb2_request_validate() also in smbd_smb2_first_negprot()
...
We need to consume message_id 0, for SMB1 negprot starts.
metze
2012-06-29 00:14:51 +02:00
Stefan Metzmacher
0b8eac9b79
s3:smb2_server: start the connection with one credit granted to the client
...
metze
2012-06-29 00:14:51 +02:00
Björn Jacke
7560b1cea6
s3: fine tune and clean up statvfs tests
...
This should also fix the build on Tru64. Tru64 has a POSIX compliant statvfs()
function while most *BSD systems ignore POSIX.
Autobuild-User(master): Björn Jacke <bj@sernet.de>
Autobuild-Date(master): Thu Jun 28 23:07:23 CEST 2012 on sn-devel-104
2012-06-28 23:07:23 +02:00
Stefan Metzmacher
d6939c39c0
s3:smbd: change nt_open_pipe() to uint16_t pnum/fnum
...
This is SMB1 code...
metze
Autobuild-User(master): Stefan Metzmacher <metze@samba.org>
Autobuild-Date(master): Thu Jun 28 14:47:45 CEST 2012 on sn-devel-104
2012-06-28 14:47:45 +02:00
Stefan Metzmacher
d7d1bb9444
s3:smb2_create: add usefull DEBUG() message
...
All calls which take an file handle have the same,
so we should also log it, when we create a handle.
metze
Autobuild-User(master): Stefan Metzmacher <metze@samba.org>
Autobuild-Date(master): Thu Jun 28 12:41:49 CEST 2012 on sn-devel-104
2012-06-28 12:41:48 +02:00
Stefan Metzmacher
66fa891d2d
s3:smbd/files: fsp->fnum is uint64_t not int!
...
metze
2012-06-28 10:08:03 +02:00
Andrew Bartlett
666dba3353
s3-param: Rename loadparm_s3_context -> loadparm_s3_helpers
...
This helps clarify the role of this structure and wrapper function.
The purpose here is to provide helper functions to the lib/param
loadparm_context that point back at the s3 lp_ functions. This allows
a struct loadparm_context to be passed to any point in the code, and
always refer to the correct loadparm system. If this has not been
set, the variables loaded in the lib/param code will be returned.
As requested by Michael Adam.
Andrew Bartlett
Autobuild-User(master): Andrew Bartlett <abartlet@samba.org>
Autobuild-Date(master): Wed Jun 27 17:11:16 CEST 2012 on sn-devel-104
2012-06-27 17:11:16 +02:00
Volker Lendecke
5df1fda0f5
s3: Restore async i/o with the "native" AIO interface
...
eff3609
moved the async signal handler initialization to later in the process
to enable aio_fork and aio_pthread on platforms without realtime signals. This
commit broke the use of the native aio interface. aio_pending_size is
initialized to 0, so aio.c will not allow async i/0 at all if modules do not
set that variable correctly. Initialize to 100 right from the start.
Signed-off-by: Stefan Metzmacher <metze@samba.org>
Autobuild-User(master): Stefan Metzmacher <metze@samba.org>
Autobuild-Date(master): Tue Jun 26 14:08:22 CEST 2012 on sn-devel-104
2012-06-26 14:08:22 +02:00
Stefan Metzmacher
93399c1ec3
s3:smbXsrv_tcon: pass max_tcons explicitly for smbXsrv_tcon_table_init()
...
metze
2012-06-26 12:18:03 +02:00
Stefan Metzmacher
9c36781580
s3:smbXsrv_session: pass max_sessions explicitly for smbXsrv_session_table_init()
...
metze
2012-06-26 12:17:33 +02:00
Stefan Metzmacher
45cd2bc2b3
s3:smb2_sesssetup: make use of smb2srv_session_close_previous_send/recv
...
metze
2012-06-25 20:55:07 +02:00
Stefan Metzmacher
299b63f875
s3:smbXsrv_session: react on MSG_SMBXSRV_SESSION_CLOSE
...
metze
2012-06-25 20:55:07 +02:00
Stefan Metzmacher
8acf6c90bd
s3:smbXsrv_session: add smb2srv_session_close_previous_send/recv
...
metze
2012-06-25 20:55:07 +02:00
Stefan Metzmacher
ed75069460
s3:smb2_sesssetup: inline gensec_session_info() call
...
metze
2012-06-25 20:55:07 +02:00
Stefan Metzmacher
1b8bcaeda3
s3:smb2_sesssetup: make use of gensec_update_send/recv
...
metze
2012-06-25 20:55:07 +02:00
Stefan Metzmacher
f32e99a0fc
s3:smb2_sesssetup: inline most of smbd_smb2_session_setup()
...
metze
2012-06-25 20:55:07 +02:00
Stefan Metzmacher
e77000259c
s3:smbd/sesssetup: implement dynamic re-authentication and expire session if client supports it
...
metze
2012-06-25 20:55:06 +02:00
Stefan Metzmacher
d2e1058f42
s3:smb2_sesssetup: implement dynamic re-authentication and expire sessions
...
metze
2012-06-25 20:55:06 +02:00
Stefan Metzmacher
9854ed6d01
s3:smbd: remove now unused invalidate_all_vuids()
...
Pair-Programmed-With: Michael Adam <obnox@samba.org>
metze
2012-06-25 20:55:06 +02:00
Michael Adam
77d1173aa2
s3:smbd: remove now unused conn_close_all()
...
Pair-Programmed-With: Stefan Metzmacher <metze@samba.org>
2012-06-25 20:55:06 +02:00
Michael Adam
d693ff54db
s3:smbd: use smbXsrv_session_logoff_all() and smb1srv_tcon_disconnect_all() in exit_server_common()
...
This removes the use of conn_close_all() and invalidate_all_vuids()
Pair-Programmed-With: Stefan Metzmacher <metze@samba.org>
2012-06-25 20:55:06 +02:00
Stefan Metzmacher
a129e271b5
s3:smbd: make use of smbXsrv_session for smb1
...
Pair-Programmed-With: Michael Adam <obnox@samba.org>
metze
2012-06-25 20:55:06 +02:00
Stefan Metzmacher
faa8edccef
s3:smbd: make use of smbXsrv_tcon for smb1
...
Pair-Programmed-With: Michael Adam <obnox@samba.org>
metze
2012-06-25 20:55:06 +02:00
Stefan Metzmacher
463b308f16
s3:smbd: make use of smbXsrv_tcon and smbXsrv_session for smb2
...
The removes the protocol specific smbd_smb2_session and
smbd_smb2_tcon.
Pair-Programmed-With: Michael Adam <obnox@samba.org>
metze
2012-06-25 20:55:06 +02:00
Stefan Metzmacher
ef408e5068
s3:smb2_sesssetup: add support for SMB 2.24/3.00 signing
...
metze
2012-06-25 20:55:06 +02:00
Stefan Metzmacher
02d206ee64
s3:smb2_sesssetup: make use of the smbXsrv_session infrastructure
...
We still have smbd_smb2_session as primary structure,
but that will went away once we got rid of smbd_smb2_tcon.
metze
2012-06-25 20:55:06 +02:00
Stefan Metzmacher
1fffd35692
s3:smbXsrv_session: init and disconnect smbXsrv_tcon for SMB2/3
...
metze
2012-06-25 20:55:06 +02:00
Stefan Metzmacher
c36bd677f3
s3:smbd: add smbXsrv_tcon infrastructure
...
Pair-Programmed-With: Michael Adam <obnox@samba.org>
metze
2012-06-25 20:55:06 +02:00
Stefan Metzmacher
f3dce4cc95
sq smbXsrv_session_global_store no connection
2012-06-25 20:55:06 +02:00
Stefan Metzmacher
85f8c14f30
s3:smbd: add smbXsrv_session infrastructure
...
Pair-Programmed-With: Michael Adam <obnox@samba.org>
metze
2012-06-25 20:55:06 +02:00
Stefan Metzmacher
130436f2fc
s3:smbd: add smbXsrv_version_* infrastructure
...
metze
2012-06-25 20:55:05 +02:00
Volker Lendecke
754b925ccd
s3: Fix a typo
...
Signed-off-by: Stefan Metzmacher <metze@samba.org>
Autobuild-User(master): Stefan Metzmacher <metze@samba.org>
Autobuild-Date(master): Mon Jun 25 17:13:59 CEST 2012 on sn-devel-104
2012-06-25 17:13:59 +02:00
Stefan Metzmacher
b40fa94360
s3:smbd: fix warning in smbd_tevent_trace_callback() without profile support
...
metze
2012-06-22 12:56:47 +02:00
Jeremy Allison
dd763d6d8e
Fix bug #8974 - Kernel oplocks are broken when uid(file) != uid(process).
...
Based on a fix from "Etienne Dechamps " <e-t172@akegroup.org>
Autobuild-User(master): Jeremy Allison <jra@samba.org>
Autobuild-Date(master): Thu Jun 21 21:53:58 CEST 2012 on sn-devel-104
2012-06-21 21:53:58 +02:00
Andrew Bartlett
33ff033204
s4-provision: Give better clues on what Samba needs for s3fs ACL support
...
Autobuild-User(master): Andrew Bartlett <abartlet@samba.org>
Autobuild-Date(master): Thu Jun 21 14:07:55 CEST 2012 on sn-devel-104
2012-06-21 14:07:55 +02:00
Michael Adam
73b200064f
s3:util: rename procid_equal() to serverid_equal()
...
Signed-off-by: Stefan Metzmacher <metze@samba.org>
2012-06-21 08:27:32 +02:00
Volker Lendecke
53cfde7204
s3: Remove a user of procid_is_me
...
Signed-off-by: Michael Adam <obnox@samba.org>
Signed-off-by: Stefan Metzmacher <metze@samba.org>
2012-06-21 08:27:30 +02:00
Stefan Metzmacher
cd260391fa
s3:smbd: fix the build with the --with-profiling-data option
...
metze
2012-06-20 12:58:58 +02:00
Jeremy Allison
818fd7e917
Remove unused code now we set the correct command codes.
2012-06-19 10:27:24 -07:00
Jeremy Allison
6cef2a613c
Fix warning: variable ‘in_start_time’ set but not used.
2012-06-19 10:27:23 -07:00
Rusty Russell
6244f668a3
TDB2: make SAMBA use tdb1 again for the moment.
...
Otherwise the following surgery will break the SAMBA build and testsuite.
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2012-06-19 05:38:05 +02:00
Jeremy Allison
bbb7cbfb7c
Same fix as bug 8989 - Samba 3.5.x (and probably all other versions of Samba) does not send correct responses to NT Transact Secondary when no data and no params
...
for the Trans2 calls. See MS-CIFS 2.2.4.47.2 for details.
Autobuild-User(master): Jeremy Allison <jra@samba.org>
Autobuild-Date(master): Sat Jun 16 07:59:19 CEST 2012 on sn-devel-104
2012-06-16 07:59:19 +02:00
Jeremy Allison
816c40cb0d
Fix Bug 8989 - Samba 3.5.x (and probably all other versions of Samba) does not send correct responses to NT Transact Secondary when no data and no params
...
Found by Richard Sharpe <realrichardsharpe@gmail.com>. The correct
command code in a reply to NT Transact Secondary (0xa1) is
NT Transact (0xa0).
2012-06-15 21:10:37 -07:00
Volker Lendecke
985dbedf27
s3: Slightly simplify grant_fsp_oplock_type
...
The "else" is not necessary, we did a return in the if-branch
Signed-off-by: Jeremy Allison <jra@samba.org>
2012-06-15 21:07:55 -07:00
Stefan Metzmacher
8cca7b09ad
s3:smb2_server: remember the request_time on an incoming request
...
metze
Autobuild-User(master): Stefan Metzmacher <metze@samba.org>
Autobuild-Date(master): Fri Jun 15 09:17:33 CEST 2012 on sn-devel-104
2012-06-15 09:17:32 +02:00
Stefan Metzmacher
d8b3687fcb
s3:smbd: remember the request_time on an incoming request
...
metze
2012-06-15 07:18:00 +02:00
Michael Adam
b27f88898a
s3:vfs: change files_struct.fnum from int to uint64_t
...
Signed-off-by: Stefan Metzmacher <metze@samba.org>
Autobuild-User(master): Stefan Metzmacher <metze@samba.org>
Autobuild-Date(master): Fri Jun 15 05:22:41 CEST 2012 on sn-devel-104
2012-06-15 05:22:41 +02:00
Michael Adam
67108c8e7e
s3:smbd: change trans2.c to use fsp_fnum_dbg() for fsp->fnum logging.
...
Signed-off-by: Stefan Metzmacher <metze@samba.org>
2012-06-15 03:28:15 +02:00
Michael Adam
d056fd14c8
s3:smbd: change smb2_write.c to use fsp_fnum_dbg() for fsp->fnum logging.
...
Signed-off-by: Stefan Metzmacher <metze@samba.org>
2012-06-15 03:28:15 +02:00
Michael Adam
bde02985e6
s3:smbd: change smb2_setinfo.c to use fsp_fnum_dbg() for fsp->fnum logging.
...
Signed-off-by: Stefan Metzmacher <metze@samba.org>
2012-06-15 03:28:15 +02:00
Michael Adam
1e0eb24270
s3:smbd: change smb2_read.c to use fsp_fnum_dbg() for fsp->fnum logging.
...
Signed-off-by: Stefan Metzmacher <metze@samba.org>
2012-06-15 03:28:15 +02:00
Michael Adam
632560b4d8
s3:smbd: change smb2_notify.c to use fsp_fnum_dbg() for fsp->fnum logging.
...
Signed-off-by: Stefan Metzmacher <metze@samba.org>
2012-06-15 03:28:15 +02:00
Michael Adam
ec111bd050
s3:smbd: change smb2_lock.c to use fsp_fnum_dbg() for fsp->fnum logging.
...
Signed-off-by: Stefan Metzmacher <metze@samba.org>
2012-06-15 03:28:15 +02:00
Michael Adam
7738b574c2
s3:smbd: change smb2_ioctl.c to use fsp_fnum_dbg() for fsp->fnum logging.
...
Signed-off-by: Stefan Metzmacher <metze@samba.org>
2012-06-15 03:28:15 +02:00
Michael Adam
cf380e168d
s3:smbd: change smb2_getinfo.c to use fsp_fnum_dbg() for fsp->fnum logging.
...
Signed-off-by: Stefan Metzmacher <metze@samba.org>
2012-06-15 03:28:15 +02:00
Michael Adam
66117c3312
s3:smbd: change smb2_flush.c to use fsp_fnum_dbg() for fsp->fnum logging.
...
Signed-off-by: Stefan Metzmacher <metze@samba.org>
2012-06-15 03:28:15 +02:00
Michael Adam
d82f1fada2
s3:smbd: change smb2_find.c to use fsp_fnum_dbg() for fsp->fnum logging.
...
Signed-off-by: Stefan Metzmacher <metze@samba.org>
2012-06-15 03:28:15 +02:00
Michael Adam
59225808fa
s3:smbd: change smb2_close.c to use fsp_fnum_dbg() for fsp->fnum logging.
...
Signed-off-by: Stefan Metzmacher <metze@samba.org>
2012-06-15 03:28:15 +02:00
Michael Adam
78b9e1afef
s3:smbd: change smb2_break.c to use fsp_fnum_dbg() for fsp->fnum logging.
...
Signed-off-by: Stefan Metzmacher <metze@samba.org>
2012-06-15 03:28:15 +02:00
Michael Adam
65ea1e427d
s3:smbd: change reply.c to use fsp_fnum_dbg() for fsp->fnum logging.
...
Signed-off-by: Stefan Metzmacher <metze@samba.org>
2012-06-15 03:28:14 +02:00
Michael Adam
3d7befa8f0
s3:smbd: change pipes.c to use fsp_fnum_dbg() for fsp->fnum logging.
...
Signed-off-by: Stefan Metzmacher <metze@samba.org>
2012-06-15 03:28:14 +02:00
Michael Adam
cd37c68fad
s3:smbd: change oplock.c to use fsp_fnum_dbg() for fsp->fnum logging.
...
Signed-off-by: Stefan Metzmacher <metze@samba.org>
2012-06-15 03:28:14 +02:00
Michael Adam
cdfc301da9
s3:smbd: change open.c to use fsp_fnum_dbg() for fsp->fnum logging.
...
Signed-off-by: Stefan Metzmacher <metze@samba.org>
2012-06-15 03:28:14 +02:00
Michael Adam
b4f6ef4e95
s3:smbd: change nttrans.c to use fsp_fnum_dbg() for fsp->fnum logging.
...
Signed-off-by: Stefan Metzmacher <metze@samba.org>
2012-06-15 03:28:14 +02:00
Michael Adam
93dd5a80cd
s3:smbd: change files.c to use fsp_fnum_dbg() for fsp->fnum logging.
...
Signed-off-by: Stefan Metzmacher <metze@samba.org>
2012-06-15 03:28:14 +02:00
Michael Adam
cb1c18516c
s3:smbd: change fake_file.c to use fsp_fnum_dbg() for fsp->fnum logging.
...
Signed-off-by: Stefan Metzmacher <metze@samba.org>
2012-06-15 03:28:14 +02:00
Michael Adam
ee6580c67f
s3:smbd: change blocking.c to use fsp_fnum_dbg() for fsp->fnum logging.
...
Signed-off-by: Stefan Metzmacher <metze@samba.org>
2012-06-15 03:28:14 +02:00
Michael Adam
4d66d9f6dd
s3:smbd: change aio.c to use fsp_fnum_dbg() for logging fsp->fnum.
...
Signed-off-by: Stefan Metzmacher <metze@samba.org>
2012-06-15 03:28:14 +02:00
Michael Adam
5d2af68a25
s3:smbd: use FNUM_FIELD_INVALID instead of literal -1
...
This is in preparation of changing fnum to uint64_t
Signed-off-by: Stefan Metzmacher <metze@samba.org>
2012-06-15 03:28:13 +02:00
Michael Adam
a7dccea0c5
s3:files: factor fsp_free() out of file_free()
...
To be reused in the durable reconnect code.
Pair-Programmed-With: Volker Lendecke <vl@samba.org>
2012-06-15 03:28:13 +02:00
Michael Adam
7aa9ad5bb9
s3:files: reorder file_free() a bit
...
Pair-Programmed-With: Volker Lendecke <vl@samba.org>
Pair-Programmed-With: Stefan Metzmacher <metze@samba.org>
2012-06-15 03:28:13 +02:00
Michael Adam
82a96d2432
s3:smbd: refactor fsp_new() out of file_new()
...
Pair-Programmed-With: Volker Lendecke <vl@samba.org>
Pair-Programmed-With: Stefan Metzmacher <metze@samba.org>
2012-06-15 03:28:13 +02:00
Stefan Metzmacher
3f110e50bf
s3:smbd: use fsp_persistent_id() as persistent_file_id part for SMB2 (bug #8995 )
...
It seems to be important to have unique persistent file ids,
because windows clients seem to index files by server_guid + persistent_file_id.
Which may break, if we just have a 16-bit range per connection
and the client connects multiple times.
Based on code from Ira Cooper. Use fsp->fh->gen_id as the persistent
fileid in SMB2.
metze
Autobuild-User(master): Stefan Metzmacher <metze@samba.org>
Autobuild-Date(master): Thu Jun 14 22:04:13 CEST 2012 on sn-devel-104
2012-06-14 22:04:10 +02:00
Stefan Metzmacher
47f837c105
s3:smbd: add a fsp_persistent_id() function
...
This calculates a 64-bit value that most likely uniquely identifies
the files_struct globally to the server.
* 32-bit random gen_id
* 16-bit truncated open_time
* 16-bit fnum (valatile_id)
Based on code from Ira Cooper. Use fsp->fh->gen_id as the persistent
fileid in SMB2.
Pair-Programmed-With: Michael Adam <obnox@samba.org>
metze
2012-06-14 18:13:31 +02:00
Stefan Metzmacher
5662166b23
s3:smbd: only set fsp->fh->gen_id for a client connection
...
For faked connections, like dfs and printing, we leave it as 0.
metze
2012-06-14 18:13:31 +02:00
Stefan Metzmacher
c7c351b817
s3:smbd: try to make fsp->fh->gen_id as globally unique as possible
...
This makes sure the value is never 0, it's between 1 and UINT32_MAX.
While fsp->fh->gen_id is 'unsigned long' currently (which might by 8 bytes),
there's some oplock code which truncates it to uint32_t (using IVAL()).
Which means we could reuse fsp->fh->gen_id as persistent file id
until we have a final fix, which uses database.
See bug #8995 for more details.
Based on code from Ira Cooper. Ensure fsp->fh->gen_id starts from
a random point. We will use this as the SMB2 persistent_id.
metze
2012-06-14 18:13:31 +02:00
Michael Adam
4c33f28dc2
s3:smbd: explain parameters to filename_convert call in smbd_smb2_create_send()
...
Autobuild-User(master): Michael Adam <obnox@samba.org>
Autobuild-Date(master): Mon Jun 11 19:21:51 CEST 2012 on sn-devel-104
2012-06-11 19:21:51 +02:00
Volker Lendecke
34c24c20c9
s3: Fix Coverity ID 703869 Logically dead code
...
We "TALLOC_FREE(curr)" and assign prev=curr in the for-loop header.
This will lead to "prev"==NULL always. In this loop, we do not need
to correctly re-shuffle the linked list, we delete all from the
beginning anyway.
Signed-off-by: Stefan Metzmacher <metze@samba.org>
Autobuild-User(master): Stefan Metzmacher <metze@samba.org>
Autobuild-Date(master): Mon Jun 11 17:26:53 CEST 2012 on sn-devel-104
2012-06-11 17:26:53 +02:00
Volker Lendecke
e1a4d3cdd4
s3: Fix Coverity ID 709049 Dereference before null check
...
We have dereferenced fsp before. Because smb2 is only handle based,
this is a bogus check.
Signed-off-by: Stefan Metzmacher <metze@samba.org>
Autobuild-User(master): Stefan Metzmacher <metze@samba.org>
Autobuild-Date(master): Mon Jun 11 15:30:54 CEST 2012 on sn-devel-104
2012-06-11 15:30:54 +02:00
Andrew Bartlett
6aee8021a1
s3-smbd: Remove unused branches in negprot since security=share was removed
2012-06-11 11:44:07 +02:00
Björn Jacke
f97ca7d643
s3: fix build on systems without O_NOFOLLOW
2012-06-10 21:38:08 +02:00
Stefan Metzmacher
c48e307de4
Revert "s3:smbd: set req->smb2req->compat_chain_fsp in file_fsp()"
...
This reverts commit c2716a7d5ccf78f9716b703c22e6cf4d4f179656.
This is not needed anymore, as we have file_fsp_smb2() now.
metze
Autobuild-User(master): Stefan Metzmacher <metze@samba.org>
Autobuild-Date(master): Sun Jun 10 18:04:21 CEST 2012 on sn-devel-104
2012-06-10 18:04:21 +02:00
Björn Jacke
f75f1d6233
s3: handle non-POSIX compliant Tru64, NetBSD and FreeBSD errno on O_NOFOLLOW symlink open calls
...
or should we leave the NetBSD and FreeBSD platforms just broken? Actually these
two *want* to have broken platforms as they use different errno's than POSIX
demands *interntionally*. The POSIX errno ELOOP for O_NOFOLLOW open calls on
symlinks is clear and unambiguous. See http://gnats.netbsd.org/43154 for the
interesting NetBSD discussion on that.
Autobuild-User(master): Björn Jacke <bj@sernet.de>
Autobuild-Date(master): Sun Jun 10 16:10:02 CEST 2012 on sn-devel-104
2012-06-10 16:10:01 +02:00
Stefan Metzmacher
046daccba5
s3:smb2_ioctl: make use of file_fsp_smb2()
...
metze
Autobuild-User(master): Stefan Metzmacher <metze@samba.org>
Autobuild-Date(master): Sun Jun 10 01:10:15 CEST 2012 on sn-devel-104
2012-06-10 01:10:14 +02:00
Stefan Metzmacher
7753a4a01b
s3:smb2_lock: make use of file_fsp_smb2()
...
metze
2012-06-09 21:23:45 +02:00
Stefan Metzmacher
951c5a6455
s3:smb2_write: make use of file_fsp_smb2()
...
metze
2012-06-09 21:23:45 +02:00
Stefan Metzmacher
564e618e9f
s3:smb2_read: make use of file_fsp_smb2()
...
metze
2012-06-09 21:23:45 +02:00
Stefan Metzmacher
0bf3b8a09c
s3:smb2_notify: make use of file_fsp_smb2()
...
metze
2012-06-09 21:23:44 +02:00
Stefan Metzmacher
26f37cba82
s3:smb2_setinfo: make use of file_fsp_smb2()
...
metze
2012-06-09 21:23:44 +02:00
Stefan Metzmacher
4bc10b5b72
s3:smb2_getinfo: make use of file_fsp_smb2()
...
metze
2012-06-09 21:23:44 +02:00
Stefan Metzmacher
4dfadfc61d
s3:smb2_find: make use of file_fsp_smb2()
...
metze
2012-06-09 21:23:44 +02:00
Stefan Metzmacher
3909ad4690
s3:smb2_break: make use of file_fsp_smb2()
...
metze
2012-06-09 21:23:44 +02:00
Stefan Metzmacher
2bb6a9e07f
s3:smb2_close: make use of file_fsp_smb2()
...
metze
2012-06-09 21:23:44 +02:00
Stefan Metzmacher
9e1e656c60
s3:smb2_flush: make use of file_fsp_smb2()
...
metze
2012-06-09 21:23:44 +02:00
Stefan Metzmacher
2a804a359a
s3:smbd: add file_fsp_smb2()
...
metze
2012-06-09 21:23:44 +02:00
Stefan Metzmacher
72564052b6
s3:smb2_write: pass fsp->fnum to init_strict_lock_struct()
...
fsp->fnum is the same as in_file_id_volatile.
When we start to support durable handles we should pass
in_file_id_persistent.
metze
Autobuild-User(master): Stefan Metzmacher <metze@samba.org>
Autobuild-Date(master): Sat Jun 9 18:50:32 CEST 2012 on sn-devel-104
2012-06-09 18:50:32 +02:00
Stefan Metzmacher
0d77585a41
s3:smb2_read: pass fsp->fnum to init_strict_lock_struct()
...
fsp->fnum is the same as in_file_id_volatile.
When we start to support durable handles we should pass
in_file_id_persistent.
metze
2012-06-09 15:02:47 +02:00
Stefan Metzmacher
4ae96bb952
s3:smb2_lock: use fsp->fnum as locking context
...
fsp->fnum is the same as in_file_id_volatile.
When we start to support durable handles we should pass
in_file_id_persistent.
metze
2012-06-09 15:02:47 +02:00
Stefan Metzmacher
3b2e5929ec
s3:smb2_lock: use smb2req->compat_chain_fsp instead of looking it up again
...
metze
2012-06-09 15:02:47 +02:00
Stefan Metzmacher
163207a28e
s3:smbd: set req->smb2req->compat_chain_fsp in file_fsp()
...
metze
2012-06-09 15:02:47 +02:00
Stefan Metzmacher
3dbfb25111
s3:smb2_close: add missing TALLOC_FREE(subreq) in smbd_smb2_request_close_done()
...
metze
Autobuild-User(master): Stefan Metzmacher <metze@samba.org>
Autobuild-Date(master): Sat Jun 9 13:57:31 CEST 2012 on sn-devel-104
2012-06-09 13:57:31 +02:00
Stefan Metzmacher
fc96488c64
s3:smbd: readd START_PROFILE(smbd_idle)/END_PROFILE(smbd_idle)
...
metze
2012-06-09 12:09:17 +02:00
Michael Adam
8a338c65a1
s3:smbd: change set_file_oplock() to return NTSTATUS
...
Pair-Programmed-With: Volker Lendecke <vl@samba.org>
Pair-Programmed-With: Stefan Metzmacher <metze@samba.org>
Autobuild-User(master): Michael Adam <obnox@samba.org>
Autobuild-Date(master): Fri Jun 8 23:20:20 CEST 2012 on sn-devel-104
2012-06-08 23:20:20 +02:00
Volker Lendecke
088ca00b92
s3: Replace an if with a boolean short circuit
...
Signed-off-by: Michael Adam <obnox@samba.org>
2012-06-08 21:29:20 +02:00
Volker Lendecke
a3b4a5d779
s3: Assigning ?True:False to a bool is a bit pointless
...
Signed-off-by: Michael Adam <obnox@samba.org>
2012-06-08 21:29:20 +02:00
Volker Lendecke
4aea0c1fa1
s3: Remove unnecessary ()
...
Signed-off-by: Michael Adam <obnox@samba.org>
2012-06-08 21:29:19 +02:00
Volker Lendecke
a51278067b
s3: Replace an if with a boolean short circuit
...
Signed-off-by: Michael Adam <obnox@samba.org>
2012-06-08 21:29:19 +02:00
Volker Lendecke
91be6b42f1
s3: Assigning ?True:False to a bool is a bit pointless
...
Signed-off-by: Michael Adam <obnox@samba.org>
2012-06-08 21:29:19 +02:00
Volker Lendecke
e1e1fbcfe6
s3: Remove unnecessary ()
...
Signed-off-by: Michael Adam <obnox@samba.org>
2012-06-08 21:29:19 +02:00
Michael Adam
41d830ea4f
s3:smbd: remove unnecessary variable readret from read_file()
...
Pair-Programmed-With: Volker Lendecke <vl@samba.org>
Autobuild-User(master): Michael Adam <obnox@samba.org>
Autobuild-Date(master): Fri Jun 8 18:08:09 CEST 2012 on sn-devel-104
2012-06-08 18:08:08 +02:00
Michael Adam
eb750d5458
s3:smbd: remove ancient DMF_FIX from read_file().
...
Pair-Programmed-With: Volker Lendecke <vl@samba.org>
2012-06-08 16:10:40 +02:00
Michael Adam
4389097294
s3:include: change connection_struct->cnum to uint32_t
...
Pair-Programmed-With: Stefan Metzmacher <metze@samba.org>
2012-06-06 19:37:14 +02:00
Michael Adam
ba1699463b
s3:smb: introduce a name TID_FIELD_INVALID for the invalid value for a cnum/tid
...
Pair-Programmed-With: Stefan Metzmacher <metze@samba.org>
2012-06-06 19:37:14 +02:00
Michael Adam
aa3a7de368
s3:connections: add a CNUM_OFFSET for mapping between cnum and the bitmap index
...
This moves the start of the range of valid cnum values up from 0 to CNUM_OFFSET
(currently 1), so that in a later step we can use 0 as invalid cnum value
instead of the current -1. This will allow us to change the type of cnum to
uint32_t from a mix of int and unsigned.
Pair-Programmed-With: Stefan Metzmacher <metze@samba.org>
2012-06-06 19:37:13 +02:00
Stefan Metzmacher
02d9ba6ee1
s3:smbd: change user_struct->vuid to uint64_t
...
Only sconn->smb1.sessions.next_vuid remains as uint16_t,
so that we do not generate larger values yet.
metze
Autobuild-User: Stefan Metzmacher <metze@samba.org>
Autobuild-Date: Wed Jun 6 12:07:33 CEST 2012 on sn-devel-104
2012-06-06 12:07:33 +02:00
Stefan Metzmacher
bb27bb081e
s3:smbd: let file_close_pid/file_close_user take a uint64_t vuid
...
metze
2012-06-06 10:18:41 +02:00
Stefan Metzmacher
7d772064b4
s3:smbd: pass down vuid as uint64_t in lanman.c
...
metze
2012-06-06 10:18:41 +02:00
Stefan Metzmacher
612838dca8
s3:smbd: pass down vuid as uint64_t in ipc.c
...
metze
2012-06-06 10:18:41 +02:00
Stefan Metzmacher
d3e79a864d
s3:smbd: change vuid to uint64_t in uid.c
...
metze
2012-06-06 10:18:41 +02:00
Stefan Metzmacher
c535668f7b
s3:smbd: let fcb_or_dos_open() take a uint64_t vuid
...
metze
2012-06-06 10:18:41 +02:00
Stefan Metzmacher
9ffb8f1532
s3:smbd: let close_cnum() take a uint64_t vuid
...
metze
2012-06-06 10:18:41 +02:00
Stefan Metzmacher
69d1f9b836
s3:smbd: use UID_FIELD_INVALID (0) instead of (uint16)-1 when calling close_cnum()
...
The only thing that's important is that the value is invalid.
metze
2012-06-06 10:18:41 +02:00
Stefan Metzmacher
2a9a95e673
s3:smbd: let make_connection() take a uint64_t vuid
...
metze
2012-06-06 10:18:41 +02:00
Stefan Metzmacher
19d05171fa
s3:smbd: let conn_clear_vuid_caches() take a uint64_t vuid
...
metze
2012-06-06 10:18:41 +02:00
Stefan Metzmacher
2477c73b62
s3:smbd: let open_fake_file() take a uint64_t vuid
...
metze
2012-06-06 10:18:40 +02:00
Stefan Metzmacher
53cd38ebb8
s3:smbd: change conn_ctx->vuid to uint64_t
...
metze
2012-06-06 10:18:40 +02:00
Stefan Metzmacher
21e6db8f7e
s3:smbd: change trans_state->vuid to uint64_t
...
metze
2012-06-06 10:18:40 +02:00
Stefan Metzmacher
d4aa494654
s3:include: change smb_request->vuid to uint64_t
...
metze
2012-06-06 10:18:40 +02:00
Stefan Metzmacher
37bfadf4a3
s3:include: change files_struct->vuid to uint64_t
...
metze
2012-06-06 10:18:40 +02:00
Stefan Metzmacher
bc39915f47
s3:smbd: move struct user_struct to globals.h
...
metze
2012-06-06 10:18:39 +02:00
Stefan Metzmacher
f52e5738a2
s3:smbd: use 'struct user_struct' instead of typedef'ed 'user_struct'
...
metze
2012-06-06 10:18:39 +02:00
Stefan Metzmacher
9e2e3708aa
s3:smbd: move forward declaration of struct aio_extra to smbd.h
...
metze
2012-06-06 10:18:39 +02:00
Stefan Metzmacher
9b5c2ca14c
s3:include: move some prototypes (e.g. smb_register_vfs) to vfs.h
...
These are called from vfs modules, which should not depend on smbd/proto.h
metze
2012-06-06 10:18:38 +02:00
Stefan Metzmacher
5306c18f2c
s3:smbd: move UCF_ defines to smbd.h
...
metze
2012-06-06 10:18:38 +02:00
Stefan Metzmacher
5fc502c624
s3:include: move struct connection_struct (and sub structs) to vfs.h
...
metze
2012-06-06 10:18:38 +02:00
Stefan Metzmacher
44482ad452
s3:smbd: move struct trans_state to smbd.h
...
metze
2012-06-06 10:18:38 +02:00
Stefan Metzmacher
ce41497769
s3:smbd: move struct privilege_paths to smbd.h
...
metze
2012-06-06 10:18:37 +02:00
Stefan Metzmacher
659f3e681e
s3:smbd: make struct notify_change_buf private to notify.c
...
metze
2012-06-06 10:18:37 +02:00
Stefan Metzmacher
b5b943dbad
s3:smbd: make use of change_notify_fsp_has_changes()
...
metze
2012-06-06 10:18:37 +02:00
Stefan Metzmacher
dc962c195e
s3:smbd: add change_notify_fsp_has_changes()
...
metze
2012-06-06 10:18:37 +02:00
Stefan Metzmacher
e91c223531
s3:smbd: use print_spool_rap_jobid() in call_trans2ioctl()
...
metze
2012-06-06 10:18:37 +02:00
Stefan Metzmacher
c2ffe330b4
s3:smbd: use print_spool_rap_jobid() in reply_ioctl()
...
metze
2012-06-06 10:18:37 +02:00
Stefan Metzmacher
145fe2ac4c
s3:smbd: fcb_or_dos_open() can be static
...
metze
2012-06-06 10:18:37 +02:00
Stefan Metzmacher
0907b1e20c
s3:smbd: dup_file_fsp() never gets called for print files
...
metze
2012-06-06 10:18:37 +02:00
Stefan Metzmacher
cf549ff2bc
s3:smbd: make struct vfs_fsp_data private to vfs.c
...
metze
2012-06-06 10:18:37 +02:00
Stefan Metzmacher
4321e19657
s3:smbd: make use of vfs_remove_all_fsp_extensions() in file_free()
...
metze
2012-06-06 10:18:37 +02:00
Stefan Metzmacher
cd3e658d82
s3:smbd: add vfs_remove_all_fsp_extensions()
...
metze
2012-06-06 10:18:36 +02:00
Stefan Metzmacher
05dc497637
s3:smbd: remove typedef for struct write_cache
...
metze
2012-06-06 10:18:36 +02:00
Stefan Metzmacher
4a91321f3a
s3:smbd: make typedef write_cache private to fileio.c
...
metze
2012-06-06 10:18:36 +02:00
Andrew Bartlett
d2f6d0ba1e
build: Rationalise AIO support in configure, ensure on by default
...
With this change, the define to check for AIO is HAVE_AIO, consistant
with other subsystems.
It is now also on by default in the autoconf build, as it has been for waf.
Andrew Bartlett
2012-06-06 08:23:10 +02:00
Stefan Metzmacher
8693a4fff9
s3:lib: split things into a conn_tdb.h
...
metze
Autobuild-User: Stefan Metzmacher <metze@samba.org>
Autobuild-Date: Tue Jun 5 19:28:35 CEST 2012 on sn-devel-104
2012-06-05 19:28:35 +02:00
Andrew Bartlett
9db04c481d
s3-smbd: Remove support for protocols before LANMAN1
...
This falls out of the removal of security=share, because we now require that
a session setup has been performed before (essentially) all other operations.
Andrew Bartlett
2012-06-05 04:27:36 +02:00
Jeremy Allison
4accd2396e
Fix bug #8972 - Directory group write permission bit is set if unix extensions are enabled
...
We can't manipulate file_attributes if it's a posix call. I'll look
at adding a test for this asap.
Autobuild-User: Jeremy Allison <jra@samba.org>
Autobuild-Date: Tue Jun 5 04:26:11 CEST 2012 on sn-devel-104
2012-06-05 04:26:10 +02:00
Stefan Metzmacher
9c80b91d8f
s3:smbd: make conn_close_all() a void function
...
metze
2012-06-03 21:33:10 +02:00
Stefan Metzmacher
abcd095847
s3:smbd/close: call del_share_mode() directly before TALLOC_FREE(lck)
...
metze
Autobuild-User: Stefan Metzmacher <metze@samba.org>
Autobuild-Date: Sun Jun 3 21:08:19 CEST 2012 on sn-devel-104
2012-06-03 21:08:19 +02:00
Stefan Metzmacher
f66d88d10a
s3:smbd/close: remove unused goto out from close_directory()
...
metze
2012-06-03 17:23:28 +02:00
Stefan Metzmacher
8751c3f2ef
s3:smbd/close: do an early return in close_directory()
...
metze
2012-06-03 17:23:28 +02:00
Stefan Metzmacher
d792f59aeb
s3: Fix an assert to trigger in close_remove_share_mode
...
In case we have a left-over entry in the share mode entry array,
the SMB_ASSERT(got_tokens) is likely to kick in. It happens when
we are about to delete a file with initial delete on close. We don't
have a delete on close token set in the locking.tdb record. We see
the fsp->initial_delete_on_close set, add the delete_on_close token
to lck. Then "delete_file" is being set to true. Then later on we
do the notify_deferred_opens. This walks the list, also checking
for share_mode_stale_pid. We have already deleted our own share
mode entry, share_mode_stale_pid() sees the left-over entry. It not
also deletes that one but also the delete on close token. This leads
to a different view of "delete_file" a.k.a. "got_tokens" further
down in close_remove_share_mode, leading the SMB_ASSERT to fire.
This patch attempts to fix the issue by keeping around our own share
mode entry for almost the whole routine, preventing share_mode_stale_pid()
from removing the delete tokens.
Pair-Programmed-With: Volker Lendecke <vl@samba.org>
2012-06-03 17:23:28 +02:00
Volker Lendecke
b9e11bd63e
s3: Do an early return in close_remove_share_mode
...
Without "lck" we don't have much to clean up
Signed-off-by: Stefan Metzmacher <metze@samba.org>
2012-06-03 17:23:28 +02:00
Volker Lendecke
2e95b77c99
s3: Make close_remove_share_mode a bit more readable
...
by introducing a variable simplifying a boolean expression
Signed-off-by: Stefan Metzmacher <metze@samba.org>
2012-06-03 17:23:28 +02:00
Volker Lendecke
8541829a9a
s3: Slightly simplify close_remove_share_mode
...
Remove a level of indentation by more use of "continue;"
Signed-off-by: Stefan Metzmacher <metze@samba.org>
2012-06-03 17:23:28 +02:00
Stefan Metzmacher
8486d514f5
s3:smbd/close: avoid procid_is_me()
...
metze
2012-06-03 17:23:28 +02:00
Stefan Metzmacher
85e6dcf49c
s3:smbd/open: avoid procid_is_me()
...
metze
2012-06-03 17:23:27 +02:00
Stefan Metzmacher
9dba59d026
s3:smbd/oplock: avoid procid_is_me()
...
metze
2012-06-03 17:23:27 +02:00
Jeremy Allison
8fd02fa2d6
Forward port of Richard Sharpe's <realrichardsharpe@gmail.com> fix for bug #8970 - Possible memory leaks in the samba master process.
2012-05-31 16:08:44 -07:00
Jeremy Allison
f6e41026f8
We are triggering the cleanup_timeout_fn() too often, on exiting when an smbd is idle.
...
Calls to exit_server_cleanly() should be treated as a "clean" shutdown,
and not trigger the master smbd to call cleanup_timeout_fn.
2012-05-31 12:35:04 -07:00
Stefan Metzmacher
6718747268
s3:smbd: use server_messaging_context() instead of sconn->msg_ctx in exit_server_common()
...
sconn is not available in the parent anymore.
Thanks to Volker Lendecke <vl@samba.org> for finding this!
metze
Autobuild-User: Stefan Metzmacher <metze@samba.org>
Autobuild-Date: Thu May 31 18:08:06 CEST 2012 on sn-devel-104
2012-05-31 18:08:05 +02:00
Volker Lendecke
835e25e3b4
s3: Fix some 64-bit warnings
...
Signed-off-by: Stefan Metzmacher <metze@samba.org>
Autobuild-User: Stefan Metzmacher <metze@samba.org>
Autobuild-Date: Thu May 31 10:06:56 CEST 2012 on sn-devel-104
2012-05-31 10:06:56 +02:00
Jeremy Allison
5d1a8d2a31
Stop spamming the logs with "Could not remove pid XX from serverid.tdb" messages and initiating the cleanup function on every process death.
...
We now have many sub-processes from smbd that don't serve SMB1/SMB2 requests and
don't register themselves in the serverid.tdb. Only initiate the cleanup
from processes that were explicitly in the child list.
Autobuild-User: Jeremy Allison <jra@samba.org>
Autobuild-Date: Thu May 31 04:44:09 CEST 2012 on sn-devel-104
2012-05-31 04:44:09 +02:00
Andrew Bartlett
9f4b6fa0cc
s3-param: Use same function name for "max xmit" as lib/param
...
Again, this helps with merging the FN_ list.
Andrew Bartlett
2012-05-30 04:15:12 +02:00
Stefan Metzmacher
cee146ff7c
s3:smb2_ioctl: verify credit charge
...
Based on a patch from Christian Ambach <ambi@samba.org>.
metze
Autobuild-User: Stefan Metzmacher <metze@samba.org>
Autobuild-Date: Tue May 29 18:55:29 CEST 2012 on sn-devel-104
2012-05-29 18:55:29 +02:00
Stefan Metzmacher
8b4e677720
s3:smb2_ioctl: add more validation checks
...
metze
2012-05-29 17:02:13 +02:00
Stefan Metzmacher
4ac57a3c96
s3:smb2_ioctl: add some more validation checks
...
Based on a patch from Christian Ambach <ambi@samba.org>.
metze
2012-05-29 17:02:13 +02:00
Christian Ambach
aa7cd05e5b
s3:smbd/smb2_find add a debug message
...
like the ones in the other calls that check for max sizes
Signed-off-by: Stefan Metzmacher <metze@samba.org>
2012-05-29 10:45:32 +02:00
Christian Ambach
1bd3c0aefb
s3:smbd/smb2_getinfo add a debug message
...
like the ones in the other calls that check for max sizes
Signed-off-by: Stefan Metzmacher <metze@samba.org>
2012-05-29 10:45:22 +02:00
Christian Ambach
f94d3d17e8
s3:smbd/smb2_setinfo add a debug message
...
similar to the ones present in other paths
Signed-off-by: Stefan Metzmacher <metze@samba.org>
2012-05-29 10:44:55 +02:00
Christian Ambach
ac6417dfc6
s3:smbd/smb2_read improve debug message
...
make the message similar to the ones in other paths
Signed-off-by: Stefan Metzmacher <metze@samba.org>
2012-05-29 10:44:42 +02:00
Stefan Metzmacher
abf566ca99
s3:smbd: fix reply_open_pipe_and_X() to behave like windows (2008 R2)
...
See rpc.samba3.smb1-pipe-name.
metze
2012-05-28 19:51:59 +02:00
Stefan Metzmacher
e262db6c31
s3:smbd: only strip \\ off the name if present (for ntcreatex)
...
metze
2012-05-28 19:51:58 +02:00
Stefan Metzmacher
98c14ca61c
s3:smb2_create: do not remove leading backslash from pipe names
...
metze
2012-05-28 19:51:57 +02:00
Jeremy Allison
50fdb32a4d
Ensure we only return NT_STATUS_DELETE_PENDING if the share modes are valid.
...
Ensure we only return *file_existed = true if there were valid share modes.
Signed-off-by: Stefan Metzmacher <metze@samba.org>
2012-05-25 09:19:38 -07:00
Volker Lendecke
89cf7ea944
s3: Check for serverid_exists in close_directory
...
Signed-off-by: Jeremy Allison <jra@samba.org>
Signed-off-by: Stefan Metzmacher <metze@samba.org>
2012-05-25 09:19:38 -07:00
Volker Lendecke
bdc4404ef9
s3: Check for serverid_exists in close_remove_share_mode
...
Signed-off-by: Jeremy Allison <jra@samba.org>
Signed-off-by: Stefan Metzmacher <metze@samba.org>
2012-05-25 09:19:38 -07:00
Volker Lendecke
1b15d8b3da
s3: Check for serverid_exists in find_oplock_types
...
Signed-off-by: Jeremy Allison <jra@samba.org>
Signed-off-by: Stefan Metzmacher <metze@samba.org>
2012-05-25 09:19:38 -07:00
Volker Lendecke
e2818d4a0b
s3: Check for serverid_exists in smb_posix_unlink
...
Signed-off-by: Jeremy Allison <jra@samba.org>
Signed-off-by: Stefan Metzmacher <metze@samba.org>
2012-05-25 09:19:38 -07:00
Volker Lendecke
fdcca54ca3
s3: Check for serverid_exists in open_mode_check
...
Signed-off-by: Jeremy Allison <jra@samba.org>
Signed-off-by: Stefan Metzmacher <metze@samba.org>
2012-05-25 09:19:37 -07:00
Volker Lendecke
19b6671c07
s3: Check for serverid_exists in notify_deferred_opens
...
We will remove the check in parse_share_modes soon
Signed-off-by: Jeremy Allison <jra@samba.org>
Signed-off-by: Stefan Metzmacher <metze@samba.org>
2012-05-25 09:19:37 -07:00
Stefan Metzmacher
e17fa58d6e
s3:smbd: move global smbd_msg_state to smbXsrv_connection
...
metze
Autobuild-User: Stefan Metzmacher <metze@samba.org>
Autobuild-Date: Fri May 25 11:01:27 CEST 2012 on sn-devel-104
2012-05-25 11:01:27 +02:00
Stefan Metzmacher
167cccbc19
s3:smbd: move global koplocks to smbd_server_connection
...
metze
2012-05-25 09:05:35 +02:00
Stefan Metzmacher
3a66ee1ae5
s3:smbd: pass smbd_server_connection to should_notify_deferred_opens()
...
metze
2012-05-25 09:05:34 +02:00
Stefan Metzmacher
469a2c8e7c
s3:smbd: move global oplocks vars to smbd_server_connection
...
metze
2012-05-25 09:05:34 +02:00
Stefan Metzmacher
2f435bb61a
s3:smbd: remove unused get_number_of_exclusive_open_oplocks()
...
metze
2012-05-25 09:05:33 +02:00
Stefan Metzmacher
64ddb66884
s3:smbd/signing: use smbd_server_connection as talloc parent for its smb1 signing state
...
metze
Autobuild-User: Stefan Metzmacher <metze@samba.org>
Autobuild-Date: Fri May 25 00:23:53 CEST 2012 on sn-devel-104
2012-05-25 00:23:53 +02:00
Stefan Metzmacher
b5e9ece1f3
s3:smbd: remove global 'smbd_server_conn' !!!
...
For now we still use a global 'global_smbXsrv_connection'
in order to pass the connection state to exit_server*().
metze
Autobuild-User: Stefan Metzmacher <metze@samba.org>
Autobuild-Date: Thu May 24 20:07:20 CEST 2012 on sn-devel-104
2012-05-24 20:07:20 +02:00
Stefan Metzmacher
288a75d8dc
s3:smbd: only call file_init_global() in the parent smbd
...
metze
2012-05-24 18:16:37 +02:00
Stefan Metzmacher
9e45885fcc
s3:smbd/files: split file_init_global() out of file_init()
...
metze
2012-05-24 18:16:37 +02:00
Stefan Metzmacher
48e62f2d46
s3:smbd: remove unused var in smbXsrv_connection_init_tables()
...
metze
2012-05-24 18:16:37 +02:00
Stefan Metzmacher
a95b2ba043
s3:smbd/msdfs: pass allow_broken_path to resolve_dfspath_wcard()
...
metze
Autobuild-User: Stefan Metzmacher <metze@samba.org>
Autobuild-Date: Thu May 24 16:14:01 CEST 2012 on sn-devel-104
2012-05-24 16:14:01 +02:00
Stefan Metzmacher
758d61201f
s3:smbd/msdfs: pass 'allow_broken_path' to get_referred_path()
...
Note the DCERPC code should not be smb2 specific!
I wonder why this is at all smb2 specific...
metze
2012-05-24 14:12:32 +02:00
Stefan Metzmacher
a92f7176bd
s3:smbd/msdfs: let create_conn_struct() also fake the 'smbd_server_connection'
...
metze
2012-05-24 14:12:32 +02:00
Stefan Metzmacher
0733183594
s3:smbd/files: work without sconn->file_bmap and assign fsp->fnum = -1
...
For faked connection_structs we do not need valid fnum values,
e.g. in the dfs and printing code.
metze
2012-05-24 14:12:32 +02:00
Stefan Metzmacher
768004b11d
s3:smbd/files: fix error path and correctly cleanup
...
metze
2012-05-24 14:12:32 +02:00
Stefan Metzmacher
aa7b1e21a8
s3:smbd/proto.h: remove unused resolve_dfspath() prototype
...
metze
2012-05-23 20:03:10 +02:00
Stefan Metzmacher
97f0a3675f
s3:smbd/files: remove unused VALID_FNUM()
...
metze
2012-05-23 20:03:09 +02:00
Stefan Metzmacher
a0c9a291e7
s3:smb2_server: make use of nt_status_np_pipe()
...
metze
2012-05-23 20:03:09 +02:00
Stefan Metzmacher
d595d2e5af
s3:smbd: use nt_status_np_pipe for smb1
...
metze
2012-05-23 20:03:08 +02:00
Stefan Metzmacher
d869f0260c
s3:smbd: add nt_status_np_pipe()
...
This mapps between NT_STATUS_CONNECTION_* to NT_STATUS_PIPE_*
metze
2012-05-23 20:03:08 +02:00
Stefan Metzmacher
37866df4ee
s3:smbd: use reply_force_doserror(req, ERRSRV, ERRbaduid) on SMBulogoff
...
We don't support security = share anymore, so we should always have
a valid session.
Found by the raw.context test.
metze
Autobuild-User: Stefan Metzmacher <metze@samba.org>
Autobuild-Date: Wed May 23 12:47:37 CEST 2012 on sn-devel-104
2012-05-23 12:47:37 +02:00
Michael Adam
f9e4105f41
s3:smbd: remove unused 'connection_struct->used'
...
Pair-Programmed-With: Stefan Metzmacher <metze@samba.org>
Autobuild-User: Stefan Metzmacher <metze@samba.org>
Autobuild-Date: Tue May 22 16:42:22 CEST 2012 on sn-devel-104
2012-05-22 16:42:22 +02:00
Stefan Metzmacher
ce11eb5b94
s3:smb2_ioctl: Fix Coverity ID 701771 Uninitialized scalar variable
...
metze
Autobuild-User: Stefan Metzmacher <metze@samba.org>
Autobuild-Date: Mon May 21 19:27:44 CEST 2012 on sn-devel-104
2012-05-21 19:27:43 +02:00
Jeremy Allison
32cbf20e65
Move the set_write_time() call to after get_existing_share_mode_lock() returns with a share mode.
...
get_existing_share_mode_lock() isn't really the right
call here, as we're being called after
close_remove_share_mode() inside close_normal_file()
so it's quite normal to not have an existing share
mode here. However, get_share_mode_lock() doesn't
work because that will create a new share mode if
one doesn't exist - so stick with this call (just
ignore any error we get if the share mode doesn't
exist.
The previous commit raised the error message debug
level inside get_share_mode_lock_internal() so
we don't always get a level 1 error message if
get_existing_share_mode_lock() fails.
Autobuild-User: Jeremy Allison <jra@samba.org>
Autobuild-Date: Sat May 19 06:26:33 CEST 2012 on sn-devel-104
2012-05-19 06:26:33 +02:00
Stefan Metzmacher
d58f7cd546
s3:smbd: allow creating new spnego sessions only with a 0 vuid
...
Found by the raw.context test.
metze
2012-05-18 16:36:16 +02:00
Stefan Metzmacher
84ce4484e7
s3:smbd: SMBtdis should return ERRSRV, ERRinvnid instead of NETWORK_NAME_DELETED
...
Found by the raw.context test.
metze
2012-05-18 16:36:16 +02:00
Volker Lendecke
f5ca3f11e4
s3: Revert the serverid changes, they need more work
...
Autobuild-User: Volker Lendecke <vl@samba.org>
Autobuild-Date: Fri May 18 13:12:14 CEST 2012 on sn-devel-104
2012-05-18 13:12:14 +02:00
Volker Lendecke
182faceab2
s3: Check for serverid_exists in close_directory
...
Signed-off-by: Jeremy Allison <jra@samba.org>
2012-05-17 13:17:22 -07:00
Volker Lendecke
2db3ecbc95
s3: Check for serverid_exists in close_remove_share_mode
...
Signed-off-by: Jeremy Allison <jra@samba.org>
2012-05-17 13:17:22 -07:00
Volker Lendecke
49237b0cef
s3: Check for serverid_exists in find_oplock_types
...
Signed-off-by: Jeremy Allison <jra@samba.org>
2012-05-17 13:17:22 -07:00
Volker Lendecke
5017bbe70d
s3: Check for serverid_exists in smb_posix_unlink
...
Signed-off-by: Jeremy Allison <jra@samba.org>
2012-05-17 13:17:22 -07:00
Volker Lendecke
4962ab2aa8
s3: Check for serverid_exists in open_mode_check
...
Signed-off-by: Jeremy Allison <jra@samba.org>
2012-05-17 13:17:21 -07:00
Volker Lendecke
689a04bc6c
s3: Check for serverid_exists in notify_deferred_opens
...
We will remove the check in parse_share_modes soon
Signed-off-by: Jeremy Allison <jra@samba.org>
2012-05-17 13:17:21 -07:00
Stefan Metzmacher
ff700acdd0
s3:smb2_sesssetup: make use of nt_status_squash() in smbd_smb2_session_setup_recv()
...
metze
2012-05-17 12:59:08 +02:00
Andrew Bartlett
6bafb4ac25
s3-smbd: Avoid creating a UID ACL entry for SIDs that are mapped as ID_TYPE_BOTH The GID ACL entry is what will be mapped in most cases, and so is sufficient.
...
Andrew Bartlett
Signed-off-by: Jeremy Allison <jra@samba.org>
Autobuild-User: Andrew Bartlett <abartlet@samba.org>
Autobuild-Date: Thu May 17 05:08:44 CEST 2012 on sn-devel-104
2012-05-17 05:08:44 +02:00
Andrew Bartlett
f38638d451
s3-smbd: Consider a group with the same SID as sufficient duplication
...
This code is to ensure that the user does not loose rights when their file
ownership is taken away. If the owner (an IDMAP_BOTH SID) appears as a group
then a duplicate user is not required.
Signed-off-by: Jeremy Allison <jra@samba.org>
2012-05-17 03:17:05 +02:00
Andrew Bartlett
5b1c42228b
s3-smbd: Handle ID_TYPE_BOTH by mapping to both a group ACL entry and file ownership This will allow groups, such as domain administrators, to own files while correctly handling the rest of the ACL permissions.
...
Andrew Bartlett
Signed-off-by: Jeremy Allison <jra@samba.org>
2012-05-17 03:17:05 +02:00
Andrew Bartlett
367a644c4d
We need to split things up into a new helper function add_current_ace_to_acl() in order for there to be more posix ACL elements than NT ACL elements (so a group SID can own a file, but also get the group permissions that will be honoured)
...
Andrew Bartlett
Slightly modified by Jeremy to reduce diff size.
Signed-off-by: Jeremy Allison <jra@samba.org>
2012-05-17 03:17:05 +02:00
Jeremy Allison
173f818a29
This covers a case where an ID_TYPE_BOTH mapping creates group permissions, but must own the file. Based on an original patch by Andrew Bartlett.
2012-05-17 03:17:05 +02:00
Andrew Bartlett
59106473d3
s3-smbd: Do not merge UID ACE values with GID ACE values for posix ACL
...
This might happen when we get a SID mapped to IDMAP_BOTH.
Andrew Bartlett
Signed-off-by: Jeremy Allison <jra@samba.org>
2012-05-17 03:17:05 +02:00
Stefan Metzmacher
70be41c772
s3:onefs: remove all onefs related code as it not maintained anymore
...
See https://lists.samba.org/archive/samba-technical/2012-May/083631.html
for the discussion.
metze
Autobuild-User: Stefan Metzmacher <metze@samba.org>
Autobuild-Date: Wed May 16 11:23:05 CEST 2012 on sn-devel-104
2012-05-16 11:23:04 +02:00
Volker Lendecke
c562a534c8
s3: Fix a likely cut&paste error
2012-05-15 16:18:50 +02:00
Andreas Schneider
78af4738e7
s3-auth: Rename to init_system_session_info().
...
Autobuild-User: Andreas Schneider <asn@cryptomilk.org>
Autobuild-Date: Tue May 15 13:56:00 CEST 2012 on sn-devel-104
2012-05-15 13:56:00 +02:00
Stefan Metzmacher
e7e67962c7
s3:smb2_close: make the top level code async using
...
metze
2012-05-14 15:12:33 +02:00
Stefan Metzmacher
b8d999ce84
s3:smb2_close: add add smbd_smb2_close_send/recv as wrapper
...
metze
2012-05-14 15:12:33 +02:00
Stefan Metzmacher
643e648ed0
s3:smb2_close: don't do any marshalling in smbd_smb2_close() let the caller to it
...
metze
2012-05-14 15:12:33 +02:00
Stefan Metzmacher
302f767fb7
s3:smb2_tcon: make the top level code async using
...
metze
2012-05-14 15:12:33 +02:00
Stefan Metzmacher
b19a9dbb5b
s3:smb2_tcon: add smbd_smb2_tree_connect_send/recv as wrapper
...
metze
2012-05-14 15:12:33 +02:00
Volker Lendecke
87542e1310
s3: Make SMB_QUERY_FILE_UNIX_BASIC's devno work for files
...
According to susv3, st_rdev is valid exactly for char and block devices. Normal
files have st_dev set.
2012-05-14 13:16:32 +02:00
Stefan Metzmacher
8f887ce164
s3:smb2_sesssetup: make the top level code async using
...
metze
Autobuild-User: Stefan Metzmacher <metze@samba.org>
Autobuild-Date: Sun May 13 17:59:39 CEST 2012 on sn-devel-104
2012-05-13 17:59:39 +02:00
Stefan Metzmacher
1b8645b4c8
s3:smb2_sesssetup: add smbd_smb2_session_setup_send/recv as wrapper
...
This just adds smbd_smb2_session_setup_send/recv as wrapper to
the sync smbd_smb2_session_setup function.
This will allow us to change to top level code to work async,
then we can have a 2nd step where we remove the sync
smbd_smb2_session_setup function.
metze
2012-05-13 14:11:02 +02:00