1
0
mirror of https://github.com/samba-team/samba.git synced 2025-01-27 14:04:05 +03:00

50 Commits

Author SHA1 Message Date
Stefan Metzmacher
b9cbfe64a7 r8876: check the result of AddOne and test some more values
metze
(This used to be commit 6918e9c5a3e2f9cd69569037bbdfed4e7eed94d5)
2007-10-10 13:30:14 -05:00
Volker Lendecke
5bddfe7a1a r8875: Rename timeval_diff to timeval_until and revert the arguments. timeval_diff is
not strictly a subtraction function, there can't be negative timevals.

Volker
(This used to be commit 525d75dd24f6a8810f1ed2043d170c70b060f1f0)
2007-10-10 13:30:14 -05:00
Andrew Tridgell
07c395a40b r7657: test addone again after request timeout and destruction to ensure the pipe is still OK
(This used to be commit 9f7f70124fc67109bc9ace7a57490851341ad759)
2007-10-10 13:18:18 -05:00
Andrew Tridgell
dc8961ad42 r7656: added testing of rpc request timeouts and destruction
(This used to be commit eddf41d5e4ca43073b96f96b96dbadf7b8b91df5)
2007-10-10 13:18:18 -05:00
Stefan Metzmacher
be6b73de65 r7401: add config option to disable the TestSleep() test
torture:echo_TestSleep=no

metze
(This used to be commit 74bb55f3ae90871749f34f17a79eabe38d6b437a)
2007-10-10 13:17:50 -05:00
Jelmer Vernooij
c56ddaf7ef r7195: - Fix echo pipe
- Don't allocate strings
- Give higher preference to the [out] part of variables when they
  are being used by another [out] variable. Also make sure that
  [in] variables never use [out] variables (i.e. switch_is() on an
  [in] variable can no longer use an [out] variable).
(This used to be commit 837c83d77a2d1990419c4f3e343616daf8da5799)
2007-10-10 13:17:25 -05:00
Jelmer Vernooij
03c2d642a6 r7159: Improve the messages from pidl's validator module.
Change the IDL file for the echo interface to match the one we use for
Windows. The only thing different between the two files currently is the
names of the scalar types and the handling of strings.
(This used to be commit b264c61061d222347919837600adf809fbadfb13)
2007-10-10 13:17:21 -05:00
Andrew Bartlett
b075827877 r6524: Fix the error we print when the RPC-ECHO test fails.
Andrew Bartlett
(This used to be commit 4fc2a056cd38de7b3e2bc972958b5c104ba57ba7)
2007-10-10 13:16:22 -05:00
Jelmer Vernooij
4c4738938a r5977: Fix uninitialised memory bug in ndr_pull_ref_ptr(). This fixes the
Test_DoublePointer test failure.
(This used to be commit 4089d5f67d6e4121056a63ececb13187fd773636)
2007-10-10 13:11:11 -05:00
Andrew Bartlett
645711c602 r5941: Commit this patch much earlier than I would normally prefer, but metze needs a working tree...
The main volume of this patch was what I started working on today:
 - Cleans up memory handling around DCE/RPC pipes, to have a parent talloc context.
 - Uses sepereate inner loops for some of the DCE/RPC tests

The other and more important part of this patch fixes issues
surrounding the new credentials framwork:

This makes the struct cli_credentials always a talloc() structure,
rather than on the stack.  Parts of the cli_credentials code already
assumed this.

There were other issues, particularly in the DCERPC over SMB handling,
as well as little things that had to be tidied up before test_w2k3.sh
would start to pass.

Andrew Bartlett
(This used to be commit 0453f9d05d2e336fba1f85dbf2718d01fa2bf778)
2007-10-10 13:11:11 -05:00
Jelmer Vernooij
64112074e9 r5465: Add support to multiple levels of pointers in pidl.
Also add a new function to echo.idl that tests this behaviour.
(This used to be commit e5eb5e847e75f2b7b041a66f84d9b919ddf27739)
2007-10-10 13:10:48 -05:00
Jelmer Vernooij
77701f6ca1 r5453: Treat "embedded" arrays (surrounding structures) somewhat
more generically. The default functions for remembering array sizes
are now used rather then a special local variable.
(This used to be commit 5f7882341fa435a495fa7181537b5599e2fc7a0d)
2007-10-10 13:10:47 -05:00
Jelmer Vernooij
ea5ddbcb4d r5452: Add implementation + torture test for echo_Surrounding
(This used to be commit 1b71000cc15a06bd4868fbf4ce5415f5866d29a5)
2007-10-10 13:10:47 -05:00
Stefan Metzmacher
4e43af6c69 r5394: as the timing should be fixed in the server now, don't accept to early replies
anymore, also print out usecs in the debug messages

