1
0
mirror of https://github.com/samba-team/samba.git synced 2025-01-07 17:18:11 +03:00
Commit Graph

312 Commits

Author SHA1 Message Date
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
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
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
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
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
5bf95a71dd s4:smb_server: s/private/private_data
metze
2009-02-02 13:08:36 +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
Jelmer Vernooij
9565999755 Fix include paths to new location of libutil. 2008-10-11 21:31:42 +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
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
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
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
405e64c437 more updates for new info levels
(This used to be commit 85d1873ee9)
2008-06-02 11:05:06 +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
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
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
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
21fc767378 Specify event_context to ldb_wrap_connect explicitly.
(This used to be commit b4e1ae07a2)
2008-04-17 12:23:44 +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
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
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
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
10169a2030 Remove more global_loadparm instance.s
(This used to be commit a1280252ce)
2008-02-21 17:54:24 +01:00
Jelmer Vernooij
80cbff3d01 Fix build with partial linking.
(This used to be commit bfad9610c4)
2008-02-18 16:02:33 +01: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
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
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
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
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
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
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
39ee38d9c1 r26316: Use contexts for conversion functions.
(This used to be commit f6420d933b)
2007-12-21 05:48:30 +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
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
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
ffeee68e4b r25026: Move param/param.h out of includes.h
(This used to be commit abe8349f9b)
2007-10-10 15:05:38 -05:00
Stefan Metzmacher
113587b823 r24494: add comment to remind me to look at the flags on a tconx
metze
(This used to be commit deefefeadf)
2007-10-10 15:02:02 -05:00
Andrew Tridgell
0479a2f1cb r23792: convert Samba4 to GPLv3
There are still a few tidyups of old FSF addresses to come (in both s3
and s4). More commits soon.
(This used to be commit fcf38a38ac)
2007-10-10 14:59:12 -05:00
Andrew Bartlett
222c6dd781 r23680: Make it easier to setup a domain member server - the 'server role'
will now control the auth methods, but an override is still available,
ex:

auth methods:domain controller = <methods>

Andrew Bartlett
(This used to be commit b7e727186e)
2007-10-10 14:59:00 -05:00
Stefan Metzmacher
42c1ef4025 r23067: use 'const union smb_search_data *file' also in the server code to get rid
of compiler warnings in the cifs backend

metze
(This used to be commit 34ef07b1f5)
2007-10-10 14:52:47 -05:00
Andrew Tridgell
d3e28ccd48 r23020: a better fix for the memory leak - this one doesn't stuff up spnego :)
(This used to be commit 9a8da730a7)
2007-10-10 14:52:40 -05:00
Andrew Tridgell
b691b4ad3d r23019: revert r23018 - this will require more thought.
(This used to be commit df60df9678)
2007-10-10 14:52:40 -05:00
Andrew Tridgell
a8716afce8 r23018: fixed a memory leak in our server side session setup code for failed
session setups
(This used to be commit a4e043e1f8)
2007-10-10 14:52:39 -05:00
Stefan Metzmacher
6bf99b9e85 r22774: correctly initialize the smbsrv_connection when switching to SMB2
metze
(This used to be commit 0fa4eb7323)
2007-10-10 14:52:17 -05:00
Stefan Metzmacher
c13a4084f2 r22381: fix memory leak
metze
(This used to be commit 4bfe900d1b)
2007-10-10 14:51:11 -05:00
Andrew Tridgell
21650cf377 r21206: - a couple more nttrans places were a memcpy() should be used
- changed the setup array in nttrans to be a uint8 array, instead of a
  uint16 array. This makes it clearer that it is the job of the caller
  to do any byte swapping within that data
(This used to be commit fa3c9b29ae)
2007-10-10 14:44:45 -05:00
Volker Lendecke
2342219d69 r21183: Commit the big/little endian fix for nttrans setup[] handling.
Please check!

For code symmetry reasons, trans2 might also see this fix, but this is left to
the interested reader :-)

Volker
(This used to be commit f2d364ebe6)
2007-10-10 14:44:43 -05:00
Stefan Metzmacher
9320521cb5 r20657: fix compiler warning and bug:-)
metze
(This used to be commit ddf6c90159)
2007-10-10 14:37:27 -05:00
Andrew Tridgell
1cd4339b9a r20646: first preparations for cluster enablement. This changes "
uint32_t server_id
to
  struct server_id server_id;

