12 years agor3087: fixed a typo
Andrew Tridgell [Wed, 20 Oct 2004 12:24:31 +0000 (12:24 +0000)]
r3087: fixed a typo
(This used to be commit 3791b97694f052b0b7e170e07c21f7a5739d74dd)

12 years agor3086: fixed smbpid handling in the cifs backend
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)

12 years agor3085: make the RAW-WRITE tests more robust to errors in previous parts of the test
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)

12 years agor3084: mincnt and maxcnt were the wrong way around in readbraw server code
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)

12 years agor3083: fixed a couple of generic mapping errors found with RAW-* and cifs:mapgeneric
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)

12 years agor3082: added a "cifs:mapgeneric" option, which tells the cifs backend to use
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)

12 years agor3081: several updates to ntvfs and server side async request handling in
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)

12 years agor3080: Make the Samba4 SAMR server pass the new, nasty torture test (now that
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)

12 years agor3079: make code more pretty :-)
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)

12 years agor3078: Allow more things to be set as command line options to provision.
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)

12 years agor3077: Add initial handling of Account Flags in SAMR user info level 21 and 25.
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)

12 years agor3076: Fix memory leak.
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)

12 years agor3075: Initialise (and check for intialisation) of the private pointer to
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

Andrew Bartlett
(This used to be commit 173f29a1d8db111d5adb258eead5379d681d3bb2)

12 years agor3074: Add in a new 'field present' flag samr.idl for the Account Flags
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

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)

12 years agor3073: Fix bug in the handling of null-terminated ASCII strings in RPC.
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)

12 years agor3064: - use UINT8_MAX and UINT16_MAX instead of hex values for idr_get_new() limits
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)

12 years agor3063: our default dos charset is CP850, but some systems don't have that, so
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)

12 years agor3062: handle spaces at the start of options in lp_set_cmdline()
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)

12 years agor3061: change a debug to help track down a charset problem
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)

12 years agor3060: Replace magic number with a C99 constant.
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)

12 years agor3059: completely get rid of the MAX_CONNECTIONS limit, as a idle tree
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)

12 years agor3058: we don't use the bitmap code any more, delete it
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)

12 years agor3057: - moved the idtree.c code into lib/
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)

12 years agor3056: added a id -> pointer data structure (a type of radix tree). This is
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)

12 years agor3055: use talloc_zero_p()
Andrew Tridgell [Tue, 19 Oct 2004 06:32:26 +0000 (06:32 +0000)]
r3055: use talloc_zero_p()
(This used to be commit 7bea9afeed219efa51aa8268af96f782f23f2400)

12 years agor3054: use talloc_zero_array_p() in a couple of places
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)

12 years agor3053: make the maxfid test use subdirectories, so it doesn't create 64k
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)

12 years agor3052: added talloc_zero_p() and talloc_zero_array_p() calls, for allocating zeroed...
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)

12 years agor3047: Always include a \ again before the pipe name we're opening. Without a
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)

12 years agor3046: \\PIPE\\ is internal (not actually included on the wire)
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)

12 years agor3045: Allow object-uuid@... binding strings
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)

12 years agor3044: resolve the error code for WERR_DS_OBJ_NOT_FOUND to the name
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

(This used to be commit c79bbe54b400f8e088401e1d59a626cb2a37ee34)

12 years agor3043: Use binding strings for specifying endpoints. The property for
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.


  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)

12 years agor3041: a start of a README/HOWTO for the samba4 build system.
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...

(This used to be commit 66565187724c9f42367b590c29ff9775cc7472b4)

12 years agor3040: Add sleeps between operations to nbench. Submitted by
Jim McDonough [Mon, 18 Oct 2004 13:58:41 +0000 (13:58 +0000)]
r3040: Add sleeps between operations to nbench.  Submitted by
(This used to be commit b1bbf0a431a9bcfc786b773be1adf39eaccb0b6e)

12 years agor3039: This solves the problem of async handlers in ntvfs backends not being
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)

12 years agor3036: Add function to pull an array of structures. Abstracts away the
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)

12 years agor3035: if the ntvfs layers prior to us have said that we can't perform an
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)

12 years agor3034: - fixed a bug in message dispatch, when the dispatch function called messagin...
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)