metze
(This used to be commit 9a657f358e7aa3f96c414de033808de82fdb831a)
2007-10-10 13:09:51 -05:00
Andrew Tridgell
341395db51 r5310: allow for rounding errors in the sleep test
(This used to be commit bd2c55a5193b29b28c4fbde643c302f0d81c95a6)
2007-10-10 13:09:40 -05:00
Andrew Tridgell
131dc76d56 r5197: moved events code to lib/events/ (suggestion from metze)
(This used to be commit 7f54c8a339f36aa43c9340be70ab7f0067593ef2)
2007-10-10 13:09:30 -05:00
Andrew Tridgell
66170ef8b3 r5185: make all the events data structures private to events.c. This will
make it possible to add optimisations to the events code such as
keeping the next timed event in a sorted list, and using epoll for
file descriptor events.

I also removed the loop events code, as it wasn't being used anywhere,
and changed timed events to always be one-shot (as adding a new timed
event in the event handler is so easy to do if needed)
(This used to be commit d7b4b6de51342a65bf46fce772d313f92f8d73d3)
2007-10-10 13:09:29 -05:00
Andrew Tridgell
bef3fbb6db r4888: use the neater calling convention
(This used to be commit d93b6a5b8e9e4bf86a96262db21aa3fc1490e91d)
2007-10-10 13:09:03 -05:00
Stefan Metzmacher
fae215266b r4690: - add support for async rpc server replies
the backend should check for
(dce_call->state_flags & DCESRV_CALL_STATE_FLAG_MAY_ASYNC)
then it's allowed to reply async

then the backend should mark that call as async with
dce_call->state_flags |= DCESRV_CALL_STATE_FLAG_ASYNC;

later it has to manualy set r->out.result
and then send the reply by calling

status = dcesrv_reply(p->dce_call);

NOTE: that ncacn_np doesn't support async replies yet

- implement an async version of echo_TestSleep

- reenable the echo_TestSleep torture test
  (this need to be more strict when we have support for async ncacn_np)

metze
(This used to be commit f0a0dbeb25b034b1333078ca085999359f5f6209)
2007-10-10 13:08:43 -05:00
Andrew Tridgell
ddc10d4d37 r4549: got rid of a lot more uses of plain talloc(), instead using
talloc_size() or talloc_array_p() where appropriate.

also fixed a memory leak in pvfs_copy_file() (failed to free a memory
context)
(This used to be commit 89b74b53546e1570b11b3702f40bee58aed8c503)
2007-10-10 13:08:25 -05:00
Andrew Tridgell
7588a01cb6 r4520: added a enum test function to the echo pipe
(This used to be commit f9e0aa1ab1faac039893db241819907c9c4bb510)
2007-10-10 13:08:17 -05:00
Stefan Metzmacher
13abb52758 r3959: fix compiler warnings
metze
(This used to be commit e28351f710525ca9863210974544a8b1a537e63a)
2007-10-10 13:06:08 -05:00
Andrew Tridgell
90067934cd r3428: switched to using minimal includes for the auto-generated RPC code.
The thing that finally convinced me that minimal includes was worth
pursuing for rpc was a compiler (tcc) that failed to build Samba due
to reaching internal limits of the size of include files. Also the
fact that includes.h.gch was 16MB, which really seems excessive. This
patch brings it back to 12M, which is still too large, but
better. Note that this patch speeds up compile times for both the pch
and non-pch case.