which allows a server ID to have an node number. The node number will
be zero in non-clustered case. This is the most basic hook needed for
clustering, and ctdb.
(This used to be commit 2365abaa99)
2007-10-10 14:37:23 -05:00
Andrew Bartlett
13dbee3ffe r19598: Ahead of a merge to current lorikeet-heimdal:
Break up auth/auth.h not to include the world.

Add credentials_krb5.h with the kerberos dependent prototypes.

Andrew Bartlett
(This used to be commit 2b569c42e0)
2007-10-10 14:25:00 -05:00
Andrew Tridgell
6fbbef77e6 r19505: fixed a valgrind error
(This used to be commit 8b9359aa7d)
2007-10-10 14:24:40 -05:00
Andrew Tridgell
9cd2b012f3 r19504: - fixed a free error in file_lines_parse
- added a function to test for large file support

- enable CAP_LARGE_FILES only if the test passes

- don't test at large offsets if the server doesn't set
  CAP_LARGE_FILES
(This used to be commit c5423ea22b)
2007-10-10 14:24:40 -05:00
Andrew Tridgell
5d31bce8b6 r18972: we don't need this now all builds in the build farm are limited to 150
file descriptors. We'll pretty quickly find leaks :)
(This used to be commit be70992d71)
2007-10-10 14:20:25 -05:00
Andrew Tridgell
d01bbe6842 r18583: a nasty hack to allow me to monitor the number of open file
descriptors in smbd on all build farm machines. I suspect we have a fd
leak somewhere, but its hard to track down.