12 years agor3033: Use the C struct directly if we can instead of generating a binding
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)

12 years agor3032: Somewhat stricter syntax for binding strings:
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:


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)

12 years agor3031: added support for lock cancelation, which effectively just triggers an early...
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)

12 years agor3030: added testing of lock cancel, and some more special offsets (locks
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)

12 years agor3029: implemented byte range lock timeouts.
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()

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

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)

12 years agor3028: use talloc_free() instead of talloc_unlink(), as the
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)

12 years agor3027: got rid of some configure checks we don't need any more
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)

12 years agor3026: - added automatic retry to messages when the servers listen queue is
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)

12 years agor3025: don't warn about no path in a service, as some backends (like cifs) don't...
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)

12 years agor3024: run the *_connect() NTVFS initialisation operation as root, to allow
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)

12 years agor3023: added immediate send of messages when they are first queued. This makes things...
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)

12 years agor3022: Work on unmarshalling arrays of structs in a buffer (Python string) for
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)

12 years agor3021: under heavy load the listen queue for messaging unix domain socket can fill...
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)

12 years agor3020: better error handling in socket_unix
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)

12 years agor3019: make the LOCAL-MESSAGING test a 2 process test
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)

12 years agor3018: handle STATUS_MORE_ENTRIES from socket_recv() in the messaging code
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)

12 years agor3017: nicer memory handling for event_context_merge()
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)

12 years agor3016: - converted the events code to talloc
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)

12 years agor3015: fixed typo noticed by abartlett
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)

12 years agor3014: got rid of the old intra-smbd messaging system in preparation for the new one
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)

12 years agor3013: added support for unix domain sockets in the generic socket library. I
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)

12 years agor3012: added initial support for byte range locking in the posix vfs. This is
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)

12 years agor3011: separated the locktest code into a separate module in smbtorture
Andrew Tridgell [Sun, 17 Oct 2004 02:52:37 +0000 (02:52 +0000)]
r3011: separated the locktest code into a separate module in smbtorture
(This used to be commit f4a91be63502c0bb32c52c0558dfc7d4d0a21fae)

12 years agor3010: Do some more PyInt vs PyLong checks.
Tim Potter [Sun, 17 Oct 2004 00:37:36 +0000 (00:37 +0000)]
r3010: Do some more PyInt vs PyLong checks.
(This used to be commit b19dc6cd9c1ac44d970b092f09cf96c737a90fdd)

12 years agor3009: Fix up unmarshall functions to return Python dict instead of a NTSTATUS.
Tim Potter [Sun, 17 Oct 2004 00:27:40 +0000 (00:27 +0000)]
r3009: Fix up unmarshall functions to return Python dict instead of a NTSTATUS.
We can now unmarshall a single printer returned from an EnumPrinters.
(This used to be commit 89da7a9196d40699881f12c9a5fe62301aafd4cf)

12 years agor3007: uint32 values need to be stored in Python longs, as on 32-bit machines
Tim Potter [Sun, 17 Oct 2004 00:20:57 +0000 (00:20 +0000)]
r3007: uint32 values need to be stored in Python longs, as on 32-bit machines
Python ints can only hold int32 values.
(This used to be commit 7c5ada63bf5d876a1b67df2cf7bd44942e4b0a98)

12 years agor3006: Poptify
Jelmer Vernooij [Sat, 16 Oct 2004 19:00:27 +0000 (19:00 +0000)]
r3006: Poptify
(This used to be commit 5c46747c36aa09289c6b2df3927833aec78059fd)

12 years agor3005: added talloc wrappers around tdb_open() and ldb_connect(), so that the
Andrew Tridgell [Sat, 16 Oct 2004 13:47:00 +0000 (13:47 +0000)]
r3005: added talloc wrappers around tdb_open() and ldb_connect(), so that the
caller doesn't have to worry about the constraint of only opening a
database a single time in a process. These wrappers will ensure that
only a single open is done, and will auto-close when the last instance
is gone.

When you are finished with a database pointer, use talloc_free() to
close it.

note that this code does not take account of the threads process
model, and does not yet take account of symlinks or hard links to tdb
(This used to be commit 04e1171996612ddb15f84134cadded68f0d173b2)

