summaryrefslogtreecommitdiff
path: root/source4/librpc/ndr
AgeCommit message (Collapse)AuthorFilesLines
2007-10-10r7186: add [relative_base] property, which is allowed on typedef'sStefan Metzmacher2-53/+129
(maybe we could add them to elements latter...) with this property all relative pointers from inside the struct or union are relative to the struct/union start metze (This used to be commit c0dd18326c058e3e218d43f48ecff418f4b0b51e)
2007-10-10r7184: remove unused ndr_pull/push_struct_start/end() functionsStefan Metzmacher1-30/+0
metze (This used to be commit 95d3286a327467c32ee25fcac913fc5f3113a74b)
2007-10-10r7182: remove current support for RELATIVE_CURRENT, this will be replaced ↵Stefan Metzmacher2-15/+2
with a better aproach later metze (This used to be commit 9a4e9f68fbddaae3fc86e30d39b69fc76261c0ea)
2007-10-10r7181: add functions to calculate the buffer size needed for array buffer in ↵Stefan Metzmacher1-0/+54
the spoolss_Enum* functions they will be later used in the spoolss server code metze (This used to be commit 539fe32cedb73be0520675a1052cba476e4974d2)
2007-10-10r7120: make use of the new 'noopnum' property and get rid of handwrittenStefan Metzmacher1-865/+164
parsing code for the spoolss_Enum* functions, there still same handwritten code needed but just to stack the autogenerated code into the correct way metze (This used to be commit 155d18e8b78afebfb4a84e43e3b4d8fc6c9cc4e2)
2007-10-10r6973: Merge new version of pidl into the main SAMBA_4_0 branch.Jelmer Vernooij3-120/+5
The main difference in this new version is the extra data structure generated between the IDL data structure and the NDR parser: IDL -> NDR -> { ndr_parser, ndr_header, eparser, etc } This makes the ndr_parser.pm internals much more sane. Other changes include: - Remove unnecessary calls with NDR_BUFFERS (for example, GUID doesn't have any buffers, just scalars) as well as some (unnecessary) nested setting of flags. - Parse array loops in the C code rather then calling ndr_pull_array(). This allows us to have, for example, arrays of pointers or arrays of pointers to arrays, etc.. - Use if() {} rather then if () goto foo; everywhere - NDR_IN no longer implies LIBNDR_FLAG_REF_ALLOC - By default, top level pointers are now "ref" (as is the default in most other IDL compilers). This can be overridden using the default_pointer_top() property. - initial work on new ethereal parser generators by Alan DeKok and me - pidl now writes errors in the standard format used by compilers, which is parsable by most editors - ability to warn about the fact that pidl extension(s) have been used, useful for making sure IDL files work with other IDL compilers. oh, and there's probably some other things I can't think of right now.. (This used to be commit 13cf227615f6b9e0e5fa62e59197024410254f01)
2007-10-10r6932: Comment out static function - not used anywhere?Tim Potter1-0/+6
(This used to be commit 742989c952421ebdf2d21c98e1de1b2b74b9f435)
2007-10-10r6795: Make some functions static and remove some unused ones.Jelmer Vernooij1-2/+2
(This used to be commit 46509eb89980bfe6dabd71264d570ea356ee5a22)
2007-10-10r6746: added ndr_push_union_blob() for pushing IDL unions into a DATA_BLOBAndrew Tridgell1-0/+23
(This used to be commit dc25be9d69a65680f7942ed29c2d791d6ce7248a)
2007-10-10r6731: add a useful function for getting a guid with all bits to 0Stefan Metzmacher1-0/+10
metze (This used to be commit 161ecce7441649629b97ce1ca903b9704e06f66b)
2007-10-10r6720: added support for the remaining 2 types of CLDAP netlogonAndrew Tridgell2-0/+40
response. To work around the fact that the type of the returned data is not encoded in the packet, this required adding ndr_pull_union_blob() which allows us to pull a blob into a union with a specified switch value, in this case the switch value comes from the calling NtVer field. (This used to be commit bd27e626c27be72913d1a1569ee6e2e2711df84e)
2007-10-10r6690: added ndr_pull_struct_blob_all(), which is like ↵Andrew Tridgell1-0/+21
ndr_pull_struct_blob() but checks that all bytes are consumed (This used to be commit 7951e9bd647b35d2f92d7ba4dbbc2ac05f31491a)
2007-10-10r6574: send a value for embedded ref pointers,Stefan Metzmacher1-1/+1
(this fixes the doublepointer test against w2k3) but we accept zero pointers on the receive side, because it's used in DRSUAPI metze (This used to be commit 748ab5449bcc5b47f5ceaa83277bf8084c44ec56)
2007-10-10r6572: add "string_array" as new scalar type for handling SPOOLSS string array'sStefan Metzmacher1-0/+72
metze (This used to be commit 23b529ee090e1858fc18794b949f7e466fa82b0e)
2007-10-10r6519: move string handling functions to a seperate fileStefan Metzmacher3-476/+500
metze (This used to be commit a29d52817ce943c15f6896b74273df739867c8f7)
2007-10-10r6294: - add obfuscate support, which is used in MAPI rpc's, (the ^= 0xA5 ↵Stefan Metzmacher1-0/+52
stuff), based on a patch from j.kerihuel@openchange.org - remove unused $ndr_flags argument for the ParseCompression*Start() function's metze (This used to be commit 27ccdd61822ba1a24244086522b9f8fe97fe0a78)
2007-10-10r6287: sorted out a small but surprisingly tricky dependency problem with theAndrew Tridgell2-77/+136
ndr code for handling sids and security descriptors now that we have a sid in the nbt IDL (This used to be commit f8e77fcdeac704aed5e501aa9108f3ed0ab26ca4)
2007-10-10r6191: fix spoolss_Enum* push codeStefan Metzmacher1-3/+9
metze (This used to be commit e66aa87f148d04f4c44b08555345600b8a6278d4)
2007-10-10r6189: move function to the right placeStefan Metzmacher1-8/+5
metze (This used to be commit 08d22a07cfa84fe959320058e8574c8983e1d71f)
2007-10-10r6188: correct fix for rev 6182Stefan Metzmacher1-6/+2
we should start with an empty switch_list in ndr_print as we do for ndr_pull/ndr_push metze (This used to be commit 848f553117b369fc6697086b3f7d36dd17b60f5b)
2007-10-10r6182: Jelmer, I think we need to initialize the switch_list, else we areRichard Sharpe1-0/+4
crash city. (This used to be commit 6526f21fb72094e8ff62bfc2693a49a3b1679a95)
2007-10-10r6181: Use ndr_print_set_switch_value() here as well.Jelmer Vernooij1-1/+2
(This used to be commit 4da9d1d5c277eb65d0fe5bf5c4690531dcfb85de)
2007-10-10r6180: Use token_lists for storing switch valuesJelmer Vernooij2-18/+14
(This used to be commit f66e11137eed69b44f0739f1064625cbd96243bd)
2007-10-10r6179: - add new spoolss tests for all spoolss_Enum*() calls which didn't needStefan Metzmacher1-0/+274
a handle as parameter, EnumPorts EnumPrinterDrivers EnumMonitors EnumPrintProcessors EnumPrinters we now do cross checks between the different info levels and sore the results in a global context, so that we later can add cross checks between the different object types - add idl for EnumMonitors and EnumPrintProcessors metze (This used to be commit 92a3721bc7a28d521090b10eb3b1eed089036432)
2007-10-10r6134: add a new type dom_sid28 which is a 28 byte fixed buffer with a ↵Stefan Metzmacher1-1/+65
dom_sid in it metze (This used to be commit 460d1b089e494efaeb0c8c7fd4601a9ef57123c5)
2007-10-10r6129: - add our own MSZIP decompression implementationStefan Metzmacher2-99/+56
(taken from cabextract.c from KDE) this code maybe need to be rewritten and the compression side needs to be done, but for now it seems to works - remove the dependency to zlib metze (This used to be commit 5e8558c5b4365a494aa054c3e08d4084b319e6e5)
2007-10-10r6114: the marker is const and is 0x434B 'CK'Stefan Metzmacher1-5/+13
metze (This used to be commit 4b88ff29715a98c728cf70db4889daafed8eeeb2)
2007-10-10r6112: try to decompress all chunks and put them togetherStefan Metzmacher1-38/+73
it produces the correct DATA_BLOB length, but only the first chunk is successfull decompressed... metze (This used to be commit 0d44d077975d756023f1dcc8d2c3ebf06305e355)
2007-10-10r6099: use the enum print functionStefan Metzmacher1-1/+1
metze (This used to be commit ff32e2182e3f11b1b51110c9d3f34bc8781dec0b)
2007-10-10r6065: revert test valueStefan Metzmacher1-1/+1
metze (This used to be commit fca4dc4827c98c02051165c1aedf5bdc5354bdda)
2007-10-10r6061: add start of compression support in our rpc codeStefan Metzmacher2-0/+182
this is not complete cuurently... but I want other people to test it and help me on finishing it. (try to change the #if 0 in torture/rpc/drsuapi.c into #if 1) metze (This used to be commit 335adef37082a78e0426decb715629bd778e6582)
2007-10-10r5986: Fix the build. Metze, could you please verify that this fix is correct?Jelmer Vernooij1-3/+3
(This used to be commit f3006e623bcf65a05238fbd3362ee958b948e70b)
2007-10-10r5977: Fix uninitialised memory bug in ndr_pull_ref_ptr(). This fixes theJelmer Vernooij1-2/+1
Test_DoublePointer test failure. (This used to be commit 4089d5f67d6e4121056a63ececb13187fd773636)
2007-10-10r5866: Add InitShutdown IDL and torture test.Jelmer Vernooij1-0/+14
Implement push side of NDR_LEN4|NDR_NOTERM strings (pull side was already present) (This used to be commit ea61ec1122841716ed5d90085ba79e7bf691bd6a)
2007-10-10r5828: add some idl for DsAddEntry()Stefan Metzmacher1-5/+16
metze (This used to be commit 3e6ec811288d74921bf3e393213e75d928156772)
2007-10-10r5800: fix recursiv printing in ndr_print_DsGetNCChangesInfo1()Stefan Metzmacher1-0/+51
metze (This used to be commit 1084ad4bfce6bc20537f5bfccb5a25b60f503b32)
2007-10-10r5799: more DsGetNCChanges updates, I'm starting to understand it...Stefan Metzmacher1-0/+10
also add a really simple torture test for DsGetNCChanges metze (This used to be commit bcde67a7eff9ad82919e90fd64c02a17610c6f0e)
2007-10-10r5797: - add idl property [subcontext_size()]Stefan Metzmacher1-16/+39
this can be used like this [subcontext_size(28),subcontext(0)] dom_sid sid; this descripes a fixed 28 byte buffer which contains a dom_sid, and the rest of the buffer is padded with zero bytes if the dom_sid doesn't need all 28 byte in it's ndr encoding. - only push and pull the subcontext when we are in the NDR_SCALARS section (tridge, jelmer: I hope this is correct for all cases...!?:-) metze (This used to be commit 483bb1418fd5c70c418142ade80c1e286adfa05a)
2007-10-10r5796: add ndr_* function for int8 and int16Stefan Metzmacher1-24/+75
metze (This used to be commit 8ac0928a914c1cee3f0493b515f03c6422a8b71a)
2007-10-10r5775: Remove some unused functions (unions are no longer as special as they ↵Jelmer Vernooij2-24/+7
used to be) Add oxid mapping table support in DCOM (This used to be commit e193555f0eec2dda8c8760e9668181200fef0a1e)
2007-10-10r5765: remove unused varStefan Metzmacher1-1/+0
metze (This used to be commit a8f7c3e59f35127b51d4afc551b71f21886f4565)
2007-10-10r5764: add support for embedded ref pointersStefan Metzmacher1-1/+24
metze (This used to be commit 112043b1809a96b1a39ade71ea2885c0d792c79f)
2007-10-10r5736: fix to avoid endless recursion in ndr_size_*() calculationStefan Metzmacher2-2/+11
metze (This used to be commit eaac0f214703f91f186eb54f97e15e56461762bd)
2007-10-10r5674: - Re-enable DCOM support.Jelmer Vernooij1-0/+5
- Always put IID in vtables (useful for asserts) - Add table to keep track of DCOM proxy classes - Bunch of smaller bug fixes (This used to be commit 26d5a0b92c66bc86d0c26f687f83fa712342ac32)
2007-10-10r5672: Use switch_type() and the token storage mechanism for unions:Jelmer Vernooij3-2/+32
- Makes union handling less special - Allows unions in arrays, etc - Compatible with midl - Pidl will warn about switch_type() and the type of the switch_is() variable being different (This used to be commit dc6b4ffc82a191631bc16a4b93a4916a39183ec6)
2007-10-10r5663: Revert some changes I didn't mean to commit...Jelmer Vernooij3-32/+2
(This used to be commit 54e0be6f1eccbd870eb0e60ae8cdb90d2dc7f657)
2007-10-10r5661: Be a little stricter on syntax regarding arrays. A pointer to anJelmer Vernooij3-2/+32
array can now only be : type *name[]; rather then : type *name; which was supported in the past. Warnings will be given when the first syntax is used. Reasons for this change in behaviour include improved readability and the fact that the second format makes dealing with multiple levels of pointers harder. (This used to be commit a416de5825c540fd3741731c4be05e9a659a6fdb)
2007-10-10r5506: Simplify the use of subcontexts and make them a bit less a special case.Jelmer Vernooij1-76/+2
(This used to be commit 48d54a9b57c0b233c7c60392b23876b426bbdec1)
2007-10-10r5504: fix typoStefan Metzmacher1-1/+1
metze (This used to be commit 2bb29cc68ae795bbb4baa12501103ae9555f1898)
2007-10-10r5490: The big (D)COM commit! :-) Contains most of the changes described in theJelmer Vernooij1-0/+1
DCOM paper in lorikeet. This is the result of 1.5 months work (mainly figuring out how things *really* work) at the end of 2004. In general: - Clearer distinction between COM and DCOM. DCOM is now merely the glue between DCE/RPC+ORPC and COM. COM can also work without DCOM now. This makes the code a lot clearer. - Clearer distinction between NDR and DCOM. Before, NDR had a couple of "if"s to cope with DCOM, which are now gone. - Use "real" arguments rather then structures for function arguments in COM, mainly because most of these calls are local so packing/unpacking data for every call is too much overhead (both speed- and code-wise) - Support several mechanisms to load class objects: - from memory (e.g. part of the current executable, registered at start-up) - from shared object files - remotely - Most things are now also named COM rather then DCOM because that's what it really is. After an object is created, it no longer matters whether it was created locally or remotely. There is a very simple example class that contains both a class factory and a class that implements the IStream interface. It can be tested (locally only, remotely is broken at the moment) by running the COM-SIMPLE smbtorture test. Still to-do: - Autogenerate parts of the class implementation code (using the coclass definitions in IDL) - Test server-side - Implement some of the common classes, add definitions for common interfaces. (This used to be commit 71fd3e5c3aac5f0002001ab29d2248e6c6842d6f)