1
0
mirror of https://github.com/samba-team/samba.git synced 2025-02-03 13:47:25 +03:00

4432 Commits

Author SHA1 Message Date
Andrew Tridgell
175e947579 * enable RPC/NDR validation in all smbtorture code
* allow us to distinguish between null arrays and zero length arrays,
   by making the allocation size a minimum of 1 on array pull
(This used to be commit 11c0fe548ecfb03424f51e1354b86d4692e8f07c)
2003-11-22 08:41:40 +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
Tim Potter
c674672a08 Convert all NTSTATUS return codes to WERROR.
Implement all OpenXXX calls, EnumKey, OpenKey, QueryInfoKey.

Started EnumValue but it doesn't work yet.
(This used to be commit 5cba48252a8b3338a296d7ec8fa8ccba43dd190e)
2003-11-22 05:34:25 +00:00
Andrew Tridgell
32831d5af9 fix a smbtorture memory leak
(This used to be commit 0eff7c519b87d9c69da61a7dfeecd0483f1ad7e9)
2003-11-21 22:00:38 +00:00
Andrew Tridgell
55410a073f print out the UUIDs from the end point mapper
(This used to be commit f90e5db8f9d1fa7062762af0ab3e0696998bf8bb)
2003-11-21 13:27:58 +00:00
Andrew Tridgell
a465add90f * changed the way strings are handled in pidl to a much more general
interface. We now support an arbitrary set of flags to each parser,
  and these can be used to control the string types. I have provided
  some common IDL string types in librpc/idl/idl_types.h which needs to
  be included in every IDL file.

* added IDL for the endpoint mapper. Added a test suite that enumerates
  all endpoints on the server.
(This used to be commit d2665f36a75b482ff82733f72ffac938c2acf87a)
2003-11-21 13:14:17 +00:00
Tim Potter
82d6f5587b Implement DeleteKey, DeleteValue, FlushKey.
(This used to be commit 49f1654510f0ea7681b386296b67282791c4b319)
2003-11-21 06:14:14 +00:00
Tim Potter
49c02c6634 Start of winreg idl. Implement OpenHKLM, GetVersion and CloseKey.
(This used to be commit c8b87f5feb7756c7a5b38135517788c9f4ade36f)
2003-11-21 05:28:36 +00:00
Tim Potter
a20352959e More work on eventlog - still doesn't work. (-:
(This used to be commit 9109cb832a3807b3eee9e52c8c533e2bf0c8007a)
2003-11-21 03:07:02 +00:00
Andrew Tridgell
38ce2ef4bb added 4 more levels to samr_QueryDisplayInfo()
(This used to be commit f4cc593a5c7d75adaced2c33dd83c2ec741751be)
2003-11-21 02:19:47 +00:00
Tim Potter
20730626af Add initial work on eventlog - doesn't quite work yet.
(This used to be commit 99fff7b1e24ee7231fa41ca9cb85382637f2b2b0)
2003-11-20 21:52:40 +00:00
Andrew Tridgell
ddd2f9ced0 added samr_QueryDisplayInfo() (only level 1 so far)
(This used to be commit 8601305c8100f03ffaee4754eae12e9b332508a4)
2003-11-20 12:10:41 +00:00
Andrew Tridgell
fe6fd991ee extensive samr_SetUserInfo/samr_QueryUserInfo testing, with
cross-checking of all settable fields
(This used to be commit 3337906d52e95c127d64f81f9fc99aeb8a8d1ce6)
2003-11-20 10:53:08 +00:00
Andrew Tridgell
d4dfcda78e * fixed level2 of QueryUserInfo
* added per-field testing of SetUserInfo

 * fixed strlen_m()
