summaryrefslogtreecommitdiff
path: root/source4
AgeCommit message (Collapse)AuthorFilesLines
2007-10-10r3086: fixed smbpid handling in the cifs backendAndrew Tridgell1-2/+50
(This used to be commit fbc6949e95df6ea70ca9892099efb537ded97287)
2007-10-10r3085: make the RAW-WRITE tests more robust to errors in previous parts of ↵Andrew Tridgell1-19/+19
the test (This used to be commit 6ea815b6d426d37723a200226cb5f7236a13017f)
2007-10-10r3084: mincnt and maxcnt were the wrong way around in readbraw server codeAndrew Tridgell1-2/+2
(This used to be commit e11b000319953dfeeb84fed142e857a5247a93e9)
2007-10-10r3083: fixed a couple of generic mapping errors found with RAW-* and ↵Andrew Tridgell1-2/+4
cifs:mapgeneric (This used to be commit 76329798ff7f804bf4d7e6e9c1bb4c4dc7b9bb01)
2007-10-10r3082: added a "cifs:mapgeneric" option, which tells the cifs backend to useAndrew Tridgell2-6/+52
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)
2007-10-10r3081: several updates to ntvfs and server side async request handling inAndrew Tridgell15-491/+741
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)
2007-10-10r3080: Make the Samba4 SAMR server pass the new, nasty torture test (now thatAndrew Bartlett1-0/+14
SAMR_FIELD_PASSWORD has been split up). Andrew Bartlett (This used to be commit 5f2295a5fb422ad028e67b240e55206acefb48bd)
2007-10-10r3079: make code more pretty :-)Andrew Bartlett2-5/+5
Andrew Bartlett (This used to be commit 9c911b361c4dbb058eb48150c113c2e95b8053da)
2007-10-10r3078: Allow more things to be set as command line options to provision.Andrew Bartlett1-4/+6
Andrew Bartlett (This used to be commit 2df85686f55049276eb60cbc3ca4bc1cfa9f7f0f)
2007-10-10r3077: Add initial handling of Account Flags in SAMR user info level 21 and 25.Andrew Bartlett1-0/+9
Andrew Bartlett (This used to be commit 51774a9bcad97686e5259ac8d753b3df58072622)
2007-10-10r3076: Fix memory leak.Andrew Bartlett1-1/+3
Andrew Bartlett (This used to be commit 4091fee8e807e5cd7089dc6753324766d10678c2)
2007-10-10r3075: Initialise (and check for intialisation) of the private pointer toAndrew Bartlett2-2/+8
ensure we don't segfault on the cleanup from an incomplete schannel bind. Andrew Bartlett (This used to be commit 173f29a1d8db111d5adb258eead5379d681d3bb2)
2007-10-10r3074: Add in a new 'field present' flag samr.idl for the Account FlagsAndrew Bartlett2-44/+195
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)
2007-10-10r3073: Fix bug in the handling of null-terminated ASCII strings in RPC.Andrew Bartlett2-1/+19
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)
2007-10-10r3064: - use UINT8_MAX and UINT16_MAX instead of hex values for ↵Andrew Tridgell5-6/+14
idr_get_new() limits - change idr_get_new() to use > instead of >= in the limit check (This used to be commit 834b09929bcb8aabdd151b7c2306001497cabdb4)
2007-10-10r3063: our default dos charset is CP850, but some systems don't have that, soAndrew Tridgell1-0/+14
as a special case, automatically fall back to ASCII if its not found. (This used to be commit 55aeb33343180929fbd7b3568b058b506aee7540)
2007-10-10r3062: handle spaces at the start of options in lp_set_cmdline()Andrew Tridgell1-0/+3
(This used to be commit 069305adaf5e88d83f4591acced807d5ea1aa194)
2007-10-10r3061: change a debug to help track down a charset problemAndrew Tridgell1-1/+2
(This used to be commit 4d2497b7f4cb6aa6fdf1e03b56f72b1022cb92b8)
2007-10-10r3060: Replace magic number with a C99 constant.Tim Potter1-1/+1
(This used to be commit b572be00b3432317169c6fa6df3f91a0c8f23fcb)
2007-10-10r3059: completely get rid of the MAX_CONNECTIONS limit, as a idle treeAndrew Tridgell1-7/+1
connect is very cheap now. (This used to be commit 8856f010e96d2f20d349a51820f225a8493f6eef)
2007-10-10r3058: we don't use the bitmap code any more, delete itAndrew Tridgell2-164/+0
(This used to be commit 2b0554b3b598accb1b2ddade1bf17fa2cc2cb05b)
2007-10-10r3057: - moved the idtree.c code into lib/Andrew Tridgell7-82/+27
- converted the tid handling to use a idtree instead of bitmaps (This used to be commit 4220914179d10132057216650b65ed7f7679717e)
2007-10-10r3056: added a id -> pointer data structure (a type of radix tree). This isAndrew Tridgell7-130/+494
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)
2007-10-10r3055: use talloc_zero_p()Andrew Tridgell1-1/+1
(This used to be commit 7bea9afeed219efa51aa8268af96f782f23f2400)
2007-10-10r3054: use talloc_zero_array_p() in a couple of placesAndrew Tridgell2-2/+2
(This used to be commit cccd59009d54d63ccf57181c15d161998a15da6b)
2007-10-10r3053: make the maxfid test use subdirectories, so it doesn't create 64kAndrew Tridgell1-6/+46
files in one directory (running the test was very slow) and can clean up after itself easily. (This used to be commit 6dea60e3b9a1d2557e8a5be505a5052dc9847a8f)
2007-10-10r3052: added talloc_zero_p() and talloc_zero_array_p() calls, for allocating ↵Andrew Tridgell2-3/+18
zeroed memory (This used to be commit 65b7316e9b4589b02a8bd94150ccbfe526f6d159)
2007-10-10r3047: Always include a \ again before the pipe name we're opening. Without aJelmer Vernooij2-4/+7
backslash works, but is not like Windows does it. (This used to be commit f6deb3d065e1a88f92bcb8a4a138453650c97b0b)
2007-10-10r3046: \\PIPE\\ is internal (not actually included on the wire)Jelmer Vernooij2-6/+3
(This used to be commit 7771b5d8fa3db759487474eb7172df45bb3221ae)
2007-10-10r3045: Allow object-uuid@... binding stringsJelmer Vernooij1-1/+13
(This used to be commit 38e9290bcf0295fb2a68090061310a4a8cb6c490)
2007-10-10r3044: resolve the error code for WERR_DS_OBJ_NOT_FOUND to the nameStefan Metzmacher1-0/+1
metze (This used to be commit c79bbe54b400f8e088401e1d59a626cb2a37ee34)
2007-10-10r3043: Use binding strings for specifying endpoints. The property forJelmer Vernooij17-54/+76
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)
2007-10-10r3041: a start of a README/HOWTO for the samba4 build system.Stefan Metzmacher2-4/+88
(still incomplete, but should be a good start...) can someone look for spelling and grammar mistakes... metze (This used to be commit 66565187724c9f42367b590c29ff9775cc7472b4)
2007-10-10r3040: Add sleeps between operations to nbench. Submitted by ↵Jim McDonough2-0/+8
aliguori@us.ibm.com. (This used to be commit b1bbf0a431a9bcfc786b773be1adf39eaccb0b6e)
2007-10-10r3039: This solves the problem of async handlers in ntvfs backends not beingAndrew Tridgell9-4/+120
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)
2007-10-10r3036: Add function to pull an array of structures. Abstracts away theTim Potter1-0/+21
individual routines in ndr_spoolss_buf.c. (This used to be commit e080a2483da61ee95d21b0355471a4af13c20a81)
2007-10-10r3035: if the ntvfs layers prior to us have said that we can't perform anAndrew Tridgell1-1/+2
operation asynchronously (such as the nbench module), then ignore lock timeouts, as they would make no sense (This used to be commit 2894dd0ac0ddd0ae5b4d536d5cff0690bbfab1a0)
2007-10-10r3034: - fixed a bug in message dispatch, when the dispatch function called ↵Andrew Tridgell5-17/+171
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)
2007-10-10r3033: Use the C struct directly if we can instead of generating a bindingJelmer Vernooij3-22/+23
string and parsing that. (This used to be commit 1977932b5471f20a788adb1b99d60953f4e12470)
2007-10-10r3032: Somewhat stricter syntax for binding strings:Jelmer Vernooij4-45/+99
[] 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)
2007-10-10r3031: added support for lock cancelation, which effectively just triggers ↵Andrew Tridgell4-11/+72
an early lock timeout added support for more of the bizarre special lock offset semantics of w2k3 (This used to be commit d5bfc910b1200fb283e26572dc57fcf93652fd32)
2007-10-10r3030: added testing of lock cancel, and some more special offsets (locksAndrew Tridgell1-17/+235
with the top bit set are special) (This used to be commit f732a983d4fde29d5ad893ad35fd182ee3d8a75b)
2007-10-10r3029: implemented byte range lock timeouts.Andrew Tridgell11-103/+673
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)
2007-10-10r3028: use talloc_free() instead of talloc_unlink(), as theAndrew Tridgell1-3/+3
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)
2007-10-10r3027: got rid of some configure checks we don't need any moreAndrew Tridgell1-45/+5
(This used to be commit 6a3f356b763b0577e2ad3e7ea74bee932c04a46b)
2007-10-10r3026: - added automatic retry to messages when the servers listen queue isAndrew Tridgell2-10/+58
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)
2007-10-10r3025: don't warn about no path in a service, as some backends (like cifs) ↵Andrew Tridgell1-7/+0
don't need a path (This used to be commit a8c49a0de3f806bddaf6bd594ec052cf9f4a3fab)
2007-10-10r3024: run the *_connect() NTVFS initialisation operation as root, to allowAndrew Tridgell1-1/+4
backends to open databases and perform any other privileged operations that might be needed. (This used to be commit 54fd395025656d9b264ba1c1fab6e3ce8ca3d357)
2007-10-10r3023: added immediate send of messages when they are first queued. This ↵Andrew Tridgell2-6/+3
makes things a bit more efficient (This used to be commit 8380225d326e4bfb3f15fddc72c097870713132a)
2007-10-10r3022: Work on unmarshalling arrays of structs in a buffer (Python string) forTim Potter1-6/+32
spoolss. Doesn't quite work yet. (This used to be commit 9045645ddf4eb8b5596d220ed936c8731641ef0a)