summaryrefslogtreecommitdiff
path: root/source4/build/pidl/ndr.pm
AgeCommit message (Collapse)AuthorFilesLines
2007-10-10r7122: Some cleanups, simplification of the code.Jelmer Vernooij1-68/+7
(This used to be commit 277f26edacccb3a3f7a90629fd6ea1f21d9f6530)
2007-10-10r7121: More subcontext fixes. A subcontext does not always imply internally ↵Jelmer Vernooij1-1/+0
deferred data, though it might. (This used to be commit cf522ba372216da3dae0c534a6a698c21a484ab7)
2007-10-10r7119: the content of a subcontext can contain deferred data,Stefan Metzmacher1-1/+1
but for the caller a subcontext is like a scalar... the first point is more important and is fixed with this commit, however it would be nice if we could make them look like scalars to the callers later metze (This used to be commit 8a16aa6401ff57624e35b785b8f6a6acda56ea1f)
2007-10-10r7109: Change noid() to noopnum() so it isn't confusing to people familiar ↵Jelmer Vernooij1-1/+1
with id() (This used to be commit 7721fc727426ae9fcc26afa773f855aa232df637)
2007-10-10r7102: fix subcontext(0)Stefan Metzmacher1-2/+3
metze (This used to be commit 81c878b7b2e0cb5f4c042fab4d27953c3ef1e9c9)
2007-10-10r7098: - make use of the NDR table instead of the IDL table in the client ↵Stefan Metzmacher1-3/+8
and server generation - add 'noid' property to allow functions to be not present in the function table, and not generate client and server functions for them - print out a warning about [id()] not being correctly supported yet metze (This used to be commit 189730d1430e7f728d62dd5dc52f2a90c1a556d7)
2007-10-10r7084: - readd the work from rev 6516,6517,6572Stefan Metzmacher1-46/+4
- use a single list of scalars - let "string" not be so special anymore - fix support for "string_array" metze (This used to be commit e1fa7ae6c8420dc582578e084b9c0d641bcfbd73)
2007-10-10r7059: Use namespaces for pidl and the build system, so we can later onJelmer Vernooij1-1/+1
call out to the build system to compile the various pidl tests (without having to rely on shared library support). Initial work on an ndr_array test. (This used to be commit 2b08c4b92b4f56180c123a502bdcc6c40188c07f)
2007-10-10r7043: Patch from Julien Kerihuel <j.kerihuel@openchange.org> to reenableAndrew Bartlett1-1/+2
'obfustication' in the new PIDL. Jelmer: Can you double-check this? Andrew Bartlett (This used to be commit 2a1426c52f113237edeba4de25c402257f31ebe6)
2007-10-10r7029: Make array support in pidl similar to that in other IDL compilers. We ↵Jelmer Vernooij1-84/+83
should now able to use constructions like these: [size_is(20)] int *x; -> Pointer to array of 20 ints [size_is(20)] int x[]; -> Array of 20 ints [size_is(20)] int *x[]; -> Array of 20 pointers to ints [size_is(20,)] int *x[] -> Array of 20 pointers to ints [size_is(,20)] int *x[]; -> Pointer to array of 20 ints [size_is(,20)] int **x; -> Pointer to pointer to array of 20 ints [size_is(20)] int x[][30]; -> 20 blocks of 30 ints (This used to be commit ecf583da71c2f80be124c17fccdcb284b47e0695)
2007-10-10r7022: Add support for parsing definitions of multi-dimension arrays.Jelmer Vernooij1-14/+19
This will also be required for supporting parsing pointers to arrays and arrays of pointers simultaneously. (This used to be commit a34f848b02a6e8284d62532a792a5136e846fe8f)
2007-10-10r6973: Merge new version of pidl into the main SAMBA_4_0 branch.Jelmer Vernooij1-56/+230
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-10r6516: use only one list of scalar types and make "string" just a simple ↵Stefan Metzmacher1-32/+3
scalar type (mostly) metze (This used to be commit ba1686e31a0d70a1fddabf4289d20fa8fe13b566)
2007-10-10r6159: Move some more general ndr stuff (alignment calculations) to ndr.pmJelmer Vernooij1-4/+75
(This used to be commit f4d550c348e9604439f07329ddbc3cf65891d578)
2007-10-10r6130: More work on the NDR tree generatorJelmer Vernooij1-1/+260
(This used to be commit ad7ea50eb29402d213438e5fcaa56f853c00487e)
2007-10-10r5853: Move some of the functions not specific to the Samba NDR parser generatorJelmer Vernooij1-0/+205
to a new ndr.pm. Add function that can generate a "OrderTable" describing the order in which the NDR data will be pushed/pulled. (This used to be commit 2603a7326d7e54a012a95e37fd54433b85d8acc4)
2007-10-10r5852: Rename ndr.pm to ndr_parser.pmJelmer Vernooij1-2275/+0
I'm going to add a ndr.pm later on that'll generate a tree with necessary information for the two NDR backends (eparser, ndr_parser) containing alignment info, etc. (This used to be commit 5162daa9464cd64930f5a8fd0d7b381b122c931d)
2007-10-10r5797: - add idl property [subcontext_size()]Stefan Metzmacher1-17/+31
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-10r5785: Fix subcontext pushesJelmer Vernooij1-1/+1
(This used to be commit 0d590906cd7706ebd8c6d5921546291e98067864)
2007-10-10r5775: Remove some unused functions (unions are no longer as special as they ↵Jelmer Vernooij1-1/+1
used to be) Add oxid mapping table support in DCOM (This used to be commit e193555f0eec2dda8c8760e9668181200fef0a1e)
2007-10-10r5764: add support for embedded ref pointersStefan Metzmacher1-4/+10
metze (This used to be commit 112043b1809a96b1a39ade71ea2885c0d792c79f)
2007-10-10r5709: Leave out the pull/push call with NDR_BUFFERS for not justJelmer Vernooij1-2/+21
scalars but also for structs/unions containing only scalars. (This used to be commit a3e136b2f3bd51159775fea25eff0ea81e9716f7)
2007-10-10r5697: Give an error message when a ref pointer is NULL (requested by tpot)Jelmer Vernooij1-0/+6
(This used to be commit 7ecc2e6130d7f284906cbc50dda86c742f139fae)
2007-10-10r5672: Use switch_type() and the token storage mechanism for unions:Jelmer Vernooij1-45/+49
- 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-10r5671: Bunch of fixes related to arrays and pointers to arrays.Jelmer Vernooij1-37/+40
(This used to be commit 00ef0feaddc096d8f5e2755feecaec37d589a99c)
2007-10-10r5661: Be a little stricter on syntax regarding arrays. A pointer to anJelmer Vernooij1-0/+3
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-10r5660: Reduce number of generated "{}"'sJelmer Vernooij1-5/+8
No longer complain about pointers to arrays - we support those. (This used to be commit 128c0ecf030043e81d73aaeda6afb731075f8f9e)
2007-10-10r5603: add "authservice()" property to the interface property listStefan Metzmacher1-8/+30
so we can specify allowed target service names in the idl file the default is "host" metze (This used to be commit bf40d5321f3257bf9354a42d31265f1a9b0d53ad)
2007-10-10r5506: Simplify the use of subcontexts and make them a bit less a special case.Jelmer Vernooij1-84/+155
(This used to be commit 48d54a9b57c0b233c7c60392b23876b426bbdec1)
2007-10-10r5494: Some more code simplification, some additional comments.Jelmer Vernooij1-58/+27
(This used to be commit e601f51b82e99a999f0a9c62b487d56c715a3502)
2007-10-10r5493: Some code simplificationJelmer Vernooij1-38/+30
(This used to be commit 70b58aa7790a93b9c7cdaa644689b2b1fa5e5405)
2007-10-10r5480: allow nopush and nopull on functionsStefan Metzmacher1-6/+10
metze (This used to be commit 0e82e7f02bdd61d8fd27ef3eab9b23ecaadb1e5a)
2007-10-10r5479: Add ODL input support.Jelmer Vernooij1-27/+0
The ODL module can convert an ODL structure to an IDL structure so that: - The COM subsystem can use the ODL structure - The DCE/RPC subsystem can use the IDL structure (This used to be commit a339765d99c90c46f29e2bd71a6aa271febb096d)
2007-10-10r5478: Bunch of small optimizations and generalizations.Jelmer Vernooij1-20/+26
(This used to be commit fd8fc22a79ec5fb7d5902605ca3984c4f8f463d0)
2007-10-10r5477: - Move some more of the typelist stuff out of ndr.pmJelmer Vernooij1-1/+0
- Remember INTERFACEs as well (they can be types in DCOM) (This used to be commit d914cd1804636eb1a34805d48c18e016835e973b)
2007-10-10r5475: Move some existing and new type information functions to typelist.pmJelmer Vernooij1-18/+18
(This used to be commit 280df525380d06d67ce33938c4760807d5466966)
2007-10-10r5466: Put the type information list in a seperate moduleJelmer Vernooij1-37/+22
(require for some of the COM stuff) (This used to be commit fbce7464b2a61a46f5135ba2a341bea4e53f28e7)
2007-10-10r5465: Add support to multiple levels of pointers in pidl.Jelmer Vernooij1-77/+96
Also add a new function to echo.idl that tests this behaviour. (This used to be commit e5eb5e847e75f2b7b041a66f84d9b919ddf27739)
2007-10-10r5464: Simplify print function generator code.Jelmer Vernooij1-57/+27
(This used to be commit 6d1ad1ce7a327d016636d8b374bfbe9ec2052d1c)
2007-10-10r5463: Make need_wire_pointer() return the number of requiredJelmer Vernooij1-7/+7
pointers rather then a bool. (This used to be commit d40a49c8a7ea85335383144b18b1ecfddc0c4ae0)
2007-10-10r5453: Treat "embedded" arrays (surrounding structures) somewhatJelmer Vernooij1-18/+39
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-10r5449: More array handling cleanups. This should make the code moreJelmer Vernooij1-11/+24
readable. (Output C and header files have not changed, just internal pidl changes) (This used to be commit b86b299197f2c3b314d0fc33c0139bd19ef637f2)
2007-10-10r5448: another portability fix for solarisAndrew Tridgell1-1/+1
(This used to be commit 1909a0695295e984b948b7410addac0022904ab8)
2007-10-10r5447: Add some utility functions for arrays and use them.Jelmer Vernooij1-15/+63
(This used to be commit a251712670e1daac949221407ae979b363dbc105)
2007-10-10r5442: Use argument list generator functions from NdrParser in NdrHeaderJelmer Vernooij1-0/+6
(This used to be commit e912f36dc827d7ad38994b93967fe48aade27b2b)
2007-10-10r5441: Put push, pull and print arguments in hash as wellJelmer Vernooij1-64/+96
(This used to be commit a5bf662b52e270d45bba2605f844625cc30c7f89)
2007-10-10r5440: Some more generalizationsJelmer Vernooij1-38/+16
(This used to be commit cf1208471247e2d734f90008d29827541f177952)
2007-10-10r5439: (hopefully) fix build on older perls. Thanks to tridge for pointing ↵Jelmer Vernooij1-4/+4
this out. (This used to be commit 0a78a1f90887afc695204f67af38138271aab2b8)
2007-10-10r5426: Warn about embedded ref pointers.Jelmer Vernooij1-0/+1
(This used to be commit 40547ed33fea57ee8f68a8f864f8f10c9a6d24dc)
2007-10-10r5422: Fix ethereal parser generator.Jelmer Vernooij1-2/+1
(This used to be commit f5224d40c01b495f2607199f0d85a8c9afb056b0)