I know part of the problem is the number of (fake) network interfaces
we define in the build farm tests, with each of them listening on a
whole bunch of different protocol ports. That chews up around 48 file
descriptors just to startup. I don't think thats the real problem
though, and I suspect something else is leaking file descriptors on
some hosts.
(This used to be commit 83bf458ec9)
2007-10-10 14:18:51 -05:00
Andrew Tridgell
30ee8beb93 r18301: I discovered how to load the warnings from a build farm build into
emacs compile mode (hint, paste to a file, and compile as "cat
filename").

This allowed me to fix nearly all the warnings for a IA_64 SuSE build
very quickly.
(This used to be commit eba6c84eff)
2007-10-10 14:18:04 -05:00
Jelmer Vernooij
0329d755a7 r17930: Merge noinclude branch:
* Move dlinklist.h, smb.h to subsystem-specific directories
 * Clean up ads.h and move what is left of it to dsdb/
   (only place where it's used)
(This used to be commit f7afa1cb77)
2007-10-10 14:16:54 -05:00
Stefan Metzmacher
2c4eece604 r17361: check that file handles are only accessable
by the correct session in the SMB frontend server

metze
(This used to be commit 8a5bc18c5a)
2007-10-10 14:15:19 -05:00
Stefan Metzmacher
7a845bcb01 r17341: pass a messaging context to auth_context_create()
and gensec_server_start().

calling them with NULL for event context or messaging context
is no longer allowed!

metze
(This used to be commit 679ac74e71)
2007-10-10 14:15:17 -05:00
Stefan Metzmacher
1575743c36 r17283: use the async calls of auth_check_password() and gensec_update()
in the smb server.

metze
(This used to be commit 216e02c69c)
2007-10-10 14:15:06 -05:00
Stefan Metzmacher
9a067547ec r17280: NT_STATUS_INVALID_HANDLE maps to ERRbadfid, which is wrong in this
places, so only overwrite ERRbaduid and ERRinvnid when NTSTATUS support
is given.

metze
(This used to be commit c70edc3fb8)
2007-10-10 14:15:05 -05:00
Stefan Metzmacher
61d620012d r17274: fix typos
metze
(This used to be commit 699dee70aa)
2007-10-10 14:10:26 -05:00
Simo Sorce
9c66f601f1 r17206: Add a modular API for share configuration.
Commit the classic backwards compatible module which is the default one
(This used to be commit a89cc346b9)
2007-10-10 14:10:18 -05:00
Stefan Metzmacher
39b7ae11ac r17012: don't try to send any data when the socket is gone already...
(fixes crash bugs)

metze
(This used to be commit b7418aec33)
2007-10-10 14:10:08 -05:00
Stefan Metzmacher
a8958391e8 r16980: - make struct smb_notify a union and add levels RAW_NOTIFY_NTTRANS,RAW_NOTIFY_SMB2
- parse SMB2 Notify reponse

metze
(This used to be commit de50e0ccdd)
2007-10-10 14:10:06 -05:00
Stefan Metzmacher
e6b29409a2 r16979: - ntcancel should compare TID,UID,MID and PID
- don't return ntcancel error, as we don't know how signing works
  for them

metze
(This used to be commit 20311e58d5)
2007-10-10 14:10:06 -05:00
Stefan Metzmacher
3b36a85798 r16950: remove the smb mid from the ntvfs layer and keep a list of pending
requests on the smbsrv_connection, to be able to match then on
ntcancel

metze
(This used to be commit 04f0d3d031)
2007-10-10 14:10:02 -05:00
Stefan Metzmacher
54fba07f01 r16923: remove unused substitude code
metze
(This used to be commit ea88c8c99e)
2007-10-10 14:10:01 -05:00
Stefan Metzmacher
af0a9eb529 r16834: split the level's of smb_search_first/smb_search_next and the levels
of smb_search_data

metze
(This used to be commit 78c201db8a)
2007-10-10 14:09:49 -05:00
Stefan Metzmacher
fbf566b777 r16815: split out search levels which are also used by smb2
metze
(This used to be commit 3b8ecc19fa)
2007-10-10 14:09:47 -05:00
Stefan Metzmacher
2400ebc428 r16735: vista beta2 reuses the tcp connect where it does the
SMB negprot

metze
(This used to be commit 3b2936a431)
2007-10-10 14:09:42 -05:00
Stefan Metzmacher
f8d8454461 r16621: split out passthru levels of setfileinfo
metze
(This used to be commit 6cd64cb78f)
2007-10-10 14:09:36 -05:00
Stefan Metzmacher
7bf085571e r16464: split client and server min/max protocol settings
metze
(This used to be commit 6164d1e22e)
2007-10-10 14:09:29 -05:00
Stefan Metzmacher
23803094e5 r16449: move some code to a generic place
metze
(This used to be commit 77a711c54a)
2007-10-10 14:09:15 -05:00
Stefan Metzmacher
47a78861bc r16448: add more error checks
metze
(This used to be commit d6d86c65bf)
2007-10-10 14:09:15 -05:00
Stefan Metzmacher
0f29d9fb3f r16444: - split out qfsinfo passthru levels
- use 1 to 1 mapping of interface and wire levels

metze
(This used to be commit e7d339d496)
2007-10-10 14:09:14 -05:00
Stefan Metzmacher
2d88ade182 r16443: add push code for SMB2 levels
metze
(This used to be commit 142680ab9b)
2007-10-10 14:09:14 -05:00
Stefan Metzmacher
1ff99ba12d r16440: split out passthru level into a new functions,
so they can we reused for smb2 later

metze
(This used to be commit 42324c1f63)
2007-10-10 14:09:14 -05:00
Stefan Metzmacher
818c52a6b4 r16403: remove dependency to smbsrv_request next part...
metze
(This used to be commit 708a5d3bf0)
2007-10-10 14:09:13 -05:00
Stefan Metzmacher
45c99a270e r16402: start to remove the dependecy to smbsrv_request from the parsing functions
metze
(This used to be commit e4a5e2db7f)
2007-10-10 14:09:12 -05:00
Stefan Metzmacher
7c01df4e77 r16401: keep the old pointer when realloc fails, this is needed for the
search callback

metze
(This used to be commit c868b8b7d7)
2007-10-10 14:09:12 -05:00
Stefan Metzmacher
898f6f768f r16400: add more error checks
metze
(This used to be commit 779c51ad52)
2007-10-10 14:09:12 -05:00
Stefan Metzmacher
59670b2f97 r16399: - split out pushing smb_fsinfo into a DATA_BLOB
- add error checks

metze
(This used to be commit 2aaca1631f)
2007-10-10 14:09:12 -05:00
Stefan Metzmacher
f03e039e88 r16357: - start get rid of void parsing functions
- there will more changes come but I want to do them in
  relative small chunks

metze
(This used to be commit d021a8b3ee)
2007-10-10 14:09:12 -05:00
Andrew Tridgell
03e7d37461 r15827: fixed a spelling error
(This used to be commit 801357af2e)
2007-10-10 14:08:29 -05:00
Stefan Metzmacher
e0dcbe8dd1 r15769: this functions belong to params/ so move it.
metze
(This used to be commit 9c4c40772b)
2007-10-10 14:08:16 -05:00
Stefan Metzmacher
3cb64219e2 r15751: thanks to talloc_get_type() I noticed that I used smbsrv_request in the smb2srv code
metze
(This used to be commit 6c304a1a5f)
2007-10-10 14:08:13 -05:00
Stefan Metzmacher
7930ae6a70 r15747: move some functions to the protocol independend part of the
smb server

metze
(This used to be commit 79af05551f)
2007-10-10 14:08:12 -05:00
Stefan Metzmacher
e306c5bf12 r15741: move smb2 request structures into the main smb request structs
as new levels

metze
(This used to be commit 9180635317)
2007-10-10 14:08:11 -05:00
Stefan Metzmacher
add9d49dbb r15739: return False when the function is called with an invalid level
metze
(This used to be commit fc20e4154a)
2007-10-10 14:08:10 -05:00
Stefan Metzmacher
9ef33f5f5c r15734: This is a major change to the NTVFS subsystem:
- to use a struct ntvfs_handle instead of a uint16_t fnum.
  (to make it independend from the frontend protocol)
- the allocation of handles now is provided by the frontend
  (smbsrv_*) via callbacks and not by each backend module
- this also makes sure that file handles are only passed
  to the ntvfs subsystem when the tcon and session matches,
  so modules can rely on this and need to check this.
- this allows multiple modules in the ntvfs module chain
  to allocate file handles. This can be used for virtual
  files like "\\$Extend\\$Quota:$Q:$INDEX_ALLOCATION"...
- also this will make SMB2 with 128 bit file handles possible

metze
(This used to be commit 287fc1c22d)
2007-10-10 14:08:10 -05:00
Stefan Metzmacher
7f0e17e903 r15718: - split the SMBflush with the 0xFFFF wildcard fnum into a different level
metze
(This used to be commit 95bf41b4d4)
2007-10-10 14:08:09 -05:00
Stefan Metzmacher
82fd602cf0 r15714: fix async handling of ntioctl calls and push the DATA_BLOB into the reply
metze
(This used to be commit 0ac9a49f42)
2007-10-10 14:08:08 -05:00
Stefan Metzmacher
5445415b82 r15711: - make use of nttrans_setup_reply()
metze
(This used to be commit a870c084f6)
2007-10-10 14:08:08 -05:00
Stefan Metzmacher
2adbcc3965 r15710: - we no longer need to set the nttrans out fields to zero
in the backends
- some whitespace cleanups

metze
(This used to be commit 6a0c24c73e)
2007-10-10 14:08:07 -05:00
Stefan Metzmacher
0fc977c54d r15709: - return an error is better than ignoring a non supported request
- zero nttrans output fields before calling the backends

metze
(This used to be commit b21d98a875)
2007-10-10 14:08:07 -05:00
Stefan Metzmacher
a3cc3c9c1f r15708: setup count is 8bit and param_count and data_count are 32bit
metze
(This used to be commit 6bc89b422c)
2007-10-10 14:08:07 -05:00
Stefan Metzmacher
5ff4b74df3 r15656: for NT IOCTL's we need to control the max_data field for some calls
metze
(This used to be commit 3cab02f6f5)
2007-10-10 14:08:04 -05:00
Stefan Metzmacher
410fb90322 r15640: - NT IOCTL calls also have an 'in' data_blob
- fix the receive code of NT IOCTL's we only need the NTTRANS data payload
  not the SMB payload here

metze
(This used to be commit 358d03143f)
2007-10-10 14:07:25 -05:00
Jelmer Vernooij
0199eac20d r15314: Fix recursive dependency hack for static libs. Should fix the build
on most systems.
(This used to be commit c0ab0f4ed4)
2007-10-10 14:05:09 -05:00
Jelmer Vernooij
9220144604 r15313: Fix some dependencies in dso mode
(This used to be commit f0afe9e2ff)
2007-10-10 14:05:09 -05:00
Jelmer Vernooij
bc141c7957 r15304: Fix smbd build, more updates on getting --enable-dso to build again
(This used to be commit 3ef9326386)
2007-10-10 14:05:08 -05:00
Jelmer Vernooij
b00c236906 r15301: Use static libraries internally. This required a few hacks in the build
system - these should be removed later on.
(This used to be commit 0654739166)
2007-10-10 14:05:07 -05:00