(This used to be commit 26238b0f8a5752bb0f611c4aa492b964e419209a)
2003-11-20 10:29:54 +00:00
Andrew Tridgell
f3a4d83711 started on samr_SetUserInfo()
cope with the 'samrtorturetest' user already existing in the samr test
(to cope with previously failed runs)
(This used to be commit 47128b3d50b3481175a8b2580624316a4f7677db)
2003-11-20 07:20:59 +00:00
Andrew Tridgell
0b0295c232 fixed a comment
(This used to be commit d996c880f49c89c22775ad7e048dec6d5d5f82c9)
2003-11-20 05:46:45 +00:00
Andrew Tridgell
a6e5654b3d fixed srvsvc_NetShareEnumAll()
(This used to be commit ab4056e25ccfde5136ff3a1cd5d1efa78f1eee1b)
2003-11-20 05:34:02 +00:00
Richard Sharpe
4730469cd8 Add a 1004 level for srvsvc.
(This used to be commit 9810e6f180564247dee584d197180d394b208c24)
2003-11-20 04:45:16 +00:00
Tim Potter
8f0f97b078 Added ATSVC pipe.
(This used to be commit 274058486766f7a1094918702e7bc225aa938b2e)
2003-11-20 03:27:56 +00:00
Andrew Tridgell
52cae6b908 added samr_LookupRids() and test code
(This used to be commit c32c33a791dd42676ca7fa47aae264e8d8ea8339)
2003-11-20 03:18:07 +00:00
Andrew Tridgell
308cc429eb added samr_LookupNames() and test code
(This used to be commit f8397cbc8554b721093b8ae6ac6fb26d0ee9a7cf)
2003-11-20 03:09:19 +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
f01e89e9e0 EnumPrinterData in spoolss now works
(This used to be commit af07ca7fbcb4118f2415218d0c48798119b7c6b2)
2003-11-20 01:28:33 +00:00
Andrew Tridgell
376ba1921f some errors are expected in SAMR and LSA tests - don't fail the test
when they are given
(This used to be commit 6e2d3aa433cc77f2ac9f2a7c807bc2668a8b7a9a)
2003-11-20 01:02:09 +00:00
Andrew Tridgell
25de3041e6 fixed wkssvc idl and test code for TransportEnum
(This used to be commit 42639a8f66e8d4241b24935772552f235f863096)
2003-11-19 23:18:35 +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
4e18040236 srvsvc IDL and test code from metze. Thanks!
(This used to be commit 54d3cb22dc0ddc46eb114aa104e0660b3a437cb2)
2003-11-19 09:15:46 +00:00
Andrew Tridgell
7f086443f5 init samr and lsa names so the debug display looks right
(This used to be commit 343728fad47f46e404be15d44c5b66f870302d9d)
2003-11-19 03:20:32 +00:00
Andrew Tridgell
0c10913303 added another wkssvc info level
(This used to be commit fb0aa83a2b27699bf47e1ade413b7f4738b5fa79)
2003-11-18 11:52:06 +00:00
Andrew Tridgell
bdf0578621 added samr_CreateUser() samr_DeleteUser(). The test suite creates a
test user called "samrtorturetest" and then deletes it. The next step
is to do all possible user operations on that temporary user.
(This used to be commit 41fc922954bd8ec461a79a22cc903e63902c7401)
2003-11-18 10:21:05 +00:00
Andrew Tridgell
8f38cc8df8 cope with no printers returned from EnumPrinters
(This used to be commit 8c49669dbec96df365d1866df24a17c1ff2c6cd0)
2003-11-18 09:19:34 +00:00
Andrew Tridgell
20f1530a11 changed wks to wkssvc (suggestion from metze). Started adding samr_CreateUser().
(This used to be commit 04e9269c1e37c9c2984ee2886fa6c0eda5c19669)
2003-11-18 08:03:06 +00:00
Tim Potter
30daed2f7c Working on EnumPrinterData. There appears to be an alignment problem
after reading a non-empty DATA_BLOB in the reply.
(This used to be commit 3165bf532f6b5a074f20f38a9af56325eedbb1c2)
2003-11-18 05:54:14 +00:00
Andrew Tridgell
06d0f61aa4 added samr_QuerySecurity() call that displays the ACL for any handle.
(This used to be commit 5bbeaaa3d13c838d014e7689b0fcf7374c8c7f57)
2003-11-18 05:20:54 +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
ec7a2944cd fill in skeletons for the rest of the function calls in wkssvc (based
on function names in ethereal)

implement TransportEnum - quite a cute call, you can ask for the
workstations list of network transports, including its ethernet
address.
(This used to be commit 62d7e9819c95c906d1094f711bc60cf58def30f6)
2003-11-18 03:28:01 +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
f1462caf61 remove an unused variable
(This used to be commit 1a885e4abe47d3442cba1dd6d2286ae276dd8ecc)
2003-11-17 12:46:11 +00:00
Andrew Tridgell
892aa2fc75 added wkssvc.idl and test code
I think this is our first complete pipe for Samba4 (albeit a simple
one). Of course, there may be lots more info levels that Samba3 didn't
do. Time to explore :)
(This used to be commit 3305226140793f39af827b63c270486c1966718e)
2003-11-17 12:43:18 +00:00
Andrew Tridgell
d285c6f14f * add another WERR err code
* use the top-level function argument printing to show more detail in
   RPC-* tests
(This used to be commit 33bb8785625b1845750f28f2d810e7096afe9f8e)
2003-11-17 11:55:56 +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
d1feb4c6d5 call OpenPrinterEx on each printer on the server, and then call
GetPrinter with all info levels on each printer
(This used to be commit 136b3cfc0460315e924c3d9c8328c1850fc21fba)
2003-11-17 04:56:59 +00:00
Andrew Tridgell
bf48b6e69a added OpenPrinter and a test function. Note that the Samba3 structure
for OpenPrinter was wrong.
(This used to be commit 186ddbbf8774d0960852ea9186c8e4e6f7be7a0f)
2003-11-17 03:38:13 +00:00
Andrew Tridgell
90916de4a5 * more info levels for EnumPrinter
* use WERROR return type in spoolss EnumPrinter
(This used to be commit 8301a6b6ad45f76a42d0fcab6347c187eee615a9)
2003-11-17 02:58:10 +00:00
Andrew Tridgell
657b4d2abd nicer method of handling spoolss EnumPrinters
this also handles the return of several printers (an array of relative
subcontexts)
(This used to be commit 060421c7dc9aa611fe4160843a4f76498ab16bf4)
2003-11-17 02:18:11 +00:00
Andrew Tridgell
ae4cb40100 use nstring and [relative] to support levels 1 and 2 of EnumPrinters
fully
(This used to be commit 69c6017c945bdd7d1945f22fcad49112ba6a2d2d)
2003-11-16 13:49:14 +00:00
Andrew Tridgell
ea266c0625 added support for level1 of EnumPrinters in spoolss. This uses a
number of "magic" add-ons to IDL to make it less painful, hopefully
this will make IDL generation useful for horrible systems like spoolss
(This used to be commit e18dba7d5a957ef82e8f91733a0bf95d579dcd7a)
2003-11-16 11:36:59 +00:00
Tim Potter
274667be32 Added tests for EnumPrinters and ClosePrinter.
(This used to be commit 9f3b84c7d7a7e6316b2cc051b01efcfb679534ad)
2003-11-16 04:20:29 +00:00
Andrew Tridgell
5bd51a1d5d the returned policy handle in spoolss_OpenPrinterEx() is pass by
reference

(tim, my apoligies if this conflicts with an uncomitted fix from you)
(This used to be commit fa0872e66359603a52813af13b45fdaeca98f5d0)
2003-11-15 20:56:18 +00:00