This change also includes the addition iof a "depends()" option in our
IDL files, allowing you to specify that one IDL file depends on
another. This capability was needed for the auto-includes generation.
(This used to be commit b8f5fa8ac8e8725f3d321004f0aedf4246fc6b49)
2007-10-10 13:05:09 -05:00
Andrew Tridgell
ba6d5fcb97 r3324: made the smbtorture code completely warning free
(This used to be commit 7067bb9b52223cafa28470f264f0b60646a07a01)
2007-10-10 13:04:55 -05:00
Andrew Tridgell
aa12305945 r2680: switched the libcli/raw/ code over to use talloc_reference(), which simplifies things quite a bit
(This used to be commit c82a9cf750829c4f6982ca3133295c8599023c4e)
2007-10-10 12:59:21 -05:00
Andrew Tridgell
e84cc8e538 r2500: disable the sleep test in echo until we have a win32 echo server that
does Microsoft style async rpc serving
(This used to be commit 050dcd9b95576e1a9c0cb2144fc01c690853abc0)
2007-10-10 12:58:59 -05:00
Stefan Metzmacher
6b9b169c27 r2443: check return code of event_loop_once() to catch thet cases where the server
closes the connetion and we got EBADF from select() and event_loop_once() fails

metze
(This used to be commit 9c0e50a6f3d628156b4543d5ded89e06be696f64)
2007-10-10 12:58:54 -05:00
Andrew Tridgell
f891ff694b r2105: added a TestSleep() operation to the echo pipe and extended the
RPC-ECHO test to use it to test asynchronous rpc operations.
(This used to be commit a5eb6cad5050928fab593e1f9a82fbfba589120c)
2007-10-10 12:58:25 -05:00
Stefan Metzmacher
45e93c19ef r943: change samba4 to use 'uint8_t' instead of 'unsigned char'
metze
(This used to be commit b5378803fdcb3b3afe7c2932a38828e83470f61a)
2007-10-10 12:56:21 -05:00
Stefan Metzmacher
f9d8f8843d r884: convert samba4 to use [u]int32_t instead of [u]int32
metze
(This used to be commit 0e5517d937a2eb7cf707991d1c7498c1ab456095)
2007-10-10 12:56:15 -05:00
Stefan Metzmacher
0b4da9d7e0 - add 'print' to the DCERPC binding strings
e.g.
  ncacn_np:myserver:[samr,sign,print]

  will now enable the packet debugging

  and the debugging is not bound anymore to the debuglevel >= 2
  in the torture tests

- also the dcesrv_remote module now supports debugging of the packets
  use the 'dcerpc_remote:binding' smb.conf parameter.

metze
(This used to be commit 40abf3c584efed7f977ddd688ea064540e5a5b13)
2004-02-03 14:56:07 +00:00
Andrew Tridgell
f6eb8342cb added auto-generation of the server side boilerplate code for each
pipe.

The server side code gets generated as librpc/gen_ndr/ndr_NAME_s.c and
gets included in the pipe module
(This used to be commit bd3dcfe5820489a838e19b244266bd9126af5eb4)
2003-12-14 13:22:12 +00:00
Andrew Tridgell
86a604429e a fairly major upgrade to the dcerpc system
* added a NDR validator. The way it works is that when the
   DCERPC_DEBUG_VALIDATE_* flags are set the dcerpc system will
   perform NDR buffer validation. On sending a request the packet is
   first marshalled, then unmarahslled, then marshalled again, and it is
   confirmed that the two marshalling results are idential. This
   ensures that our pull and push routines are absolutely in sync, so
   that we can be very confident that if a routine works in the client
   then the corresponding routine must work on the server side. A
   similar validation is performed on all replies.

 * a result of this change is that pidl is fussier about the [ref]
   tag. You can only use it on pointers (which is the only place it
   makes sense)

 * fixed a basic alignment bug in the push side of the NDR code

 * added server side pull/push support. Our dcerpc system is now fully
   ready to be used on the server side.

 * fixed the relative offset pointer list. It must be traversed in
   reverse order on push

 * added automatic value setting for the size parameter in outgoing
   SdBuf structures.

 * expanded the ndr debugging code to always give a message on any
   failure

 * fixed the subcontext push code

 * fixed some memory leaks in smbtorture RPC tests
