Andrew Tridgell [Fri, 22 Oct 2004 06:57:31 +0000 (06:57 +0000)]
r3134: use struct idr_context * in tid allocation
(This used to be commit
3ea9445226a678b410bf565ec114a3c544f8ade3)
Andrew Tridgell [Fri, 22 Oct 2004 06:55:18 +0000 (06:55 +0000)]
r3133: - more consistent error checking in rename and setfileinfo
- add paranoid checking of device/inode change during open to detect race conditions
(This used to be commit
043361fed487ed494fa497ffde1007b3f3bc0c29)
Andrew Tridgell [Fri, 22 Oct 2004 06:53:18 +0000 (06:53 +0000)]
r3132: - fixed a type conflict found by talloc_array_p()
- use struct idr_context * in ipc code
(This used to be commit
c33cdd0d550fcaf78573e73b50ffe530ea6d9b17)
Andrew Tridgell [Fri, 22 Oct 2004 06:49:27 +0000 (06:49 +0000)]
r3131: - make map_nt_error_from_unix() return NT_STATUS_UNSUCCESSFUL if errno is 0
- more consistent checking for system call return values in simple backend
(This used to be commit
375a9a1347abf0b917cf94ea0cabcdea37d60e98)
Andrew Tridgell [Fri, 22 Oct 2004 06:46:04 +0000 (06:46 +0000)]
r3130: - added a LOCAL-IDTREE test suite
- made idtree return a "struct idr_context *" instead of a void*
- more efficient idr_remove for ids that are not present (patch from Jim Houston)
(This used to be commit
f8d12d4b4ae5a38de7869deb782cb8f48504844c)
Volker Lendecke [Fri, 22 Oct 2004 04:48:24 +0000 (04:48 +0000)]
Andrew Bartlett [Fri, 22 Oct 2004 03:02:51 +0000 (03:02 +0000)]
r3128: Return the correct error code for a secrets/kerberos login, but
skipping 'bad encryption type'.
Andrew Bartlett
(This used to be commit
4efb87eb03acfa888d455e4ca0aff18bda7f7ba5)
Andrew Tridgell [Fri, 22 Oct 2004 01:19:07 +0000 (01:19 +0000)]
r3127: added the initial code for the open files database. Doesn't do
anything yet, but will soon be the core of the shares modes code.
(This used to be commit
ad1edabf95c6c331aac4f0caa7d31193e26bc176)
Andrew Tridgell [Fri, 22 Oct 2004 01:14:49 +0000 (01:14 +0000)]
r3126: in the brlock code I had used a void* for the brl context as I didn't
want to expose the brl context structure outside the brlock.c
code. Instead, I now use "struct brl_context *" and rely on C being
happy to pass around pointers to unknown structures as long as they
are not dereferenced. I will be interested to see how the build farm
likes this.
(This used to be commit
cb155c8ad837285c5a7f5b104968239df0b65fd2)
Jelmer Vernooij [Thu, 21 Oct 2004 21:57:30 +0000 (21:57 +0000)]
r3125: Store object UUID directly instead of using a pointer (struct dcerpc_binding)
Let test fail if messaging_init() fails instead of generating segfault in the LOCAL-MESSAGING test
(This used to be commit
0609f410ef756501d50c04b544387ae547fcd63c)
Jelmer Vernooij [Thu, 21 Oct 2004 21:02:51 +0000 (21:02 +0000)]
r3124: Add dcerpc_binding_from_tower()
Add tests for dcerpc_binding_from_tower()
(This used to be commit
88c6d34bba1a409127b26f86bd963bfab30a804c)
Jelmer Vernooij [Thu, 21 Oct 2004 19:54:38 +0000 (19:54 +0000)]
r3123: Add dcerpc_binding_build_tower()
Add local test for testing the functions dcerpc_parse_binding(),
dcerpc_binding_string() and dcerpc_binding_build_tower()
(This used to be commit
7a07c2c769b8e51178789eed4a31577f5d39f63a)
Jelmer Vernooij [Thu, 21 Oct 2004 17:40:55 +0000 (17:40 +0000)]
r3118: Eliminate struct dcesrv_ep_description and replace it with
struct dcerpc_binding.
(This used to be commit
2046e14cf8d010d4e715124859df2c1c3c782266)
Andrew Bartlett [Thu, 21 Oct 2004 15:24:50 +0000 (15:24 +0000)]
r3115: Bugfixes and extra debug in our kerberos verify code.
Andrew Bartlett
(This used to be commit
9f19aae0c0812b156054385ef77785971488e21c)
Jelmer Vernooij [Thu, 21 Oct 2004 12:47:02 +0000 (12:47 +0000)]
r3114: - More work on merging the various structs that describe endpoints
- Add protocol sequence to dcerpc transports (will be used later on)
- Add more transports to the list
(This used to be commit
ab110192e6e2c1e5a3b2befe7b61158744f15d18)
Stefan Metzmacher [Thu, 21 Oct 2004 12:36:54 +0000 (12:36 +0000)]
r3113: make us able to generate the PAC with the same align as a MS KDC
(we should fix pidl to handle NDR_ALIGN8 correct as a real fix for this problem)
metze
(This used to be commit
ab7a26a95052cfd8bac1d03b534b5b516b409f61)
Jelmer Vernooij [Thu, 21 Oct 2004 11:39:58 +0000 (11:39 +0000)]
r3112: Fix two more instances of epm_towers (sorry, metze!)
(This used to be commit
7baf493966aa3fb61623d6030b5ccc26a5fcb186)
Jelmer Vernooij [Thu, 21 Oct 2004 10:52:03 +0000 (10:52 +0000)]
r3111: Add a few more protocol identifiers, rhs for ncalrpc
(This used to be commit
53567a83cbca9df60bef76a15df24d2cd89a16b0)
Andrew Bartlett [Thu, 21 Oct 2004 08:52:01 +0000 (08:52 +0000)]
r3110: Fix the krb5 client and server, so that it doesn't segfault. There
were also gensec bugs that didn't turn up until we hit error paths in
the krb5 code.
Andrew Bartlett
(This used to be commit
e08366ffeb52e8c522d3808a2af1aa0bc632b55f)
Andrew Bartlett [Thu, 21 Oct 2004 07:10:59 +0000 (07:10 +0000)]
r3109: Give krbtgt and our machine account a random password in provision.
Andrew Bartlett
(This used to be commit
560a8c9f424495f85284a456e829326d2a931e6e)
Andrew Tridgell [Thu, 21 Oct 2004 06:37:15 +0000 (06:37 +0000)]
r3108: try to cope with servers that put FILE_ATTRIBUTE_NONINDEXED on files in the RAW-OPEN test
(This used to be commit
bed7d12f266b6aa6d4f694dd74a2c6134cd72663)
Andrew Tridgell [Thu, 21 Oct 2004 06:36:14 +0000 (06:36 +0000)]
r3107: slight tweak to the openx -> ntcreatex mapping routine. This mapping
can never be perfect, as openx can do things that ntcreatex can't, but
with this tweak we get close (the BASE-DENY1 test passes completely,
for example)
(This used to be commit
88112b9677b3c9ca97d349905c95516c6f29c8a7)
Andrew Tridgell [Thu, 21 Oct 2004 06:34:17 +0000 (06:34 +0000)]
r3106: don't call a tree disconnect in the cifs backend, as during a smbd
server shutdown we don't want a synchronous operation which may block
to be called, thus delaying the shutdown.
(This used to be commit
5882f7305fa850c39088e85eefd311c8ede15597)
Andrew Tridgell [Thu, 21 Oct 2004 03:49:17 +0000 (03:49 +0000)]
r3105: using __location__ instead of __LINE__ to give info on error locations is more useful
(This used to be commit
80dd22a1f1aea27312b3cd06addf50e7c288259e)
Andrew Bartlett [Thu, 21 Oct 2004 01:55:46 +0000 (01:55 +0000)]
r3104: My Win2k3 server, with current updates, still sends the LM key for level 6.
I'm not quite sure what's going on here, but adjust expected values
till I can find out how to reproduce this the other way...
Andrew Bartlett
(This used to be commit
3f0f6b38f2401e3654f73f46a22d5c10fbacaeca)
Andrew Tridgell [Thu, 21 Oct 2004 01:44:46 +0000 (01:44 +0000)]
r3103: use a destructor to ensure that on abnormnal rpc request termination
it is removed from the pending list.
(This used to be commit
33176e9751374de3b5dc3f5f9b19c6824140d90a)
Stefan Metzmacher [Thu, 21 Oct 2004 00:49:39 +0000 (00:49 +0000)]
r3102: typo
metze
(This used to be commit
3bbda7475a63f939019a41a0b7da8d179c533d79)
Stefan Metzmacher [Thu, 21 Oct 2004 00:47:05 +0000 (00:47 +0000)]
r3101: some minor fixes
metze
(This used to be commit
61de2229e27c55041cb4e1aac32bc1d8ed68a05c)
Stefan Metzmacher [Thu, 21 Oct 2004 00:26:43 +0000 (00:26 +0000)]
r3100: support 'bin/smbclient //w2k3-101/c$ -U \\administrator@w2k3.vmnet1.vm.base'
we need to send an empty string as userdomain in this case.
fix bug #1317 in the client side
metze
(This used to be commit
958aa8de630b2a88f29ccdf80ac0fc44a8205401)
Stefan Metzmacher [Wed, 20 Oct 2004 23:27:09 +0000 (23:27 +0000)]
r3099: implment sldb_ModifyDN()
metze
(This used to be commit
a25d1c44198fe9dd2c0a1c3472b58000f2d95e60)
Stefan Metzmacher [Wed, 20 Oct 2004 23:25:39 +0000 (23:25 +0000)]
r3098: - fix segfault in sldb_Compare()
- be more verbose on the INVALID_DN errstr
metze
(This used to be commit
4b8d90866efb0ed7fcc8e44e29c3d84f7537621c)
Stefan Metzmacher [Wed, 20 Oct 2004 23:12:30 +0000 (23:12 +0000)]
r3097: - an empty string is a valid DN
- detect in valid DN's
- some error handling fixes
metze
(This used to be commit
d92eff232864aaf1e0e3c6bb26079cd5abb29d79)
Stefan Metzmacher [Wed, 20 Oct 2004 22:44:08 +0000 (22:44 +0000)]
r3096: typo
metze
(This used to be commit
c730d7d638875c239f0b67c1d4b25eb1fb01c5ff)
Stefan Metzmacher [Wed, 20 Oct 2004 20:48:31 +0000 (20:48 +0000)]
r3095: - fix a free'ing of msg.dn
- reenable index tests
metze
(This used to be commit
1e7e94fdb10db831090f9bd37e39053dfcde04ce)
Stefan Metzmacher [Wed, 20 Oct 2004 20:34:32 +0000 (20:34 +0000)]
r3094: import all LDAP error codes from the RFC 2251
metze
(This used to be commit
f1d8f4bc5df5b4f284739096684c9dbc76352511)
Stefan Metzmacher [Wed, 20 Oct 2004 19:28:02 +0000 (19:28 +0000)]
r3093: - implment ldb_rename() and ldbrename
- add tests for ldbrename
- disable all tests which regenerate the index
(this is broken for me...the process hangs,
tridge we need to discuss that)
- link only the needed stuff to the ldb tools
- build ldbtest inside samba
metze
(This used to be commit
18552f4786c24e0019cc87726ef4c05365fe586e)
Stefan Metzmacher [Wed, 20 Oct 2004 19:21:10 +0000 (19:21 +0000)]
r3092: prepare for build inside samba
metze
(This used to be commit
f7564bf4d2efb702cf3d11237fbe2adf5efb1ebf)
Stefan Metzmacher [Wed, 20 Oct 2004 19:19:03 +0000 (19:19 +0000)]
r3091: link only the needed stuff
metze
(This used to be commit
71ccac56c21635e7f6eb8d558230f637f50149ad)
Stefan Metzmacher [Wed, 20 Oct 2004 17:42:17 +0000 (17:42 +0000)]
r3089: fix memleak
metze
(This used to be commit
52eab8dc17a1cd1a8c0382ab8d6e7f6c7ddeea19)
Andrew Tridgell [Wed, 20 Oct 2004 12:24:31 +0000 (12:24 +0000)]
r3087: fixed a typo
(This used to be commit
3791b97694f052b0b7e170e07c21f7a5739d74dd)
Andrew Tridgell [Wed, 20 Oct 2004 12:08:40 +0000 (12:08 +0000)]
r3086: fixed smbpid handling in the cifs backend
(This used to be commit
fbc6949e95df6ea70ca9892099efb537ded97287)
Andrew Tridgell [Wed, 20 Oct 2004 11:13:54 +0000 (11:13 +0000)]
r3085: make the RAW-WRITE tests more robust to errors in previous parts of the test
(This used to be commit
6ea815b6d426d37723a200226cb5f7236a13017f)
Andrew Tridgell [Wed, 20 Oct 2004 11:11:55 +0000 (11:11 +0000)]
r3084: mincnt and maxcnt were the wrong way around in readbraw server code
(This used to be commit
e11b000319953dfeeb84fed142e857a5247a93e9)
Andrew Tridgell [Wed, 20 Oct 2004 11:10:51 +0000 (11:10 +0000)]
r3083: fixed a couple of generic mapping errors found with RAW-* and cifs:mapgeneric
(This used to be commit
76329798ff7f804bf4d7e6e9c1bb4c4dc7b9bb01)
Andrew Tridgell [Wed, 20 Oct 2004 11:08:58 +0000 (11:08 +0000)]
r3082: added a "cifs:mapgeneric" option, which tells the cifs backend to use
the ntvfs_generic mapping functions rather than sending the exact
function asked for. This allows the generic mapping functions to be
tested by comparing the behaviour of smbtorture against two cifs
backend shares, one using "cifs:mapgeneric = true" and the other
"cifs:mapgeneric = False"
(This used to be commit
c240c6bca5e10f1acbff45b0ed41c4c1ebcaae96)
Andrew Tridgell [Wed, 20 Oct 2004 08:28:31 +0000 (08:28 +0000)]
r3081: several updates to ntvfs and server side async request handling in
preparation for the full share modes and ntcreatex code that I am
working on.
highlights include:
- changed the way a backend determines if it is allowed to process a
request asynchronously. The previous method of looking at the
send_fn caused problems when an intermediate ntvfs module disabled
it, and the caller then wanted to finished processing using this
function. The new method is a REQ_CONTROL_MAY_ASYNC flag in
req->control_flags, which is also a bit easier to read
- fixed 2 bugs in the readbraw server code. One related to trying to
answer a readbraw with smb signing (which can't work, and crashed
our signing code), the second related to error handling, which
attempted to send a normal SMB error packet, when readbraw must
send a 0 read reply (as it has no header)
- added several more ntvfs_generic.c generic mapping functions. This
means that backends no longer need to implement such esoteric
functions as SMBwriteunlock() if they don't want to. The backend
can just request the mapping layer turn it into a write followed by
an unlock. This makes the backends considerably simpler as they
only need to implement one style of each function for lock, read,
write, open etc, rather than the full host of functions that SMB
provides. A backend can still choose to implement them
individually, of course, and the CIFS backend does that.
- simplified the generic structures to make them identical to the
principal call for several common SMB calls (such as
RAW_WRITE_GENERIC now being an alias for RAW_WRITE_WRITEX).
- started rewriting the pvfs_open() code in preparation for the full
ntcreatex semantics.
- in pvfs_open and ipc_open, initially allocate the open file
structure as a child of the request, so on error we don't need to
clean up. Then when we are going to succeed the open steal the
pointer into the long term backend context. This makes for much
simpler error handling (and fixes some bugs)
- use a destructor in the ipc backend to make sure that everthing is
cleaned up on receive error conditions.
- switched the ipc backend to using idtree for fnum allocation
- in the ntvfs_generic mapping routines, use a allocated secondary
structure not a stack structure to ensure the request pointer
remains valid even if the backend replies async.
(This used to be commit
3457c1836c09c82956697eb21627dfa2ed37682e)
Andrew Bartlett [Wed, 20 Oct 2004 02:26:59 +0000 (02:26 +0000)]
r3080: Make the Samba4 SAMR server pass the new, nasty torture test (now that
SAMR_FIELD_PASSWORD has been split up).
Andrew Bartlett
(This used to be commit
5f2295a5fb422ad028e67b240e55206acefb48bd)
Andrew Bartlett [Wed, 20 Oct 2004 02:14:28 +0000 (02:14 +0000)]
r3079: make code more pretty :-)
Andrew Bartlett
(This used to be commit
9c911b361c4dbb058eb48150c113c2e95b8053da)
Andrew Bartlett [Wed, 20 Oct 2004 02:13:45 +0000 (02:13 +0000)]
r3078: Allow more things to be set as command line options to provision.
Andrew Bartlett
(This used to be commit
2df85686f55049276eb60cbc3ca4bc1cfa9f7f0f)
Andrew Bartlett [Wed, 20 Oct 2004 02:12:52 +0000 (02:12 +0000)]
r3077: Add initial handling of Account Flags in SAMR user info level 21 and 25.
Andrew Bartlett
(This used to be commit
51774a9bcad97686e5259ac8d753b3df58072622)
Andrew Bartlett [Wed, 20 Oct 2004 02:11:40 +0000 (02:11 +0000)]
r3076: Fix memory leak.
Andrew Bartlett
(This used to be commit
4091fee8e807e5cd7089dc6753324766d10678c2)
Andrew Bartlett [Wed, 20 Oct 2004 02:10:46 +0000 (02:10 +0000)]
r3075: Initialise (and check for intialisation) of the private pointer to
ensure we don't segfault on the cleanup from an incomplete schannel
bind.
Andrew Bartlett
(This used to be commit
173f29a1d8db111d5adb258eead5379d681d3bb2)
Andrew Bartlett [Wed, 20 Oct 2004 02:08:36 +0000 (02:08 +0000)]
r3074: Add in a new 'field present' flag samr.idl for the Account Flags
field. Add torture test for setting this feild - including all the
odd cases (not all the flags 'stick', and not others cannot be
removed).
Seperate the two 'password change' flags, and test them both in the
torture code.
Check that the password did change after every password set call.
Andrew Bartlett
(This used to be commit
3759128bd33b802d5213d50ba25f7c7d11cfe1d7)
Andrew Bartlett [Wed, 20 Oct 2004 02:02:00 +0000 (02:02 +0000)]
r3073: Fix bug in the handling of null-terminated ASCII strings in RPC.
Because we didn't count the null terminator, we would not move past it
in the packet.
Andrew Bartlett
(This used to be commit
8b38bffc7098610c469ab61b7e0e6884f046f286)
Andrew Tridgell [Tue, 19 Oct 2004 12:06:01 +0000 (12:06 +0000)]
r3064: - use UINT8_MAX and UINT16_MAX instead of hex values for idr_get_new() limits
- change idr_get_new() to use > instead of >= in the limit check
(This used to be commit
834b09929bcb8aabdd151b7c2306001497cabdb4)
Andrew Tridgell [Tue, 19 Oct 2004 10:15:34 +0000 (10:15 +0000)]
r3063: our default dos charset is CP850, but some systems don't have that, so
as a special case, automatically fall back to ASCII if its not found.
(This used to be commit
55aeb33343180929fbd7b3568b058b506aee7540)
Andrew Tridgell [Tue, 19 Oct 2004 10:02:02 +0000 (10:02 +0000)]
r3062: handle spaces at the start of options in lp_set_cmdline()
(This used to be commit
069305adaf5e88d83f4591acced807d5ea1aa194)
Andrew Tridgell [Tue, 19 Oct 2004 09:53:23 +0000 (09:53 +0000)]
r3061: change a debug to help track down a charset problem
(This used to be commit
4d2497b7f4cb6aa6fdf1e03b56f72b1022cb92b8)
Tim Potter [Tue, 19 Oct 2004 07:41:19 +0000 (07:41 +0000)]
r3060: Replace magic number with a C99 constant.
(This used to be commit
b572be00b3432317169c6fa6df3f91a0c8f23fcb)
Andrew Tridgell [Tue, 19 Oct 2004 07:18:56 +0000 (07:18 +0000)]
r3059: completely get rid of the MAX_CONNECTIONS limit, as a idle tree
connect is very cheap now.
(This used to be commit
8856f010e96d2f20d349a51820f225a8493f6eef)
Andrew Tridgell [Tue, 19 Oct 2004 07:10:56 +0000 (07:10 +0000)]
r3058: we don't use the bitmap code any more, delete it
(This used to be commit
2b0554b3b598accb1b2ddade1bf17fa2cc2cb05b)
Andrew Tridgell [Tue, 19 Oct 2004 07:08:35 +0000 (07:08 +0000)]
r3057: - moved the idtree.c code into lib/
- converted the tid handling to use a idtree instead of bitmaps
(This used to be commit
4220914179d10132057216650b65ed7f7679717e)
Andrew Tridgell [Tue, 19 Oct 2004 06:39:51 +0000 (06:39 +0000)]
r3056: added a id -> pointer data structure (a type of radix tree). This is
an extremely efficient way of mapping from an integer handle (such as
an open file handle) to a pointer (such as the structure containing
the open file information). The code is taken from lib/idr.c in the
2.6 Linux kernel, and is very fast and space efficient. By using
talloc it even has auto cleanup.
This commit converts the handling of open file handles and open
directory search handles to use the idtree routines. In combination
with talloc destructors, this simplifies the structure handling in the
pvfs backend a lot. For example, we no longer need to keep a linked
list of open directory searches at all, and we no longer need to do
linear scans of the list of open files on most operations.
The end result is that the pvfs code is now extremely scalable. You
can have 10s of thousands of open files and open searches and the code
still runs very fast.
I have also added a small optimisation into the file close path, to
avoid looking in the byte range locking database if we know that there
are no locks outstanding.
(This used to be commit
16835a0ef91a16fa01145b773aad8d43da215dbf)
Andrew Tridgell [Tue, 19 Oct 2004 06:32:26 +0000 (06:32 +0000)]
r3055: use talloc_zero_p()
(This used to be commit
7bea9afeed219efa51aa8268af96f782f23f2400)
Andrew Tridgell [Tue, 19 Oct 2004 06:31:37 +0000 (06:31 +0000)]
r3054: use talloc_zero_array_p() in a couple of places
(This used to be commit
cccd59009d54d63ccf57181c15d161998a15da6b)
Andrew Tridgell [Tue, 19 Oct 2004 06:30:52 +0000 (06:30 +0000)]
r3053: make the maxfid test use subdirectories, so it doesn't create 64k
files in one directory (running the test was very slow) and can clean
up after itself easily.
(This used to be commit
6dea60e3b9a1d2557e8a5be505a5052dc9847a8f)
Andrew Tridgell [Tue, 19 Oct 2004 06:29:41 +0000 (06:29 +0000)]
r3052: added talloc_zero_p() and talloc_zero_array_p() calls, for allocating zeroed memory
(This used to be commit
65b7316e9b4589b02a8bd94150ccbfe526f6d159)
Jelmer Vernooij [Mon, 18 Oct 2004 16:25:36 +0000 (16:25 +0000)]
r3047: Always include a \ again before the pipe name we're opening. Without a
backslash works, but is not like Windows does it.
(This used to be commit
f6deb3d065e1a88f92bcb8a4a138453650c97b0b)
Jelmer Vernooij [Mon, 18 Oct 2004 16:07:08 +0000 (16:07 +0000)]
r3046: \\PIPE\\ is internal (not actually included on the wire)
(This used to be commit
7771b5d8fa3db759487474eb7172df45bb3221ae)
Jelmer Vernooij [Mon, 18 Oct 2004 15:33:34 +0000 (15:33 +0000)]
r3045: Allow object-uuid@... binding strings
(This used to be commit
38e9290bcf0295fb2a68090061310a4a8cb6c490)
Stefan Metzmacher [Mon, 18 Oct 2004 15:26:16 +0000 (15:26 +0000)]
r3044: resolve the error code for WERR_DS_OBJ_NOT_FOUND to the name
metze
(This used to be commit
c79bbe54b400f8e088401e1d59a626cb2a37ee34)
Jelmer Vernooij [Mon, 18 Oct 2004 15:18:05 +0000 (15:18 +0000)]
r3043: Use binding strings for specifying endpoints. The property for
specifying a endpoint is now also 'endpoint' instead of 'endpoints'. The
default endpoint (if none is specified) is still "ncacn_np:[\\pipe\\ifacename]",
where ifacename is the name of the interface.
Examples:
[
uuid(
60a15ec5-4de8-11d7-a637-
005056a20182),
endpoint("ncacn_np:[\\pipe\\rpcecho]", "ncacn_ip_tcp:")
]
interface rpcecho
{
void dummy();
}
dcerpc_binding is now converted to ep_description in the server, but I hope to
completely eliminate ep_description later on.
The eventual goal of all these changes is to make it easier to add
transports as I'm going to add support for
ncalrpc (local RPC over named pipes) and ncacn_unix_stream (Unix sockets).
(This used to be commit
f3da7c8b443a29b0c656c687a277384ae1353792)
Stefan Metzmacher [Mon, 18 Oct 2004 14:55:35 +0000 (14:55 +0000)]
r3041: a start of a README/HOWTO for the samba4 build system.
(still incomplete, but should be a good start...)
can someone look for spelling and grammar mistakes...
metze
(This used to be commit
66565187724c9f42367b590c29ff9775cc7472b4)
Jim McDonough [Mon, 18 Oct 2004 13:58:41 +0000 (13:58 +0000)]
r3040: Add sleeps between operations to nbench. Submitted by aliguori@us.ibm.com.
(This used to be commit
b1bbf0a431a9bcfc786b773be1adf39eaccb0b6e)
Andrew Tridgell [Mon, 18 Oct 2004 13:27:22 +0000 (13:27 +0000)]
r3039: This solves the problem of async handlers in ntvfs backends not being
in the right state when called. For example, when we use the unixuid
handler in the chain of handlers, and a backend decides to continue a
call asynchronously then we need to ensure that the continuation
happens with the right security context.
The solution is to add a new ntvfs operation ntvfs_async_setup(),
which calls all the way down through the layers, setting up anything
that is required, and takes a private pointer. The backend wanting to
make a async calls can use ntvfs_async_setup() to ensure that the
modules above it are called when doing async processing.
(This used to be commit
a256e71029727fa1659ade6257085df537308c7d)
Tim Potter [Mon, 18 Oct 2004 12:18:54 +0000 (12:18 +0000)]
r3036: Add function to pull an array of structures. Abstracts away the
individual routines in ndr_spoolss_buf.c.
(This used to be commit
e080a2483da61ee95d21b0355471a4af13c20a81)
Andrew Tridgell [Mon, 18 Oct 2004 12:06:21 +0000 (12:06 +0000)]
r3035: if the ntvfs layers prior to us have said that we can't perform an
operation asynchronously (such as the nbench module), then ignore lock
timeouts, as they would make no sense
(This used to be commit
2894dd0ac0ddd0ae5b4d536d5cff0690bbfab1a0)
Andrew Tridgell [Mon, 18 Oct 2004 11:47:13 +0000 (11:47 +0000)]
r3034: - fixed a bug in message dispatch, when the dispatch function called messaging_deregister()
- added a pvfs_lock_close_pending() hook to remove pending locks on file close
- fixed the private ptr argument to messaging_deregister() in pvfs_wait
- fixed a bug in continuing lock requests after a lock that is blocking a pending lock is removed
- removed bogus brl_unlock() call in lock continue
- corrected error code for LOCKING_ANDX_CHANGE_LOCKTYPE
- expanded the lock cancel test suite to test lock cancel by unlock and by close
- added a testsuite for LOCKING_ANDX_CHANGE_LOCKTYPE
(This used to be commit
5ef80f034d4aa4dd6810532c63ad041bfc019cb8)
Jelmer Vernooij [Mon, 18 Oct 2004 11:44:07 +0000 (11:44 +0000)]
r3033: Use the C struct directly if we can instead of generating a binding
string and parsing that.
(This used to be commit
1977932b5471f20a788adb1b99d60953f4e12470)
Jelmer Vernooij [Mon, 18 Oct 2004 11:43:26 +0000 (11:43 +0000)]
r3032: Somewhat stricter syntax for binding strings:
[] is now mandatory
: after the hostname is no longer allowed
examples of allowed binding strings:
ncacn_np:myhost[samr]
ncacn_ip_tcp:10.0.0.1[1045]
ncacn_ip_tcp:2001:7b8:37b:1:210:dcff:fecb:a9e3[1024,sign,seal]
ncacn_np:myhost
ncacn_ip_tcp:192.168.4.2
308FB580-1EB2-11CA-923B-
08002B1075A7@ncacn_ip_tcp:192.168.4.2
308FB580-1EB2-11CA-923B-
08002B1075A7@ncacn_ip_tcp:192.168.4.2[,print]
Note that the last two lines are not recognized by smbtorture as a binding
string yet. dcerpc_parse_binding() does accept them though.
(This used to be commit
c15862e778507287bddef7967383d4b5d22eaee9)
Andrew Tridgell [Mon, 18 Oct 2004 09:16:55 +0000 (09:16 +0000)]
r3031: added support for lock cancelation, which effectively just triggers an early lock timeout
added support for more of the bizarre special lock offset semantics of w2k3
(This used to be commit
d5bfc910b1200fb283e26572dc57fcf93652fd32)
Andrew Tridgell [Mon, 18 Oct 2004 08:41:44 +0000 (08:41 +0000)]
r3030: added testing of lock cancel, and some more special offsets (locks
with the top bit set are special)
(This used to be commit
f732a983d4fde29d5ad893ad35fd182ee3d8a75b)
Andrew Tridgell [Mon, 18 Oct 2004 07:40:17 +0000 (07:40 +0000)]
r3029: implemented byte range lock timeouts.
This adds a pvfs_wait_message() routine which uses the new messaging
system, event timers and talloc destructors to give a nice generic
async event handling system with a easy to use interface. The
extensions to pvfs_lock.c are based on calls to pvfs_wait_message()
routines.
We now pass all of our smbtorture locking tests, although while
writing this code I have thought of some additonal tests that should
be added, particularly for lock cancel operations. I'll work on that
soon.
This commit also extends the smbtorture lock tests to test the rather
weird 0xEEFFFFFF locking semantics that I have discovered in
win2003. Win2003 treats the 0xEEFFFFFF boundary as special, and will
give different error codes on either side of it. Locks on both sides
are allowed, the only difference is which error code is given when a
lock is denied. Anyone like to hazard a guess as to why? It has
me stumped.
(This used to be commit
4395c0557ab175d6a8dd99df03c266325949ffa5)
Andrew Tridgell [Mon, 18 Oct 2004 00:04:46 +0000 (00:04 +0000)]
r3028: use talloc_free() instead of talloc_unlink(), as the
event_context_merge() code leaves the events as grandchildren of the
events context, not children, so talloc_unlink() will not work after
the merge
(This used to be commit
2d0dfe607dcfb522669d6fb3d566cf121d84274a)
Andrew Tridgell [Sun, 17 Oct 2004 23:59:56 +0000 (23:59 +0000)]
r3027: got rid of some configure checks we don't need any more
(This used to be commit
6a3f356b763b0577e2ad3e7ea74bee932c04a46b)
Andrew Tridgell [Sun, 17 Oct 2004 22:28:26 +0000 (22:28 +0000)]
r3026: - added automatic retry to messages when the servers listen queue is
full. This means callers can just "send and forget" rather than
having to check for a temporary failure. The mechanism takes nice
advantage of the timed events handling is our events code. A message
will only fail now if we completely run out of some resource (such
as memory).
- changed the test code not to do retries itself, but only to warn on real failures
(This used to be commit
8cddc610a25e64c1ad39dd6a2fc2e7f467e04fc9)
Andrew Tridgell [Sun, 17 Oct 2004 22:04:15 +0000 (22:04 +0000)]
r3025: don't warn about no path in a service, as some backends (like cifs) don't need a path
(This used to be commit
a8c49a0de3f806bddaf6bd594ec052cf9f4a3fab)
Andrew Tridgell [Sun, 17 Oct 2004 22:03:33 +0000 (22:03 +0000)]
r3024: run the *_connect() NTVFS initialisation operation as root, to allow
backends to open databases and perform any other privileged
operations that might be needed.
(This used to be commit
54fd395025656d9b264ba1c1fab6e3ce8ca3d357)
Andrew Tridgell [Sun, 17 Oct 2004 13:33:03 +0000 (13:33 +0000)]
r3023: added immediate send of messages when they are first queued. This makes things a bit more efficient
(This used to be commit
8380225d326e4bfb3f15fddc72c097870713132a)
Tim Potter [Sun, 17 Oct 2004 13:24:56 +0000 (13:24 +0000)]
r3022: Work on unmarshalling arrays of structs in a buffer (Python string) for
spoolss. Doesn't quite work yet.
(This used to be commit
9045645ddf4eb8b5596d220ed936c8731641ef0a)
Andrew Tridgell [Sun, 17 Oct 2004 13:22:37 +0000 (13:22 +0000)]
r3021: under heavy load the listen queue for messaging unix domain socket can fill up, leading to refused
connections. The caller needs to retry. This adds testing of the retry in LOCAL-MESSAGING
(This used to be commit
2c568d4dc20303061a89c815b9a9a0bafc283633)
Andrew Tridgell [Sun, 17 Oct 2004 13:21:24 +0000 (13:21 +0000)]
r3020: better error handling in socket_unix
(This used to be commit
64514ff5b7734667a1364de925114091fe208b3a)
Andrew Tridgell [Sun, 17 Oct 2004 12:41:31 +0000 (12:41 +0000)]
r3019: make the LOCAL-MESSAGING test a 2 process test
(This used to be commit
68890247c1247f5f9e299ac1f579052cd022e79f)
Andrew Tridgell [Sun, 17 Oct 2004 12:41:04 +0000 (12:41 +0000)]
r3018: handle STATUS_MORE_ENTRIES from socket_recv() in the messaging code
(This used to be commit
13739b68d8357d5d330f12b851d0311feb81e545)
Andrew Tridgell [Sun, 17 Oct 2004 11:37:22 +0000 (11:37 +0000)]
r3017: nicer memory handling for event_context_merge()
(This used to be commit
1cef44505e5de9b8ae5206522b624082ad2343b2)
Andrew Tridgell [Sun, 17 Oct 2004 10:04:49 +0000 (10:04 +0000)]
r3016: - converted the events code to talloc
- added the new messaging system, based on unix domain sockets. It
gets over 10k messages/second on my laptop without any socket
cacheing, which is better than I expected.
- added a LOCAL-MESSAGING torture test
(This used to be commit
3af06478da7ab34a272226d8d9ac87e0a4940cfb)
Andrew Tridgell [Sun, 17 Oct 2004 05:29:03 +0000 (05:29 +0000)]
r3015: fixed typo noticed by abartlett
(This used to be commit
b367209a9f94e471efed233639467babbb2b99d7)
Andrew Tridgell [Sun, 17 Oct 2004 05:12:59 +0000 (05:12 +0000)]
r3014: got rid of the old intra-smbd messaging system in preparation for the new one
(This used to be commit
283e38aeb210e048302dc2759a75879cfc81eeb5)
Andrew Tridgell [Sun, 17 Oct 2004 05:07:07 +0000 (05:07 +0000)]
r3013: added support for unix domain sockets in the generic socket library. I
will shortly be using this for a rewrite of the intra-smbd messaging
library, which is needed to get lock timeouts working properly (and
share modes, oplocks etc)
(This used to be commit
6f4926d846965a901e40d24546eab356c4a537c7)
Andrew Tridgell [Sun, 17 Oct 2004 02:55:47 +0000 (02:55 +0000)]
r3012: added initial support for byte range locking in the posix vfs. This is
enough for us to pass locktest, but does not yet support lock timeouts
and some of the other esoteric features.
(This used to be commit
58a92abd88f190bc60894a68e0528e95ae33fe39)