12 years agor3004: removed some unused functions
Andrew Tridgell [Sat, 16 Oct 2004 11:20:57 +0000 (11:20 +0000)]
r3004: removed some unused functions
(This used to be commit 247421ee648d1935b68a47195fe1709bb861a7d5)

12 years agor3001: Expose unmarshalling functions for structures marked "public" in the
Tim Potter [Sat, 16 Oct 2004 00:19:33 +0000 (00:19 +0000)]
r3001: Expose unmarshalling functions for structures marked "public" in the
idl.  This allows us to pass a buffer of bytes returned from a spoolss
call and convert it to a Python dictionary.  Works for enumprinters level
(This used to be commit 4bc497a2994b12845a46b2d19f60bb81c9869fc9)

12 years agor2997: Added delete on close tests for readonly files.
Jeremy Allison [Fri, 15 Oct 2004 18:59:46 +0000 (18:59 +0000)]
r2997: Added delete on close tests for readonly files.
(This used to be commit 93efa870400a3f69700e69d30319ffbdbdf94820)

12 years agor2994: More cleanups. Move the generation of NTSTATUS and WERROR exceptions
Tim Potter [Fri, 15 Oct 2004 12:21:49 +0000 (12:21 +0000)]
r2994: More cleanups.  Move the generation of NTSTATUS and WERROR exceptions
from inside a swig %exception block and into the argout typemap.  This
will allow us to wrap functions that don't require exception handling, and
also get rid of some ugly code in dcerpc.i
(This used to be commit 558076cc8ddbdb563869f7d35150310217f30c31)

12 years agor2993: fix comment
Stefan Metzmacher [Fri, 15 Oct 2004 11:11:02 +0000 (11:11 +0000)]
r2993: fix comment

(This used to be commit 23a2c5c1586e5ea0261bc84571486658a262740c)

12 years agor2992: drsuapi uses WERROR not NTSTATUS
Stefan Metzmacher [Fri, 15 Oct 2004 11:08:14 +0000 (11:08 +0000)]
r2992: drsuapi uses WERROR not NTSTATUS

(This used to be commit 757f67c08b0b1309d8a0b900539111c7bc430b0e)

12 years agor2991: add drsuapi_DsGetDomainControllerInfo() idl and torture test
Stefan Metzmacher [Fri, 15 Oct 2004 09:48:40 +0000 (09:48 +0000)]
r2991: add drsuapi_DsGetDomainControllerInfo() idl and torture test

(This used to be commit 98ca7640c59aa8694abde03f5661b8908cf088bb)

12 years agor2990: Add support to pidl for autogenerating ndr_size_*() functions. Adding
Jelmer Vernooij [Fri, 15 Oct 2004 09:22:21 +0000 (09:22 +0000)]
r2990: Add support to pidl for autogenerating ndr_size_*() functions. Adding
the [gensize] property to a struct or union will make pidl generate a
ndr_size_*() function.

(not all nasty bits of NDR are completely covered yet by the
 ndr_size*() functions, support for those will be added when necessary)

I also have a local patch (not applied now) that simplifies the pidl output
and eliminates the number of functions required. It would, however, make
pidl more complex.
(This used to be commit 7c823f886afd0c4c6ee838f17882ca0658417011)

12 years agor2989: fix the printing of unions with negative cases when :print is used
Andrew Tridgell [Fri, 15 Oct 2004 07:38:46 +0000 (07:38 +0000)]
r2989: fix the printing of unions with negative cases when :print is used
(This used to be commit d8152f896119418d95d7697cc2ca23f5319c32a9)

12 years agor2988: this should fix support for negative switch levels in PIDL
Andrew Tridgell [Fri, 15 Oct 2004 07:28:53 +0000 (07:28 +0000)]
r2988: this should fix support for negative switch levels in PIDL
(This used to be commit 21ed51d47f7efd493ad64b564fb6362ef8fb067f)

12 years agor2987: added support for signed 32 bit integers in pidl
Andrew Tridgell [Fri, 15 Oct 2004 07:19:09 +0000 (07:19 +0000)]
r2987: added support for signed 32 bit integers in pidl
(This used to be commit 24122eb93e39de8db3675618b6c227c95eb58d9c)