(This used to be commit 8ecf720206a2eef3f8ea7cbdb1f460664a5dba9a)
2003-11-22 08:11:32 +00:00
Andrew Tridgell
8a8b2da9c9 make the echo idl match the win32 IDL again
(This used to be commit 4b901bd717a48daae24d8f7738169ac3cc5ba7fa)
2003-11-20 01:32:43 +00:00
Andrew Tridgell
10ee36bede switched to a new way of handling unions, so that we can handle
alignment correctly for unions that have non-uint16 discriminants

fixed the union handling in srvsvc.idl. (metze, please take a look at
the changes, your IDL did match what was one the wire in most cases,
but isn't the way IDL is usually coded)
(This used to be commit 7b5d0287298e8505e0ec7b22d75d9f9a8a610031)
2003-11-19 22:10:20 +00:00
Andrew Tridgell
1941b5cef0 started to expand the echo tests to include more interesting test
cases. We fail one of the alignment tests.
(This used to be commit 5bb21e57b844e98cc8f1dc264bc45097c08329e3)
2003-11-19 12:03:11 +00:00
Andrew Tridgell
9b7b5e5c51 use the auto-generated UUID, version and name rather than listing them
in the dcerpc core code
(This used to be commit 16ffeb7c80bfe7f1bfbfce8c98066e9ddbca7686)
2003-11-18 05:01:10 +00:00
Andrew Tridgell
2c0a7165ef * use the new auto-generated debug code method.
* add a couple more info levels to wkssvc
(This used to be commit c69161bdb13745f271b0cfa9a9af349f7a95edc6)
2003-11-18 01:18:24 +00:00
Andrew Tridgell
e62c5c9a8d use [subcontext] to make GetPrinter a bit easier in smbtorture
(This used to be commit a5140985d8f57695b4165c72af217092da6fae5f)
2003-11-17 09:34:19 +00:00
Andrew Tridgell
e8a3825ebc we can now do a level1 NetDfsEnum()
(This used to be commit f32641f73f7ff12b797378b3b533603ff1d526b5)
2003-11-14 07:20:46 +00:00
Andrew Tridgell
9cadbd5775 fixed rpcecho EchoData debug code
(This used to be commit 01cdcba5cdf742599f1ec1ad23c723523cd1e839)
2003-11-13 10:29:58 +00:00
Andrew Tridgell
3031937d56 * fixed conformant arrays in structures
* expanded the rpcecho test

* started adding the NETDFS pipe
(This used to be commit 095ab42cbdd5c1c5ab753e2eb275742ba822c8b9)
2003-11-13 09:26:53 +00:00
Andrew Tridgell
adf6142953 converted the rpcecho pipe to use IDL
(This used to be commit 1b7a7bc4641e4f0e604bc20699c094fa5f49315d)
2003-11-09 07:24:06 +00:00
Andrew Tridgell
46046aa69b yipee! we can now do lsaOpenPolicy() via the new interfaces, without
using any of the old lsa code
(This used to be commit f5bd301ff7befa223a1d761a37ae8f7ce7f1fcd1)
2003-11-04 09:10:31 +00:00
Andrew Tridgell
d8cbe76b86 added support for fragmented sends
(This used to be commit f51a216136b7cc7d4d07d4acb80e0a710d82841a)
2003-11-04 03:38:46 +00:00
Andrew Tridgell
994301bfec added fragmentation support on receive for dcerpc packets. I have
successfully used SourceData with 200M of data in rpcecho
(This used to be commit a9aa7954fe84c925bb158af8b73aa71b7ea84e2b)
2003-11-04 02:28:08 +00:00
Andrew Tridgell
0a427a43c4 added SinkData and SourceData tests for rpcecho
(This used to be commit 7c356350e6148078725de6b6829eb0855771ae17)
2003-11-03 10:01:20 +00:00
Andrew Tridgell
399fff106d added rpcecho EchoData test
(This used to be commit 9c7e4db4712d1b2b7d8125e3ae535efd50b80f58)
2003-11-03 09:18:38 +00:00
Andrew Tridgell
dfc43cdf14 added a helper function to make building rpc functions a bit easier
(This used to be commit a8feb80438680b9ec399c908987c58c4a6a998e6)
2003-11-03 08:37:48 +00:00
Andrew Tridgell
dc2ffe07a8 started adding RPC-ECHO torture cases
(This used to be commit 8cff335dab438aa2dbcca91a717e14ef5a8288dd)
2003-11-03 07:26:30 +00:00