summaryrefslogtreecommitdiff
path: root/source4/librpc/ndr/ndr.c
AgeCommit message (Collapse)AuthorFilesLines
2007-10-10r327: fixed an uninitialised variable found by valgrindAndrew Tridgell1-0/+1
(This used to be commit 10844cf925d6a8164191a6dbbcaacc7bf8179933)
2004-02-03- add 'print' to the DCERPC binding stringsStefan Metzmacher1-4/+0
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)
2003-12-19addition of samr_SetSecurity() from kaiAndrew Tridgell1-1/+1
we needed to adjust the alignment of [relative] buffers for this to work. I wonder if they are always 4 byte aligned? (This used to be commit 9cd0a0b8b976e62c6da71b7e55cba5b38483620d)
2003-12-12 * the RPC-ECHO pipe now works in smbd, as long as the data sizesAndrew Tridgell1-1/+1
don't cause fragmented pdus (I'll add fragments shortly) * change data_blob_talloc() to not zero memory when the 2nd argument is NULL. The zeroing just masks bugs, and can't even allow a DOS attack * modified pidl to ensure that [ref] arguments to the out side of functions are allocated when parsing the in side. This allows rpc backends to assume that [ref] variables are all setup. Doesn't work correctly for [ref] arrays yet * changed DLIST_ADD_END() to take the type instead of a tmp variable. This means you don't need to declare a silly tmp variable in the caller (This used to be commit 46e0a358198eeb9af1907ee2a29025d3ab23b6d1)
2003-11-28added auto-generation of the IDL interface tables. This makes two lessAndrew Tridgell1-20/+0
places that need to be edited when someone adds a new IDL file. (This used to be commit ccd9ddeed679baa6cbb05ac728b381b50420e00f)
2003-11-26signed DCERPC over TCP now works !Andrew Tridgell1-27/+24
* 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 (This used to be commit c18c9b5585a3e5f7868562820c14f7cb529cdbcd)
2003-11-24added the dcerpc remote management interfaces as mgmt.idl, and wrote aAndrew Tridgell1-0/+19
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 ! (This used to be commit f94bc079902d725b63155d8d2de5bf408c6e7335)
2003-11-23added a tool called 'ndrdump' that allows you to dump NDR dataAndrew Tridgell1-1/+1
according to the current IDL taking the data from a file. In combination with a little hack to ethereal to extract data this is a quite powerful IDL development tool. (This used to be commit 229a325c3cf0d4dc1e910ed32e1d7391040aeba1)
2003-11-23ooh, this is fun!Andrew Tridgell1-0/+10
I have recoded the core dcerpc packet structures (all the PDUs etc) in terms of IDL, which means we now use pidl to generate all the code for handling the most basic dcerpc packets. This is not normally possible as it isn't completely valid NDR, but pidl has a number of extensions that make it quite easy. This also means we get the server side dcerpc marshalling/unmarshalling code for free. (This used to be commit 92bcad02587c3c1b31b523ee9fa46658a6cef9ff)
2003-11-22 * fixed null terminated string handlingAndrew Tridgell1-1/+1
* fixed nested relative offsets in push functions the spoolss torture test now passes! (This used to be commit 60ced76160e4f4e2b511ebbeec31130c8ebcdd22)
2003-11-22 * fixed NDR flag inheritance across push subcontextsAndrew Tridgell1-0/+3
* 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 (This used to be commit 9d5078962f0f8aef3360dea4c4774cf8de1fdc26)
2003-11-22a fairly major upgrade to the dcerpc systemAndrew Tridgell1-19/+144
* 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-21cleaner handling of relative pointers to stringsAndrew Tridgell1-3/+3
(This used to be commit 4022e710755a61a3439f739a78fa6965b9b7788e)
2003-11-21* changed the way strings are handled in pidl to a much more generalAndrew Tridgell1-18/+60
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-21avoid calling the print routines completely if debug level < 2Andrew Tridgell1-6/+7
(This used to be commit 63b9d2803c9e5b44680a72b127f6a58eb44a3c60)
2003-11-21only display really verbose packet dumps when smbtorture is run atAndrew Tridgell1-2/+6
debug level 2 or above. This is more useful for checking that something hasn't broken without swamping yourself with output. (This used to be commit 53ff3a572a23c2f45c5d503255bc6b535ca99134)
2003-11-20added samr_LookupNames() and test codeAndrew Tridgell1-0/+1
(This used to be commit f8397cbc8554b721093b8ae6ac6fb26d0ee9a7cf)
2003-11-19switched to a new way of handling unions, so that we can handleAndrew Tridgell1-7/+7
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-17 * add another WERR err codeAndrew Tridgell1-1/+19
* use the top-level function argument printing to show more detail in RPC-* tests (This used to be commit 33bb8785625b1845750f28f2d810e7096afe9f8e)
2003-11-17use [subcontext] to make GetPrinter a bit easier in smbtortureAndrew Tridgell1-0/+6
(This used to be commit a5140985d8f57695b4165c72af217092da6fae5f)
2003-11-17call OpenPrinterEx on each printer on the server, and then callAndrew Tridgell1-0/+29
GetPrinter with all info levels on each printer (This used to be commit 136b3cfc0460315e924c3d9c8328c1850fc21fba)
2003-11-17nicer method of handling spoolss EnumPrintersAndrew Tridgell1-15/+57
this also handles the return of several printers (an array of relative subcontexts) (This used to be commit 060421c7dc9aa611fe4160843a4f76498ab16bf4)
2003-11-16use nstring and [relative] to support levels 1 and 2 of EnumPrintersAndrew Tridgell1-2/+74
fully (This used to be commit 69c6017c945bdd7d1945f22fcad49112ba6a2d2d)
2003-11-16added support for level1 of EnumPrinters in spoolss. This uses aAndrew Tridgell1-0/+14
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-16use the "subcontext" magic flag for sec_desc_bufAndrew Tridgell1-0/+35
(This used to be commit 05ed2f6dc986111ce448123c91380f9340799ecc)
2003-11-15added lsa_QuerySecObj() and the necessary sec_desc_buf supporting codeAndrew Tridgell1-0/+14
also adding printing of security descriptors (This used to be commit 1f93cbc1d597b973ab1a5005ede093c1bcefff87)
2003-11-14we can now do a level1 NetDfsEnum()Andrew Tridgell1-0/+19
(This used to be commit f32641f73f7ff12b797378b3b533603ff1d526b5)
2003-11-13* fixed conformant arrays in structuresAndrew Tridgell1-32/+23
* expanded the rpcecho test * started adding the NETDFS pipe (This used to be commit 095ab42cbdd5c1c5ab753e2eb275742ba822c8b9)
2003-11-12lsa_PrivilegeSet seems to be a very strange beast indeed. It has aAndrew Tridgell1-14/+38
constant sized array of size 1 at the end? (This used to be commit 2cc354bd82456cb5598eb4acb40a5ada1459d08d)
2003-11-11start using automatic union printingAndrew Tridgell1-1/+19
(This used to be commit e81040a902f67fd10ca1f9c9ca1c22bc95e36005)
2003-11-11automatically generate ndr_print_*() functions for every IDLAndrew Tridgell1-0/+61
structure. This allows easy debug and test tool writing without having to write functions that print every element of complex structures. (This used to be commit 81d6181172e36c6fbae0907550a29511ce708574)
2003-11-09converted the rpcecho pipe to use IDLAndrew Tridgell1-4/+3
(This used to be commit 1b7a7bc4641e4f0e604bc20699c094fa5f49315d)
2003-11-09added idl, generated code and test code for lsa_LookupSidsAndrew Tridgell1-1/+10
(This used to be commit afa1ff5f08fceba3d34b4e0965fe7e0c0143ede9)
2003-11-08- corrected some lsa idlAndrew Tridgell1-0/+50
- updated lsa parse code from pidl (This used to be commit 3983b2aee77b0e093847bfc02e02b83ab281f5dd)
2003-11-06another major bit of restructuring of rpc in Samba4. Mostly movingAndrew Tridgell1-0/+187
files around, but also added the first bits of auto-generated code for the lsa pipe. I haven't updated the Makefile to call pidl yet, so for now the code was cut-and-pasted into librpc/ndr/ndr_lsa.c manually (This used to be commit 6b222d3b6541ee74cf8bf3f0913cd444903ca991)