12 years agor2986: Add correct value to dict when generating wrapper for functions that
Tim Potter [Fri, 15 Oct 2004 07:17:51 +0000 (07:17 +0000)]
r2986: Add correct value to dict when generating wrapper for functions that
return WERROR values.

Clean up WERROR vs NTSTATUS handling a bit.
(This used to be commit e6756e3ee0af3e7e98f6deaf9dc83af9aac1b586)

12 years agor2985: got rid of the unused tdb_lockkeys() and tdb_unlockkeys() functions
Andrew Tridgell [Fri, 15 Oct 2004 06:41:35 +0000 (06:41 +0000)]
r2985: got rid of the unused tdb_lockkeys() and tdb_unlockkeys() functions

they have been broken for 4 years (ever since they were added) and
have been never used, which makes them prime candidates for
(This used to be commit 0b53ab85aae4569c04495f07c18a65fd6b47bf4c)

12 years agor2984: fixed the error code for a non-terminal component of a path name not existing
Andrew Tridgell [Fri, 15 Oct 2004 05:40:13 +0000 (05:40 +0000)]
r2984: fixed the error code for a non-terminal component of a path name not existing
(This used to be commit c6a922dbd844c69bbba83c259169655d17e9f87f)

12 years agor2983: report a failure if a server doesn't update the write time at all
Andrew Tridgell [Fri, 15 Oct 2004 01:37:06 +0000 (01:37 +0000)]
r2983: report a failure if a server doesn't update the write time at all
after 2 minutes
(This used to be commit b2298a1c5f0330a262ac855479060fd677fe8059)

12 years agor2982: added a test that shows the amount of time a server takes to update
Andrew Tridgell [Fri, 15 Oct 2004 01:32:24 +0000 (01:32 +0000)]
r2982: added a test that shows the amount of time a server takes to update
the write time on a file after a write.
(This used to be commit efee3c90f90b1e9dd3351933d27fe8a085c3657f)

12 years agor2981: Fix incorrect locks/unlocks in tdb_lockkeys()/tdb_unlockkeys().
Jeremy Allison [Fri, 15 Oct 2004 00:03:26 +0000 (00:03 +0000)]
r2981: Fix incorrect locks/unlocks in tdb_lockkeys()/tdb_unlockkeys().
Spotted by Taj Khattra <>.
(This used to be commit a7d92301bbf45cb9e475e4876fdbb37644ad5871)

12 years agor2975: Try to emulate NT_STATUS_IS_ERR() functionality for WERRORs. Unfortunately
Tim Potter [Thu, 14 Oct 2004 13:09:59 +0000 (13:09 +0000)]
r2975: Try to emulate NT_STATUS_IS_ERR() functionality for WERRORs.  Unfortunately
this means enumerating all the ones we don't think are errors.
(This used to be commit a079e044f0ef23c6c4307c9da35019ec3e8f1d2a)

12 years agor2974: fix the build
Stefan Metzmacher [Thu, 14 Oct 2004 11:11:21 +0000 (11:11 +0000)]
r2974: fix the build

(This used to be commit 1bb71e7a8699bfd32d171a48c4c3b5f35faf3e51)

12 years agor2973: Allow comma's inside parentheses in property arguments
Jelmer Vernooij [Thu, 14 Oct 2004 10:30:08 +0000 (10:30 +0000)]
r2973: Allow comma's inside parentheses in property arguments
(This used to be commit ab2a788fe75ddaf8ff493477f2006a03959e6ab5)

12 years agor2972: make names more consistent
Stefan Metzmacher [Thu, 14 Oct 2004 10:21:51 +0000 (10:21 +0000)]
r2972: make names more consistent

(This used to be commit 7aa91db53ed5811f0900dd61d63d15e71255285e)

12 years agor2971: fix DsBind idl
Stefan Metzmacher [Thu, 14 Oct 2004 10:16:22 +0000 (10:16 +0000)]
r2971: fix DsBind idl

(This used to be commit 9e50b3214b9de84811640296c19d6068936dfd54)

