summaryrefslogtreecommitdiff
path: root/source4/smb_server
AgeCommit message (Collapse)AuthorFilesLines
2009-05-26s4:smb2srv: We only support SMB 2.002.Stefan Metzmacher2-6/+12
We need to loop over all given dialects and check if we can find SMB2_DIALECT_REVISION_202. metze
2009-05-20Have ntvfs_connect() accept union smb_tcon *tcon instead of char* sharenameSam Liddicott3-30/+11
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-20s4:smb_server: initialy read the first 4 bytes onlySam Liddicott1-0/+1
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-11s4:smb_server: return after we have processed an invalid smb2 requestStefan Metzmacher1-0/+2
metze
2009-04-23Add async support for reply_tcon* and ntvfs_connectSam Liddicott2-70/+105
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-03-01s4: Use same function signature for convert_* as s3.Jelmer Vernooij1-6/+6
2009-03-01Add allow_badcharcnv argument to all conversion function, forJelmer Vernooij1-2/+2
consistency with Samba 3.
2009-02-13Remove auth/ntlm as a dependency of GENSEC by means of function pointers.Andrew Bartlett6-48/+49
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-02s4:service_stream: s/private/private_dataStefan Metzmacher1-3/+3
metze
2009-02-02s4:smb_server: s/private/private_dataStefan Metzmacher6-14/+14
metze
2009-02-01s4:irpc: avoid c++ reserved word 'private'Stefan Metzmacher1-2/+4
metze
2009-01-30Fix the mess with ldb includes.Simo Sorce1-1/+0
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.
2008-12-29s4:lib/tevent: rename structsStefan Metzmacher3-4/+4
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-22Fix two remaining missing symbols in smbtorture4.Jelmer Vernooij1-0/+1
2008-12-22Fix missing symbols issues when building with shared libraries.Jelmer Vernooij1-1/+1
2008-12-22s4: Fix subsystem for various services in samba daemon.Jelmer Vernooij1-1/+1
2008-12-17s4: fix LIBEVENTS dependencies and use more forward declarationsStefan Metzmacher1-1/+2
We should only include events.h where we really need it and prefer forward declarations of 'struct event_context' metze
2008-12-05Let ntvfs request transport close via ntvfs_request stateSam Liddicott2-0/+22
[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-11-02Fix the build.Jelmer Vernooij1-1/+1
2008-11-02Add gensec_settings structure. This wraps loadparm_context for now, butJelmer Vernooij4-4/+4
should in the future only contain some settings required for gensec.
2008-10-24Remove unused include param/param.h.Jelmer Vernooij4-4/+0
2008-10-24Remove iconv_convenience argument from convert_string{,talloc}() butJelmer Vernooij1-2/+2
make them wrappers around convert_string{,talloc}_convenience().
2008-10-24Remove iconv_convenience parameter from simple string push/pullJelmer Vernooij4-5/+5
functions.
2008-10-13Fixed a variable undeclared compilation errorTim Prouty1-0/+1
Explicitly declaring environ eliminates a compilation error on some systems.
2008-10-11Fix include paths to new location of libutil.Jelmer Vernooij6-6/+6
2008-10-05smbd3 is unhappy if stderr is not openVolker Lendecke1-1/+2
2008-10-05Re-enable build of smb_samba3.c after the rename smbd->sambaVolker Lendecke1-1/+1
2008-09-30s4:smb_server/smb: FLAGS2_SMB_SECURITY_SIGNATURES should only be echoed, not ↵Stefan Metzmacher1-5/+6
set always metze
2008-09-29NetApp found that we never set the smb signing flags2.Andrew Bartlett1-0/+4
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-24we need different error handling for truncated packets in NETPROT andAndrew Tridgell1-2/+39
other SMB2 operations.
2008-09-24we should terminate the connection on a bad negprot packet sizeAndrew Tridgell1-2/+2
2008-09-24- add reserved field in basic_information levelAndrew Tridgell1-3/+25
- use INVALID_PARAMETER for info length mismatch to match windows behaviour - added parsing of LINK_INFORMATION level
2008-09-24record highest seq number in SMB2 to check for seqnum going backwardsAndrew Tridgell1-0/+2
2008-09-24cope with body_size zero in SMB2 receiveAndrew Tridgell1-1/+2
2008-09-24check for a 0 byte in the buffer in SMB2 readAndrew Tridgell1-0/+6
2008-09-24the offset is 16 bits in SMB2 fileinfoAndrew Tridgell1-1/+1
2008-09-24fixed error code for bad keepaliveAndrew Tridgell1-1/+1
2008-09-24stricter checking of SMB2 echo body (per the spec)Andrew Tridgell1-1/+6
thanks to the bluearc test suite
2008-09-24Rename smbd -> samba.Jelmer Vernooij1-1/+1
This reverts commit 05ea5e23cf4e70de0bd658b1c5c0ead133967091. Conflicts: source4/smbd/server.c
2008-09-23s4:smb_server: remove the bogus smbsrv_signing_restart()Stefan Metzmacher2-41/+2
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-22Explain why we use signing for DCs, but not file serversAndrew Bartlett1-0/+9
2008-09-22process incoming connections and fork a samba3 in inetd modeStefan Metzmacher2-0/+182
2008-09-21Revert "Rename smbd -> samba."Jelmer Vernooij1-1/+1
This reverts commit 0e9008be35a5b334bd65e6417193d4b8f27bdc36.
2008-09-21Rename smbd -> samba.Jelmer Vernooij1-1/+1
2008-09-05Move our DC to implement mandetory signing.Andrew Bartlett2-4/+10
(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 468bf839c500ed1a26ab9a358ee64a4c0a695797)
2008-09-05With a windows 2008 client, even anonymous requires signing...Andrew Bartlett1-6/+0
Andrew Bartlett (This used to be commit a89f9818180e8fb868975c444c4d0e5aaa8d4e79)
2008-08-14smb2srv: async replies with STATUS_PENDING are not signedStefan Metzmacher1-2/+29
..., but the they may have the sign flag set. metze (This used to be commit 43e43dead030f6bffd06631007fdb162c3c6b2b5)
2008-08-14smb2srv: sign replies when the request was also signedStefan Metzmacher2-7/+4
metze (This used to be commit dd2f4f7a491debcc30e590f571272afd99e52940)
2008-08-14smb2srv: use defines instead of hex valuesStefan Metzmacher1-3/+3
metze (This used to be commit 7c4abf6614c47471ae005a12abe27d85890d867f)
2008-07-28smb2srv: sign SMB2 Logoff repliesStefan Metzmacher1-3/+17
metze (This used to be commit 2844e361730a6bc640ea89d0e10059deca1ca867)