1
0
mirror of https://github.com/samba-team/samba.git synced 2025-02-12 21:58:10 +03:00

161 Commits

Author SHA1 Message Date
Andrew Tridgell
ccd9ddeed6 added auto-generation of the IDL interface tables. This makes two less
places that need to be edited when someone adds a new IDL file.
-
Tim Potter
bdb0dfc370 Implemented SetForm RPC. -
Tim Potter
10b31623fd Add DeleteForm, start cleaning up tests. -
Andrew Tridgell
e3d40e3da6 more epmapper and mgmt magic
protocol 0x1f is interesting - its ncacn_http !
-
Tim Potter
cf8cd44852 Implemented AddForm RPC. The mystery of the useless_ptr has been
solved.  It was a pointer in a union member.

RPC-SPOOLSS tests a bit messy and could do with a cleanup.
-
Andrew Tridgell
f5821b2468 added an rpc scanner. This prints messages like this:
uuid 82273fdc-e32a-18c3-3f78-827929dc23ea  version 0x0000:0x0000  'eventlog'
        24 calls available
        WARNING: local IDL defines 4 calls

when all the WARNINGs are gone then we know we have all the calls :)
-
Andrew Tridgell
a81f659e9e switched to WERROR return codes in the management IDL -
Andrew Tridgell
215852116c by default sign RPC over TCP but not RPC over SMB. I will add command line control soon -
Tim Potter
822750592c Implemented EnumForms and GetForm. -
Andrew Tridgell
448dead14d show an error when the epmapper fails to find an interface -
Andrew Tridgell
4abf5376b0 added auto-determination of the DCERPC over TCP port number by asking
the servers endpoint mapper
-
Andrew Tridgell
c18c9b5585 signed DCERPC over TCP now works !
* moved ntlmssp code into libcli/auth/, and updated to latest ntlmssp
   code from samba3 (thanks Andrew! the new interface is great)

 * added signing/ntlmssp support in the dcerpc code

 * added a dcerpc_auth.c module for the various dcerpc auth mechanisms
-
Andrew Tridgell
8a82050fd6 * fixed byte order in epmapper parsing
* allow rpc transport to be specified on command line in smbtorture
-
Andrew Tridgell
39add48158 initial implementation of dcerpc over tcp. RPC-EPMAPPER works, now to
add epm_Map calls and support the rest of the pipes
-
Andrew Tridgell
8bce61b8af * prepared the dcerpc subsystem for adding the RPC over TCP transport
* fixed a uninitialised variable bug in pidl (found by valgrind)
-
Andrew Tridgell
570ad78525 added tests for epm_Map endpointer map calls -
Andrew Tridgell
4203019698 give far more detail in the EPMAPPER results -
Andrew Tridgell
00f9b0e120 added tests for the remaining calls on the rpc management interface -
Andrew Tridgell
f94bc07990 added the dcerpc remote management interfaces as mgmt.idl, and wrote a
test suite. The test suite dumps all of the interfaces available on
all pipes. There sure are a lot more interfaces on w2k3 than w2k !
-
Andrew Tridgell
6b262ca37c * better diagnostics in ndrdump
* added samr_Connect2()
-
Tim Potter
152af383b8 Modify WINREG test program to recursively enumerate keys in all known
hives.  Limit the recursion depth to ensure the test doesn't run too long.
-
Tim Potter
b4792b7b31 Check NT_STATUS code from dcerpc call function before checking the
WERROR code.
-
Tim Potter
634ea43720 Actually call right function name. -
Tim Potter
cc71bd2a90 Call enumkey for tridge. -
Tim Potter
8f154f8b9f String termination fix.
Re-arrange winreg tests - currently it's failing with an input validation
error on tridge's test pull/push test code.
-
Andrew Tridgell
04eb12b56c reduced the number of magic types we need in mkproto.pl
In general I prefer "struct foo" to just "foo" for most
structures. There are exceptions.
-
Andrew Tridgell
60ced76160 * fixed null terminated string handling
* fixed nested relative offsets in push functions

the spoolss torture test now passes!
-
Andrew Tridgell
4aea2d79dd * fixed handling of relative subcontext unions
* fixed GetPrinter in spoolss after OpenPrinter
-
Andrew Tridgell
9d5078962f * fixed NDR flag inheritance across push subcontexts
* don't consider not doing lsa_QueryInfoPolicy level 11 a failure
   (w2k3 doesn't have this level, w2k does)

 * on a NDR validation failure dump the failed data at level 3
-
Andrew Tridgell
11c0fe548e * 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
-
Andrew Tridgell
8ecf720206 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
-
Tim Potter
5cba48252a Convert all NTSTATUS return codes to WERROR.
Implement all OpenXXX calls, EnumKey, OpenKey, QueryInfoKey.

Started EnumValue but it doesn't work yet.
-
Andrew Tridgell
0eff7c519b fix a smbtorture memory leak -
Andrew Tridgell
f90e5db8f9 print out the UUIDs from the end point mapper -
Andrew Tridgell
d2665f36a7 * 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.
-
Tim Potter
49f1654510 Implement DeleteKey, DeleteValue, FlushKey. -
Tim Potter
c8b87f5feb Start of winreg idl. Implement OpenHKLM, GetVersion and CloseKey. -
Tim Potter
9109cb832a More work on eventlog - still doesn't work. (-: -
Andrew Tridgell
f4cc593a5c added 4 more levels to samr_QueryDisplayInfo() -
Tim Potter
99fff7b1e2 Add initial work on eventlog - doesn't quite work yet. -
Andrew Tridgell
8601305c81 added samr_QueryDisplayInfo() (only level 1 so far) -
Andrew Tridgell
3337906d52 extensive samr_SetUserInfo/samr_QueryUserInfo testing, with
cross-checking of all settable fields
-
Andrew Tridgell
26238b0f8a * fixed level2 of QueryUserInfo
* added per-field testing of SetUserInfo

 * fixed strlen_m()
-
Andrew Tridgell
47128b3d50 started on samr_SetUserInfo()
cope with the 'samrtorturetest' user already existing in the samr test
(to cope with previously failed runs)
-
Andrew Tridgell
d996c880f4 fixed a comment -
Andrew Tridgell
ab4056e25c fixed srvsvc_NetShareEnumAll() -
Richard Sharpe
9810e6f180 Add a 1004 level for srvsvc. -
Tim Potter
2740584867 Added ATSVC pipe. -
Andrew Tridgell
c32c33a791 added samr_LookupRids() and test code -
Andrew Tridgell
f8397cbc85 added samr_LookupNames() and test code -