12 years agor2970: - give somefields names and typdef enums for the possible values
Stefan Metzmacher [Thu, 14 Oct 2004 09:56:04 +0000 (09:56 +0000)]
r2970: - give somefields names and typdef enums for the possible values

- do more crackname tests in the torture test

- move server code for cracknames to a different file

(This used to be commit 18050ea6037b3c0c7cfe975eb9c872368b9e3328)

12 years agor2969: inet_ntoa() takes an address in network byte order, so now that we
Andrew Tridgell [Thu, 14 Oct 2004 09:21:12 +0000 (09:21 +0000)]
r2969: inet_ntoa() takes an address in network byte order, so now that we
parse the RHS as IDL, we need to use htonl() to convert back to
network byte order before we can display the IP
(This used to be commit 45508b85dabf8aa66bff9aeebf99c1faf3d475ec)

12 years agor2968: fixed the byte order problem with the new RHS parsing on ncacn_ip_tcp
Andrew Tridgell [Thu, 14 Oct 2004 09:07:41 +0000 (09:07 +0000)]
r2968: fixed the byte order problem with the new RHS parsing on ncacn_ip_tcp
(This used to be commit cc00f9b6b87783d189df00de0ce9ae92b907e21a)

12 years agor2967: Add some printer enum constants from Samba3's rpc_spoolss.h
Tim Potter [Thu, 14 Oct 2004 07:33:49 +0000 (07:33 +0000)]
r2967: Add some printer enum constants from Samba3's rpc_spoolss.h
(This used to be commit 7983a99479164d04281dd6c34d63733afa3c3612)

12 years agor2966: Handle conversion of DATA_BLOB fields from Python in a slightly nicer
Tim Potter [Thu, 14 Oct 2004 07:33:09 +0000 (07:33 +0000)]
r2966: Handle conversion of DATA_BLOB fields from Python in a slightly nicer
manner.  I'm hoping to get rid of DATA_BLOB's but for the moment they
make it easy to get some spoolss action happening quickly.
(This used to be commit 15f8f73f8bfec099973fb8bf167020ae50346cf6)

12 years agor2965: Ignore *.pyc files in torture directory.
Tim Potter [Thu, 14 Oct 2004 07:25:47 +0000 (07:25 +0000)]
r2965: Ignore *.pyc files in torture directory.

Allow test module name to be specified on command line for pytorture

Start spoolss torture test.
(This used to be commit 44bab84f765f6a4d37733a353fc6b74b09c1b39a)

12 years agor2964: Add spoolss to list of wrapped client functions.
Tim Potter [Thu, 14 Oct 2004 06:45:25 +0000 (06:45 +0000)]
r2964: Add spoolss to list of wrapped client functions.
(This used to be commit 96d31ff19d2fa5b0c5a0ee23000a97cb77637968)

12 years agor2963: Handle structures that contain more than one union as members.
Tim Potter [Thu, 14 Oct 2004 06:35:42 +0000 (06:35 +0000)]
r2963: Handle structures that contain more than one union as members.
(This used to be commit 6a47a079c003c2a139665ad2b5ede5d139049bd1)

12 years agor2962: Tweak to get conversion function for pointers to union compiling again.
Tim Potter [Thu, 14 Oct 2004 05:59:28 +0000 (05:59 +0000)]
r2962: Tweak to get conversion function for pointers to union compiling again.
(This used to be commit 8c9c94d578651c5884db0aa0feb6e16858274fbb)

12 years agor2961: fixed a silly typo
Andrew Tridgell [Thu, 14 Oct 2004 05:38:48 +0000 (05:38 +0000)]
r2961: fixed a silly typo
(This used to be commit f76a1cf640a909aa2a4e26e65f59020f9ab575f4)

12 years agor2960: during a lunchtime discussion I found out that all powerpc processors
Andrew Tridgell [Thu, 14 Oct 2004 05:26:35 +0000 (05:26 +0000)]
r2960: during a lunchtime discussion I found out that all powerpc processors
can correctly (and quickly!) handle unaligned little endian memory
accesses, just like i386. This should reduce code size and speeds
things up quite a lot on ppc, at the expense of some inline asm code
(whcih means it only works with gcc)
(This used to be commit 2a0c427c2bf2f8b0739f12c78151b819388c44d4)