Matthias Dieter Wallnöfer
1ffc65d462
s4:smb_server/smb/trans2.c - remove unused define "DEFAULT_SITE_NAME"
...
Obviously this isn't needed and in general site names shouldn't be hardcoded
anymore (except there is a good reason).
2010-05-18 17:22:35 +02:00
Matthieu Patou
fc94c50a9f
s4:smb_server: Implement GET_DFS_REFERRAL for domain referral requests
...
Signed-off-by: Stefan Metzmacher <metze@samba.org>
2010-05-18 15:31:14 +02:00
Matthieu Patou
90d768989c
s4:smb_server: fix trailling whitespace in trans2.c
...
Signed-off-by: Stefan Metzmacher <metze@samba.org>
2010-05-18 15:31:13 +02:00
Jelmer Vernooij
f9ca9e46ad
Finish removal of iconv_convenience in public API's.
2010-05-18 11:45:30 +02:00
Stefan Metzmacher
ae1c040b51
s4:smb_server/smb: SMBreadX can return STATUS_BUFFER_OVERFLOW
...
metze
2010-04-28 15:46:01 +02:00
Stefan Metzmacher
41d970718a
s4:smb_server: use tsocket_address_string() for debugging the client address
...
metze
2010-04-27 17:05:30 +02:00
Stefan Metzmacher
9dd4419ebe
s4:smb_server: use tsocket_address_string() for debugging the client address
...
metze
2010-04-27 16:18:14 +02:00
Stefan Metzmacher
54abb0724b
s4:smb_server: use tsocket_address_string() to display the client address
...
metze
2010-04-27 15:45:12 +02:00
Stefan Metzmacher
8fce492ffc
s4:smb_server: remove unused socket_address functions
...
metze
2010-04-27 15:44:40 +02:00
Stefan Metzmacher
8fb3292c99
s4:smb_server: pass tsocket_addresses to the ntvfs layer
...
metze
2010-04-27 13:01:59 +02:00
Andrew Bartlett
589a42e2da
s4:auth Change auth_generate_session_info to take an auth context
...
The auth context was in the past only for NTLM authentication, but we
need a SAM, an event context and and loadparm context for calculating
the local groups too, so re-use that infrustructure we already have in
place.
However, to avoid problems where we may not have an auth_context (in
torture tests, for example), allow a simpler 'session_info' to be
generated, by passing this via an indirection in gensec and an
generate_session_info() function pointer in the struct auth_context.
In the smb_server (for old-style session setups) we need to change the
async context to a new 'struct sesssetup_context'. This allows us to
use the auth_context in processing the authentication reply .
Andrew Bartlett
2010-04-14 10:30:51 +10:00
Andrew Tridgell
553324bc10
s4-waf: move to a universal method of recursing into subdirs
...
This works with both standalone lib builds and bundled builds
2010-04-06 20:27:25 +10:00
Andrew Tridgell
b690fedef5
s4-waf: removed the AUTOGENERATED markers
...
we won't be using the mk -> wscript generator again
2010-04-06 20:27:16 +10:00
Andrew Tridgell
f9eae32f4b
s4-waf: mark the wscript files as python so vim/emacs knows how to highlight them
2010-04-06 20:27:11 +10:00
Andrew Tridgell
844acb2260
build: waf quicktest nearly works
...
Rewrote wafsamba using a new dependency handling system, and started
adding the waf test code
2010-04-06 20:26:48 +10:00
Andrew Tridgell
845e0cbe6f
build: commit all the waf build files in the tree
2010-04-06 20:26:48 +10:00
Andrew Tridgell
80a37beb53
s4-pvfs: move the private ntcreatex flags to private_flags
...
Re-using two of the create_options bits was bound to eventually
cause problems, and indeed, Windows7 now uses one of those bits
when opening text files.
Fixes bug 7189
2010-03-05 16:12:05 +11:00
Matt Kraai
d8071e7ed7
Change uint_t to unsigned int in source4
...
Signed-off-by: Stefan Metzmacher <metze@samba.org>
2010-02-02 07:18:18 +01:00
Stefan Metzmacher
078482ad0e
s4:auth: change auth_check_password_send/recv to tevent_req
...
metze
2009-12-24 17:38:34 +01:00
Stefan Metzmacher
577857d351
s4:gensec: change gensec_update_send/recv to tevent_req
...
metze
2009-12-24 17:38:34 +01:00
Stefan Metzmacher
4e2da423de
s4:smb_server: fix mixing socket_address and tsocket_address
...
metze
2009-12-24 17:38:33 +01:00
Andrew Bartlett
0809696dbf
s4:auth Change 'get_challenge' API to be more like Samba3
...
It is just easier to fill in the known to be 8 byte challenge than
stuff about with allocated pointers.
Andrew Bartlett
2009-12-22 17:29:15 +11:00
Andrew Tridgell
33cbe9c631
s4-server: use GUID_to_ndr_blob() in cldap and smb servers
2009-12-10 17:51:28 +11:00
Andrew Tridgell
f01ea8bf58
s4-smb2: use new GUID function in smb2 negprot
2009-12-10 17:51:27 +11:00
Stefan Metzmacher
b62964d6fe
s4:smb_server/smb2: don't reset highest_smb2_seqnum on SMB2 Cancel
...
metze
2009-11-27 08:19:46 +01:00
Andrew Tridgell
7c158bdb1d
s4-smb2: sequence numbers are not checked in SMB2_OP_CANCEL
2009-11-27 16:05:06 +11:00
Steven Danneman
7f14388721
s4/libcli: rename previously reserved field in SMB2 LOCK struct
...
The lock.in.reserved field has been renamed lock_sequence in the
SMB 2.1 dialect. See MS-SMB 2.2.26.
2009-11-25 12:55:48 -08:00
Andrew Tridgell
54bd30f706
s4-samdb: reduce the number of samdb opens at startup
...
Using common parameters means that the ldb_wrap code can return a
reference rather than a new database
2009-10-25 17:19:03 +11:00
Andrew Tridgell
46b7938d7e
s4-smbserver: removed bogus initialisation of two union arms
...
Thanks to Metze for spotting this.
2009-10-17 13:12:24 +11:00
Andrew Tridgell
d72b5a81ef
s4-smb: fill in fnum as well for root_fid
...
This helps with the CIFS NTVFS backend, but doesn't solve all problems
2009-10-15 20:50:49 +11:00
Andrew Tridgell
dab799e569
s4-smbserver: fixed root_fid in nttrans create
2009-10-15 20:03:01 +11:00
Andrew Tridgell
3c028ff88b
s4-smb: declare root_fid as a file handle
...
In order to implement root_fid in the s4 SMB server we need to declare
it as a handle type, just as for other fnum values in SMB. This
required some extensive (but simple) changes in many bits of code.
2009-10-15 20:03:00 +11:00
Andrew Tridgell
7c807de6b8
s4-smbd: minimise includes in smbd/ and smb_server
2009-09-19 14:11:54 -07:00
Andrew Tridgell
e9a589feac
s4-server: kill main daemon if a task fails to initialise
...
When one of our core tasks fails to initialise it can now ask for the
server as a whole to die, rather than limping along in a degraded
state.
2009-09-18 18:05:55 -07:00
Andrew Tridgell
3854b5e614
changed BCC handling for SMBwriteX to handle broken MacOSX client
...
see bug #6610
The MacOSX SMB client sets the BCC value in SMBwriteX calls to zero
instead of the correct size. Checking against WindowsXP, I've found
that Windows uses the maximum of the computed buffer size and the
given BCC value. I've changed Samba4 to do the same to allow MacOSX to
work.
I've limited this change to non-chained packets to ensure we don't get
the possibility of exploits based on overlapping chained requests
2009-08-05 20:24:01 +10:00
Andrew Tridgell
67b6f5784a
on buffer overflow windows gives SMBSRV:ERRerror here
2009-08-05 20:24:00 +10:00
Andrew Tridgell
ff388611f4
fixed support for readx greater than 64k
...
This fixes bug 6547, where smbclient in S3 reads more than 64k at a
time with readx.
2009-08-04 16:01:11 +10:00
Andrew Tridgell
0534ae012b
use the new talloc_reparent in two places
2009-07-01 15:15:37 +10:00
Stefan Metzmacher
8d95883908
s4:smb2srv: don't allow the related flag on the first request in a compounded chain
...
metze
2009-06-09 19:33:46 +02:00
Stefan Metzmacher
959503ed1a
s4:smb2srv: correctly fail remaining compounded requests after a failure
...
metze
2009-06-09 16:49:32 +02:00
Stefan Metzmacher
f55091586d
s4:smb2srv: remove old TODO comment, we already check the seqnum
...
metze
2009-06-09 16:49:31 +02:00
Stefan Metzmacher
7633995fa0
s4:smb2srv: fix handling of multiple compounded requests
...
metze
2009-06-09 16:49:31 +02:00
Stefan Metzmacher
7b27b5f674
s4:smb2srv: remove the chained file handle on close
...
metze
2009-06-09 16:49:31 +02:00
Stefan Metzmacher
fadffbae88
s4:smb2srv: We only support SMB 2.002.
...
We need to loop over all given dialects and check
if we can find SMB2_DIALECT_REVISION_202.
metze
2009-05-26 09:50:45 +02:00
Sam Liddicott
4b21ad9db7
Have ntvfs_connect() accept union smb_tcon *tcon instead of char* sharename
...
This change brings ntvfs_connect into compliance with other ntvfs functions
which take an ntvfs module, an ntvfs request and an smb io union.
It now becomes the responsibility of ntvfs modules to examine
tcon->generic.level themselves and derive the share name and any other
options
directly; e.g.
const char *sharename;
switch (tcon->generic.level) {
case RAW_TCON_TCON:
sharename = tcon->tcon.in.service;
break;
case RAW_TCON_TCONX:
sharename = tcon->tconx.in.path;
break;
case RAW_TCON_SMB2:
default:
return NT_STATUS_INVALID_LEVEL;
}
if (strncmp(sharename, "\\\\", 2) == 0) {
char *p = strchr(sharename+2, '\\');
if (p) {
sharename = p + 1;
}
}
service.c smbsrv_tcon_backend() is called before ntvfs_connect and fills in
some of the tcon->..out values.
For the case of RAW_TCON_TCONX, it filles out tcon->tconx.out.tid and
tcon->tconx.out.options
For the case of RAW_TCON_TCON it fills out tcon->tcon.out.tid and
tcon->tcon.out.max_xmit
Thus the ntvfs_connect function for vfs modules may override these values
if desired, but are not required to.
ntvfs_connect functions are required to fill in the tcon->tconx.out.*_type
fields, for RAW_TCON_TCONX, perhaps something like:
if (tcon->generic.level == RAW_TCON_TCONX) {
tcon->tconx.out.fs_type = ntvfs->ctx->fs_type;
tcon->tconx.out.dev_type = ntvfs->ctx->dev_type;
}
Signed-off-by: Sam Liddicott <sam@liddicott.com>
(I fixed the ntvfs_connect() in the smb_server/smb2/
and the RAW_TCON_SMB2 switch case in the modules)
Signed-off-by: Stefan Metzmacher <metze@samba.org>
2009-05-20 13:32:27 +02:00
Sam Liddicott
8cd9c72d75
s4:smb_server: initialy read the first 4 bytes only
...
Stop packet_recv getting greedy and reading the whole socket
and then dispatching te extra packets in a timer loop
Signed-off-by: Sam Liddicott <sam@liddicott.com>
Signed-off-by: Stefan Metzmacher <metze@samba.org>
2009-05-20 10:16:43 +02:00
Stefan Metzmacher
d51bb8e4e6
s4:smb_server: return after we have processed an invalid smb2 request
...
metze
2009-05-11 15:59:46 +02:00
Sam Liddicott
176302dc05
Add async support for reply_tcon* and ntvfs_connect
...
smbsrv_tcon_backend no longer creates the ntvfs_request wrapper,
so smbsrv_reply_tcon* can now do this and then invoke ntvfs_connect
in the typical manner using SMBSRV_SETUP_NTVFS_REQUEST and
SMBSRV_CALL_NTVFS_BACKEND
Previously smbsrv_tcon_backend has been responsible for instantiating
the ntvfs_module_context to service a tree-connect request, and
then create an ntvfs_request wrapper around the smbsrv_request
and pass this to ntvfs_connect for the newly created ntvfs.
These actions could not be invoked asynchronously.
This meant that any client requests made while instantiating the
ntvfs module, including any composite's used during authentication
(or related client connections for the case of proxy modules)
would block other ntvfs modules and requests in the current process as
they executed a nested event loop to await completion.
Signed-off-by: Sam Liddicott <sam@liddicott.com>
Signed-off-by: Stefan Metzmacher <metze@samba.org>
2009-04-23 16:57:18 +02:00
Jelmer Vernooij
94069bd274
s4: Use same function signature for convert_* as s3.
2009-03-01 19:55:46 +01:00
Jelmer Vernooij
9ffb6d2d9e
Add allow_badcharcnv argument to all conversion function, for
...
consistency with Samba 3.
2009-03-01 06:33:40 +01:00
Andrew Bartlett
71632a1697
Remove auth/ntlm as a dependency of GENSEC by means of function pointers.
...
When starting GENSEC on the server, the auth subsystem context must be
passed in, which now includes function pointers to the key elements.
This should (when the other dependencies are fixed up) allow GENSEC to
exist as a client or server library without bundling in too much of
our server code.
Andrew Bartlett
2009-02-13 10:24:16 +11:00
Stefan Metzmacher
d9c30894a1
s4:service_stream: s/private/private_data
...
metze
2009-02-02 13:09:00 +01:00
Stefan Metzmacher
5bf95a71dd
s4:smb_server: s/private/private_data
...
metze
2009-02-02 13:08:36 +01:00
Stefan Metzmacher
5f13710ced
s4:irpc: avoid c++ reserved word 'private'
...
metze
2009-02-01 00:17:20 +01:00
Simo Sorce
380874ef86
Fix the mess with ldb includes.
...
Separate again the public from the private headers.
Add a new header specific for modules.
Also add service function for modules as now ldb_context and ldb_module are
opaque structures for them.
2009-01-30 01:02:03 -05:00
Stefan Metzmacher
183c379fe5
s4:lib/tevent: rename structs
...
list=""
list="$list event_context:tevent_context"
list="$list fd_event:tevent_fd"
list="$list timed_event:tevent_timer"
for s in $list; do
o=`echo $s | cut -d ':' -f1`
n=`echo $s | cut -d ':' -f2`
r=`git grep "struct $o" |cut -d ':' -f1 |sort -u`
files=`echo "$r" | grep -v source3 | grep -v nsswitch | grep -v packaging4`
for f in $files; do
cat $f | sed -e "s/struct $o/struct $n/g" > $f.tmp
mv $f.tmp $f
done
done
metze
2008-12-29 20:46:40 +01:00
Jelmer Vernooij
b86b2ce662
Fix two remaining missing symbols in smbtorture4.
2008-12-22 23:00:10 +01:00
Jelmer Vernooij
c023828962
Fix missing symbols issues when building with shared libraries.
2008-12-22 21:03:09 +01:00
Jelmer Vernooij
928fd47c3d
s4: Fix subsystem for various services in samba daemon.
2008-12-22 19:04:55 +01:00
Stefan Metzmacher
081f8883ba
s4: fix LIBEVENTS dependencies and use more forward declarations
...
We should only include events.h where we really need it
and prefer forward declarations of 'struct event_context'
metze
2008-12-17 11:04:45 +01:00
Sam Liddicott
7d8f3cdbfc
Let ntvfs request transport close via ntvfs_request state
...
[I can't swear that this covers all the smb2 cases, there are some reply
functions that I can't trace properly]
Add NTVFS_ASYNC_STATE_CLOSE bit to ntvfs_request->async_states->state
so that the ntvfs layer can signify that the client transport should
be closed, most useful for proxy servies, and most likely due to a
forwarding transport having been closed.
Signed-off-by: Sam Liddicott <sam@liddicott.com>
Signed-off-by: Stefan Metzmacher <metze@samba.org>
2008-12-05 12:52:13 +01:00
Jelmer Vernooij
b45caa44e1
Fix the build.
2008-11-02 23:58:49 +01:00
Jelmer Vernooij
b034c519f5
Add gensec_settings structure. This wraps loadparm_context for now, but
...
should in the future only contain some settings required for gensec.
2008-11-02 02:05:48 +01:00
Jelmer Vernooij
23302413b3
Remove unused include param/param.h.
2008-10-24 16:37:56 +02:00
Jelmer Vernooij
37d885c51a
Remove iconv_convenience argument from convert_string{,talloc}() but
...
make them wrappers around convert_string{,talloc}_convenience().
2008-10-24 14:26:46 +02:00
Jelmer Vernooij
922a29992e
Remove iconv_convenience parameter from simple string push/pull
...
functions.
2008-10-24 03:40:09 +02:00
Tim Prouty
e11277e28d
Fixed a variable undeclared compilation error
...
Explicitly declaring environ eliminates a compilation error on some
systems.
2008-10-13 17:53:58 -07:00
Jelmer Vernooij
9565999755
Fix include paths to new location of libutil.
2008-10-11 21:31:42 +02:00
Volker Lendecke
1a228b442e
smbd3 is unhappy if stderr is not open
2008-10-05 22:15:40 +02:00
Volker Lendecke
9542b2fe60
Re-enable build of smb_samba3.c after the rename smbd->samba
2008-10-05 16:59:09 +02:00
Stefan Metzmacher
e622325155
s4:smb_server/smb: FLAGS2_SMB_SECURITY_SIGNATURES should only be echoed, not set always
...
metze
2008-09-30 08:42:47 +02:00
Andrew Bartlett
8dd35fabbb
NetApp found that we never set the smb signing flags2.
...
This was found during testing at the CIFS plugfest.
No other client seems to honour or use this bit, but it is quite
ligitimately required by the spec.
Andrew Bartlett
2008-09-29 22:34:35 -07:00
Andrew Tridgell
0cf7175126
we need different error handling for truncated packets in NETPROT and
...
other SMB2 operations.
2008-09-24 18:58:38 -07:00
Andrew Tridgell
eb5b3f50d1
we should terminate the connection on a bad negprot packet size
2008-09-24 18:10:23 -07:00
Andrew Tridgell
742a99e046
- add reserved field in basic_information level
...
- use INVALID_PARAMETER for info length mismatch to match windows
behaviour
- added parsing of LINK_INFORMATION level
2008-09-24 18:10:23 -07:00
Andrew Tridgell
63685c7d02
record highest seq number in SMB2 to check for seqnum going backwards
2008-09-24 18:10:23 -07:00
Andrew Tridgell
49c80cea0b
cope with body_size zero in SMB2 receive
2008-09-24 18:10:23 -07:00
Andrew Tridgell
a3536c4c06
check for a 0 byte in the buffer in SMB2 read
2008-09-24 18:10:23 -07:00
Andrew Tridgell
7e57626d1d
the offset is 16 bits in SMB2 fileinfo
2008-09-24 18:10:23 -07:00
Andrew Tridgell
71ae732669
fixed error code for bad keepalive
2008-09-24 18:10:22 -07:00
Andrew Tridgell
ff542275c3
stricter checking of SMB2 echo body (per the spec)
...
thanks to the bluearc test suite
2008-09-24 18:10:22 -07:00
Jelmer Vernooij
6a689c23e8
Rename smbd -> samba.
...
This reverts commit 05ea5e23cf
.
Conflicts:
source4/smbd/server.c
2008-09-24 03:16:15 +02:00
Stefan Metzmacher
171349bc21
s4:smb_server: remove the bogus smbsrv_signing_restart()
...
Real signing always starts with seqnumber 2, and once signing
is on the session key never change anymore for the complete
smb connection.
metze
2008-09-23 11:30:04 +02:00
Andrew Bartlett
3b5060fdba
Explain why we use signing for DCs, but not file servers
2008-09-22 16:32:04 -07:00
Stefan Metzmacher
bee2b6c3a3
process incoming connections and fork a samba3 in inetd mode
2008-09-22 04:38:06 +02:00
Jelmer Vernooij
05ea5e23cf
Revert "Rename smbd -> samba."
...
This reverts commit 0e9008be35
.
2008-09-21 21:32:40 +02:00
Jelmer Vernooij
0e9008be35
Rename smbd -> samba.
2008-09-21 21:26:40 +02:00
Andrew Bartlett
059cd93497
Move our DC to implement mandetory signing.
...
(this does not change the file server role, and only really changes
what 'server signing = auto' means)
Optional signing really isn't any benifit to network security.
In doing so, allow anonymous clients (if permitted by policy) to log
in without signing, as Samba3 does not sign these connections (which
would use an all-zero key, so pointless).
Andrew Bartlett
(This used to be commit 468bf839c5
)
2008-09-05 16:45:10 +10:00
Andrew Bartlett
b7a1640b38
With a windows 2008 client, even anonymous requires signing...
...
Andrew Bartlett
(This used to be commit a89f981818
)
2008-09-05 16:24:44 +10:00
Stefan Metzmacher
2a36568129
smb2srv: async replies with STATUS_PENDING are not signed
...
..., but the they may have the sign flag set.
metze
(This used to be commit 43e43dead0
)
2008-08-14 13:13:50 +02:00
Stefan Metzmacher
0294c678c0
smb2srv: sign replies when the request was also signed
...
metze
(This used to be commit dd2f4f7a49
)
2008-08-14 13:13:50 +02:00
Stefan Metzmacher
4a214dba30
smb2srv: use defines instead of hex values
...
metze
(This used to be commit 7c4abf6614
)
2008-08-14 13:13:50 +02:00
Stefan Metzmacher
0251096a89
smb2srv: sign SMB2 Logoff replies
...
metze
(This used to be commit 2844e36173
)
2008-07-28 14:09:46 +02:00
Stefan Metzmacher
8623e2cc4c
smb2srv: correctly hold the signing state per session
...
metze
(This used to be commit 5b3ba3f355
)
2008-07-28 14:09:45 +02:00
Andrew Tridgell
809632c3df
initialise query_maximal_access here too
...
(This used to be commit 4b3af09450
)
2008-07-24 14:21:31 +10:00
Andrew Tridgell
091c141aba
make sure we initialise query_maximal_access
...
(This used to be commit 036f73d39a
)
2008-07-24 14:20:02 +10:00
Stefan Metzmacher
8bf2127313
smb_server/smb: handle incoming multi fragmented nttrans requests
...
metze
(This used to be commit 9a5f7bf68b
)
2008-07-07 20:59:19 +02:00
Stefan Metzmacher
5e4b8d6e51
smb_server/smb: prepare multi fragmented nttrans requests
...
metze
(This used to be commit 36a39b92d7
)
2008-07-07 20:59:19 +02:00
Stefan Metzmacher
1bc344cf52
smb_server/smb: trans(2) setup count is uint8_t
...
metze
(This used to be commit 1b507a9b8e
)
2008-07-07 18:10:08 +02:00
Stefan Metzmacher
50df83ac8c
smb_server/smb: transs and transs2 calls have different word counts
...
Also add a note about NT_STATUS_DOS(ERRSRV, ERRerror).
metze
(This used to be commit 4287b7c132
)
2008-07-07 13:43:12 +02:00
Stefan Metzmacher
88a26f6e7f
smb_server/smb: fix crash bug with fragmented trans calls
...
We need to use smbsrv_setup_secondary_request(req) to send the
trans ack, because smbsrv_send_reply(req) destroys 'req'
and the partial trans list had dead elements in the list.
Also make sure the partial list element is removed by a talloc
destructor.
metze
(This used to be commit 221f4d6e53
)
2008-07-07 13:43:12 +02:00
Andrew Tridgell
e4ad580b99
fixed mandatory signing
...
Metze pointed out that if signing is mandatory in the server then we
need to reject packets without the signed flag if the packet contains
a session id.
(This used to be commit 056f16e664
)
2008-06-07 08:14:25 -07:00
Andrew Tridgell
e97cf207fa
added server side SMB2 signing
...
(This used to be commit 8e919dcb08
)
2008-06-06 22:10:30 -07:00
Andrew Tridgell
405e64c437
more updates for new info levels
...
(This used to be commit 85d1873ee9
)
2008-06-02 11:05:06 +10:00
Andrew Tridgell
eb8634b2f0
check for requested buffer size in getinfo call
...
(This used to be commit ed8f16379d
)
2008-05-31 13:39:51 +10:00
Andrew Tridgell
6ef9674caa
the docs shows that this is a o16s32 blob
...
(This used to be commit a6d28e2b33
)
2008-05-30 07:28:53 +10:00
Andrew Tridgell
de4c962638
fix from WSPP SMB2 test 11
...
(This used to be commit 81612b7854
)
2008-05-29 19:32:04 +10:00
Andrew Tridgell
c86dc11be6
added support for returning the maximal access MXAC tag in SMB2 create
...
(This used to be commit 4eb49335d5
)
2008-05-29 19:16:26 +10:00
Andrew Tridgell
6b70726305
implement the documented SMB2 create blobs in the server
...
Not all of them are honoured yet, but they are all parsed and the ones
that have SMB equivalents are honoured
(This used to be commit 9fc70e2ed6
)
2008-05-28 16:28:37 +10:00
Andrew Tridgell
f85cfa9161
make sure we send a reply packet for bad create options
...
(This used to be commit f9b94f6299
)
2008-05-28 11:47:39 +10:00
Jelmer Vernooij
40a90e6a55
Merge branch 'v4-0-test' of ssh://git.samba.org/data/git/samba into v4-0-pyirpc
...
(This used to be commit e1af9708c9
)
2008-05-26 12:19:09 +02:00
Andrew Tridgell
2ad2bdda89
stricter checks for valid inputs in SMB2 open and lock
...
(This used to be commit a7b5689a73
)
2008-05-26 15:02:43 +10:00
Jelmer Vernooij
575f124385
Cope with no server being active.
...
(This used to be commit 893119bb4c
)
2008-05-26 05:12:31 +02:00
Andrew Tridgell
ec7a6ee8ab
fix make test for EAs again
...
- go back to 4 byte alignment until I work out the rules that Vista
wants more exactly
- add the zero sized EA handling for SMB2 more generically
(This used to be commit 326b69bc80
)
2008-05-23 00:07:12 +10:00
Andrew Tridgell
d5def936fe
pass in the required alignment to the EA construction routines
...
(This used to be commit af31030e0b
)
2008-05-22 22:46:29 +10:00
Andrew Tridgell
dec930448f
fixed parsing of the SMB2 ALL_INFO qfileinfo level
...
(This used to be commit a7be5ba22e
)
2008-05-22 14:49:21 +10:00
Andrew Tridgell
72739ac0d0
badly formed SMB2 packets get NT_STATUS_INVALID_PARAMETER
...
(This used to be commit 1c5dd2d1b6
)
2008-05-22 13:14:55 +10:00
Andrew Tridgell
aed93a238e
fixed SMB2 flush call, and added flush to gentest_smb2
...
(This used to be commit c52fe1fe1c
)
2008-05-21 22:51:21 +10:00
Andrew Tridgell
4d39976ddd
fixed SMB2 locking
...
- SMB2 locking is different in several ways from SMB locking. To fix
it properly we will need a new generic mapping structure for
locking, but for now do a best effort mapping
- added locking to gentest_smb2
(This used to be commit ea6d9cf602
)
2008-05-21 22:12:20 +10:00
Andrew Tridgell
03eb236f20
Merge commit 'origin/v4-0-test' into vfs_smb2
...
(This used to be commit 733937e87a
)
2008-05-19 11:40:25 +10:00
Jelmer Vernooij
4c70cda986
Fix a couple (well, little more than that..) of typos.
...
(This used to be commit a6b5211994
)
2008-05-18 23:02:47 +02:00
Jelmer Vernooij
4c8756f147
Create prototype headers from Makefile directory, without smb_build in the middle.
...
(This used to be commit f4a77b96f9
)
2008-05-18 22:30:08 +02:00
Jelmer Vernooij
03643aec88
Use variables for source directory in a couple more places.
...
(This used to be commit c41bd3005f
)
2008-05-18 19:54:27 +02:00
Andrew Tridgell
94162b3222
fixed warning
...
(This used to be commit d5165ed7a7
)
2008-05-16 12:46:28 +10:00
Andrew Tridgell
2994b483c8
fixed file_index reference
...
(This used to be commit edb4b38ed3
)
2008-05-16 12:46:16 +10:00
Andrew Tridgell
c0e247ab40
better match WSPP doc name for find flags
...
(This used to be commit 0e4b8602de
)
2008-05-15 20:46:43 +10:00
Jelmer Vernooij
cc9c4aaa8d
Merge branch 'v4-0-test' of ssh://git.samba.org/data/git/samba into v4-0-gmake3
...
Conflicts:
source/Makefile
source/auth/config.mk
source/auth/gensec/config.mk
source/build/m4/public.m4
source/build/make/python.mk
source/build/make/rules.mk
source/build/smb_build/header.pm
source/build/smb_build/main.pl
source/build/smb_build/makefile.pm
source/dsdb/config.mk
source/dsdb/samdb/ldb_modules/config.mk
source/kdc/config.mk
source/lib/events/config.mk
source/lib/events/events.c
source/lib/ldb/config.mk
source/lib/nss_wrapper/config.mk
source/lib/policy/config.mk
source/lib/util/config.mk
source/libcli/smb2/config.mk
source/libnet/config.mk
source/librpc/config.mk
source/nbt_server/config.mk
source/ntptr/ntptr_base.c
source/ntvfs/posix/config.mk
source/ntvfs/sysdep/config.mk
source/param/config.mk
source/rpc_server/config.mk
source/rpc_server/service_rpc.c
source/scripting/ejs/config.mk
source/scripting/python/config.mk
source/smb_server/config.mk
source/smbd/server.c
source/torture/config.mk
source/torture/smb2/config.mk
source/wrepl_server/config.mk
(This used to be commit 13bbd42068
)
2008-04-25 10:04:20 +01:00
Stefan Metzmacher
8b5f03a225
smb_server/smb2: handle incoming oplock releases
...
metze
(This used to be commit 2306394dcc
)
2008-04-19 01:54:45 +02:00
Amin Azez
b3f9740764
Flag smb messages array with AND_X and LARGE_REQUEST
...
If smb_messages flags show for which opcodes VWV(0)
signifies chaining modes, and also which opcodes can
have requests >64K then the bcc / req->in.data_size
fixup in smbsrv_recv_smb_request can be more safely
applied.
This fix permits nttrans requests >64K to be handled.
It is not yet clear if THAT is a good thing, but this
fix does the current thing more nicely.
(This used to be commit 8e4f16e975
)
2008-04-18 22:09:10 +02:00
Amin Azez
908d8daa21
Re-order smbsrv_recv_smb_request and smb_messages
...
No functional change, just re-ordering so that
smbsrv_recv_smb_request can refer to smb_messages
in a future patch
(This used to be commit d06eafea1a
)
2008-04-18 22:09:10 +02:00
Andrew Tridgell
dc74e0fad6
Merge branch 'v4-0-test' of ssh://git.samba.org/data/git/samba into v4-0-test
...
(This used to be commit 3ab9abf406
)
2008-04-17 15:21:08 +02:00
Andrew Tridgell
11703b2986
fix the overflow/wrap checks in Samba4 for new gcc optimisation behavior
...
The approach I have used is as set out in
https://www.securecoding.cert.org/confluence/display/seccode/ARR38-C.+Do+not+add+or+subtract+an+integer+to+a+pointer+if+the+resulting+value+does+not+refer+to+an+element+within+the+array
(This used to be commit 92d5fb531d
)
2008-04-17 15:20:39 +02:00
Jelmer Vernooij
dd0da89e84
Merge branch 'v4-0-test' of ssh://git.samba.org/data/git/samba into v4-0-test
...
(This used to be commit ece878c1f9
)
2008-04-17 13:05:25 +02:00
Jelmer Vernooij
21fc767378
Specify event_context to ldb_wrap_connect explicitly.
...
(This used to be commit b4e1ae07a2
)
2008-04-17 12:23:44 +02:00
Andrew Tridgell
769ebe9171
make smb2 read and write size configurable
...
(This used to be commit 2090e75e0c
)
2008-04-17 09:37:29 +02:00
Stefan Metzmacher
79b2980cf5
smb_server/smb2: initialize new create.in.blobs element untill it'll be supported
...
metze
(This used to be commit fbfbd74e65
)
2008-04-17 02:39:29 +02:00
Jelmer Vernooij
e9017ba418
Use _OBJ_FILES variables in a couple more places.
...
(This used to be commit 92856d5054
)
2008-04-14 17:22:58 +02:00
Andrew Tridgell
275f32ae2d
fill in unknown fields in SMB2 READ call
...
(This used to be commit 9b686c1380
)
2008-04-14 11:31:17 +02:00
Jelmer Vernooij
b5d84a74d1
Merge branch 'v4-0-test' of ssh://git.samba.org/data/git/samba into v4-0-gmake3
...
Conflicts:
source/auth/credentials/config.mk
source/auth/gensec/config.mk
source/build/smb_build/makefile.pm
source/heimdal_build/config.mk
source/lib/events/config.mk
source/lib/nss_wrapper/config.mk
source/lib/policy/config.mk
source/lib/registry/config.mk
source/lib/socket_wrapper/config.mk
source/lib/tdb/config.mk
source/lib/tls/config.mk
source/lib/util/config.mk
source/libcli/config.mk
source/libcli/ldap/config.mk
source/libnet/config.mk
source/librpc/config.mk
source/param/config.mk
source/rpc_server/config.mk
source/scripting/ejs/config.mk
source/smbd/process_model.mk
(This used to be commit 760378e029
)
2008-04-08 03:45:06 +02:00
Jelmer Vernooij
afe3e8172d
Install public header files again and include required prototypes.
...
(This used to be commit 47ffbbf674
)
2008-04-02 04:53:27 +02:00
Jelmer Vernooij
18d80bdf1f
Merge v4.0-test
...
(This used to be commit 977dbdeaf3
)
2008-03-28 00:44:14 +01:00
Stefan Metzmacher
903ea3d36d
smb_server: pass down RAW_RENAME_NTTRANS to the ntvfs layer
...
metze
(This used to be commit 80711c03e0
)
2008-03-11 20:16:51 +01:00
Jelmer Vernooij
fb6fdfce37
Fix the build.
...
(This used to be commit f2e4974471
)
2008-03-08 17:02:40 +01:00
Jelmer Vernooij
fc2cd5ed63
Merge branch 'v4-0-test' of ssh://git.samba.org/data/git/samba into v4-0-gmake3
...
(This used to be commit e4da851bd7
)
2008-03-07 18:03:54 +01:00
Amin Azez
17af5a9f42
Use 32 bit storage for nttrans counts
...
Erroneous 16bit storage for nttrans counts meant that nttrans behaved
"strangely" for sizes of over 64K
As 32 bit is used in the SMB message and specified in
http://us4.samba.org/samba/ftp/specs/draft-leach-cifs-v1-spec-02.txt
section 3.13.2
this fix changes storage to match.
Signed-off-by: Amin Azez <azez@ufomechanic.net>
(This used to be commit d66b6c3823
)
2008-03-07 12:10:48 +01:00
Stefan Metzmacher
87f2925252
ntvfs: pass down the client capabilities into the ntvfs layer
...
Note that we don't use any protocol specific values here.
For now only NTVFS_CLIENT_CAP_LEVEL_II_OPLOCKS is defined
others should be defined, when we find out that the ntvfs
layer needs to know about it.
metze
(This used to be commit cc42cd5f67
)
2008-03-06 16:31:25 +01:00
Jelmer Vernooij
b29d47edcf
Move object file lists to the Makefile.
...
(This used to be commit a7e6d2a183
)
2008-03-03 18:25:28 +01:00
Jelmer Vernooij
299265d47b
Remove yet more global_loadparm instances.
...
(This used to be commit 5de88728ac
)
2008-02-21 18:09:47 +01:00
Jelmer Vernooij
10169a2030
Remove more global_loadparm instance.s
...
(This used to be commit a1280252ce
)
2008-02-21 17:54:24 +01:00
Jelmer Vernooij
9e3e0f9d39
More share_init to more apprioriate place.
...
(This used to be commit b84f19f678
)
2008-02-21 16:21:32 +01:00
Jelmer Vernooij
ff0315ba85
Rename include to mkinclude to emphasize it is different from make's include.
...
(This used to be commit 0e1d0a874a
)
2008-02-18 20:04:18 +01:00
Jelmer Vernooij
80cbff3d01
Fix build with partial linking.
...
(This used to be commit bfad9610c4
)
2008-02-18 16:02:33 +01:00
Andrew Tridgell
5fb241e5d3
3 places where the VFS backend doesn't handle NULL strings.
...
(This used to be commit cf109460af
)
2008-02-18 14:54:14 +11:00
Jelmer Vernooij
e33177001c
Remove type before variables in data.mk
...
(This used to be commit 3c1a7c0dcc
)
2008-02-14 12:03:34 +01:00
Andrew Tridgell
b640f475be
updated SMB2 code for getinfo according to WSPP docs
...
- Updated getinfo structures and field names
- also updated the protocol revision number handling to reflect
new docs
(This used to be commit 3aaa2e86d9
)
2008-02-14 17:11:36 +11:00
Andrew Tridgell
4a04a5e620
A better way to handle the different format of RenameInformation in SMB2
...
We now define a separate info level RAW_SFILEINFO_RENAME_INFORMATION_SMB2
and set that level when handling SMB2 packets. This makes the parsers clearer.
(This used to be commit f6cdf3f117
)
2008-02-14 14:54:21 +11:00
Andrew Tridgell
839ab724dc
Fixed SMB2 rename operations from Vista clients
...
We needed a flag in bufinfo to mark packets as SMB2, as it seems that
SMB2 uses a different format for the RenameInformation buffer than SMB
does
Also handle the fact that SMB2 clients give the full path to the
target file in the rename, not a relative path
(This used to be commit 52d7972d95
)
2008-02-14 12:30:31 +11:00
Andrew Tridgell
e870cfec9f
Convert SMB and SMB2 code to use a common buffer handling structure
...
This converts our SMB and SMB2 code to use a common structure "struct
request_bufinfo" for information on the buffer bounds of a packet,
alignment information and string handling. This allows us to use a
common backend for SMB and SMB2 code, while still using all the same
string and blob handling functions.
Up to now we had been passing a NULL req handle into these common
routines from the SMB2 side of the server, which meant that we failed
any operation which did a bounds checked string extraction (such as a
RenameInformation setinfo call, which is what Vista uses for renaming
files)
There is still some more work to be done on this - for example we can
now remove many of the SMB2 specific buffer handling functions that we
had, and use the SMB ones.
(This used to be commit ca6d9be6cb
)
2008-02-14 10:12:33 +11:00
Andrew Tridgell
88d2e05227
updated SMB2 create operation to match WSPP.
...
Adding some defined for various new create options
(This used to be commit d037dc23ce
)
2008-02-13 15:05:44 +11:00
Andrew Tridgell
e94d710b0b
updated SMB2 tcon as per WSPP docs
...
(This used to be commit 5913e3e549
)
2008-02-13 10:13:28 +11:00
Andrew Tridgell
cd2b003aba
fixed crash when 0 dialects (thanks metze!)
...
(This used to be commit 252bcf207b
)
2008-02-12 20:29:31 +11:00
Andrew Tridgell
a2505c5a2c
updated SMB2 header defines to match WSPP docs
...
(This used to be commit d2c6ad55ec
)
2008-02-12 17:00:35 +11:00
Andrew Tridgell
416360895f
converted SMB2 session setup to use WSPP protocol field names
...
(This used to be commit 3c2af0fdc4
)
2008-02-12 16:43:38 +11:00
Andrew Tridgell
8fdb9504dc
converted the out side of SMB2 negprot handling
...
This follows the SMB2 PFIF docs. Current versions of Vista can now connect to Samba4 as a SMB2 server
and do basic operations
(This used to be commit 9dc284770d
)
2008-02-12 16:20:13 +11:00
Andrew Tridgell
ccc27e681c
fixed up the .in side of SMB2 negprot
...
fixed the input side of the SMB2 negprot structure and parsers according to the documentation
(This used to be commit 55af8acc7b
)
2008-02-12 12:54:44 +11:00
Andrew Bartlett
0f8eeb81ec
Remove useless layer of indirection, where every service called
...
task_service_init() manually. Now this is called from service.c for
all services.
Andrew Bartlett
(This used to be commit 9c9a4731ca
)
2008-02-04 21:58:29 +11:00
Andrew Bartlett
23d681caf9
Rework service init functions to pass down service name. This is
...
needed to change prefork behaviour based on what service is being
started.
Andrew Bartlett and David Disseldorp
(This used to be commit 0d830580e3
)
2008-02-04 17:48:51 +11:00
Amin Azez
a72a4efa69
Fix sending of large nttrans responses.
...
req_grow_data was growing the original req, not this_req which
was being used for the current fragment.
(This used to be commit 2ac47f5ab6
)
2008-02-01 06:36:32 +01:00
Jelmer Vernooij
df408d056e
r26672: Janitorial: Remove uses of global_loadparm.
...
(This used to be commit 18cd08623e
)
2008-01-05 13:06:03 -06:00
Jelmer Vernooij
7d5f0e0893
r26639: librpc: Pass iconv convenience on from RPC connection to NDR library, so it can be overridden by OpenChange.
...
(This used to be commit 2f29f80e07
)
2008-01-01 16:12:15 -06:00
Jelmer Vernooij
86dc05e99f
r26638: libndr: Require explicitly specifying iconv_convenience for ndr_struct_push_blob().
...
(This used to be commit 61ad78ac98
)
2008-01-01 16:12:11 -06:00
Jelmer Vernooij
c260454229
r26504: Don't rely on system-provided kerberos headers.
...
(This used to be commit c4b1df0476
)
2007-12-21 05:51:07 +01:00
Jelmer Vernooij
e31abef15f
r26440: Remove more uses of global_loadparm.
...
(This used to be commit 8858cf3972
)
2007-12-21 05:50:08 +01:00
Jelmer Vernooij
a2cea02584
r26430: require explicit specification of loadparm context.
...
(This used to be commit 1b947fe0e6
)
2007-12-21 05:49:58 +01:00
Jelmer Vernooij
d891c0c74a
r26429: Avoid use of global_smb_iconv_convenience.
...
(This used to be commit d37136b7ab
)
2007-12-21 05:49:56 +01:00
Jelmer Vernooij
70f1f33af8
r26402: Require a talloc context in libnetif.
...
(This used to be commit a35e51871b
)
2007-12-21 05:49:33 +01:00
Jelmer Vernooij
6f2252dace
r26401: Don't cache interfaces context in libnetif.
...
(This used to be commit 9f975417cc
)
2007-12-21 05:49:32 +01:00
Jelmer Vernooij
f055893ca5
r26382: Remove more uses of global_loadparm.
...
(This used to be commit 6d4c598534
)
2007-12-21 05:49:17 +01:00
Jelmer Vernooij
b65dba2245
r26355: Eliminate global_loadparm in more places.
...
(This used to be commit 5d589a0d94
)
2007-12-21 05:49:01 +01:00
Jelmer Vernooij
a72c5053c5
r26353: Remove use of global_loadparm.
...
(This used to be commit 17637e4490
)
2007-12-21 05:48:57 +01:00
Jelmer Vernooij
5c6eacdb04
r26350: More tests.
...
(This used to be commit 87799f55d5
)
2007-12-21 05:48:55 +01:00
Jelmer Vernooij
5f9aeca0d6
r26347: More tests.
...
(This used to be commit 5d927b5ca7
)
2007-12-21 05:48:53 +01:00
Jelmer Vernooij
c5bf20c5fe
r26325: Remove use of global_loadparm in netif.
...
(This used to be commit e452cb2859
)
2007-12-21 05:48:37 +01:00
Jelmer Vernooij
39ee38d9c1
r26316: Use contexts for conversion functions.
...
(This used to be commit f6420d933b
)
2007-12-21 05:48:30 +01:00
Jelmer Vernooij
2f5ca872a8
r26313: Fix more uses of static loadparm.
...
(This used to be commit 6fd0d9d3b7
)
2007-12-21 05:48:25 +01:00
Jelmer Vernooij
b83a7a135f
r26268: Avoid more use of global_loadparm - put lp_ctx in smb_server and wbsrv_connection.
...
(This used to be commit 7c00866423
)
2007-12-21 05:47:47 +01:00
Jelmer Vernooij
1fbdd6ef1d
r26264: pass name resolve order explicitly, use torture context for settings in dssync tests.
...
(This used to be commit c7eae1c784
)
2007-12-21 05:47:39 +01:00
Jelmer Vernooij
ecea5ce245
r26260: Store loadparm context in gensec context.
...
(This used to be commit b9e3a4862e
)
2007-12-21 05:47:34 +01:00
Jelmer Vernooij
ab69eb8d89
r26250: Avoid global_loadparm in a couple more places.
...
(This used to be commit 2c6b755309
)
2007-12-21 05:47:28 +01:00
Jelmer Vernooij
bbdfbf8d9d
r26238: Add a loadparm context parameter to torture_context, remove more uses of global_loadparm.
...
(This used to be commit a33a553054
)
2007-12-21 05:47:20 +01:00
Jelmer Vernooij
291ddf4336
r26237: Add loadparm context to the server service interface.
...
(This used to be commit 1386c5c925
)
2007-12-21 05:47:15 +01:00
Jelmer Vernooij
6c999cd123
r26236: Remove more uses of global_loadparm or specify loadparm_context explicitly.
...
(This used to be commit 5b29ef7c03
)
2007-12-21 05:47:15 +01:00
Jelmer Vernooij
f4a1083cf9
r26227: Make loadparm_context part of a server task, move loadparm_contexts further up the call stack.
...
(This used to be commit 0721a07aad
)
2007-12-21 05:47:04 +01:00
Jelmer Vernooij
181aab56d5
r26221: Add loadparm_context parameter to auth_context_create.
...
(This used to be commit a9a9634df8
)
2007-12-21 05:46:58 +01:00
Stefan Metzmacher
529763a9aa
r25920: ndr: change NTSTAUS into enum ndr_err_code (samba4 callers)
...
lib/messaging/
lib/registry/
lib/ldb-samba/
librpc/rpc/
auth/auth_winbind.c
auth/gensec/
auth/kerberos/
dsdb/repl/
dsdb/samdb/
dsdb/schema/
torture/
cluster/ctdb/
kdc/
ntvfs/ipc/
torture/rap/
ntvfs/
utils/getntacl.c
ntptr/
smb_server/
libcli/wrepl/
wrepl_server/
libcli/cldap/
libcli/dgram/
libcli/ldap/
libcli/raw/
libcli/nbt/
libnet/
winbind/
rpc_server/
metze
(This used to be commit 6223c7fddc
)
2007-12-21 05:45:02 +01:00
Jelmer Vernooij
0c56f8dac3
r25551: Convert to standard bool type.
...
(This used to be commit c9651e2c5c
)
2007-10-10 15:07:54 -05:00
Jelmer Vernooij
2f3551ca7c
r25446: Merge some changes I made on the way home from SFO:
...
2007-09-29 More higher-level passing around of lp_ctx.
2007-09-29 Fix warning.
2007-09-29 Pass loadparm contexts on a higher level.
2007-09-29 Avoid using global loadparm context.
(This used to be commit 3468952e77
)
2007-10-10 15:07:34 -05:00
Jelmer Vernooij
37d53832a4
r25398: Parse loadparm context to all lp_*() functions.
...
(This used to be commit 3fcc960839
)
2007-10-10 15:07:25 -05:00
Jelmer Vernooij
98b57d5eb6
r25035: Fix some more warnings, use service pointer rather than service number in more places.
...
(This used to be commit df9cebcb97
)
2007-10-10 15:05:43 -05:00
Jelmer Vernooij
ffeee68e4b
r25026: Move param/param.h out of includes.h
...
(This used to be commit abe8349f9b
)
2007-10-10 15:05:38 -05:00