summaryrefslogtreecommitdiff
path: root/source4/build/pidl/idl.yp
AgeCommit message (Collapse)AuthorFilesLines
2007-10-10r7161: - Add support for "aliases" for pidls scalar types and add a few aliases.Jelmer Vernooij1-1/+1
- Define __PIDL__ when preprocessing IDL files. - Remove a couple of useless defines from rpcecho.idl rpcecho.idl now works in both pidl and midl (althought pidl is a bit pedantic and gives two warnings) (This used to be commit 6731e0a6548ac24d561ba48c8e9611d0034e662f)
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-10r7036: Allow more operations in several properties (such as size_is, length_is,Jelmer Vernooij1-0/+1
switch_is, etc) and simplify the code involved (This used to be commit 86de98ee09348297f2c30ce15888ba5e5637c078)
2007-10-10r7022: Add support for parsing definitions of multi-dimension arrays.Jelmer Vernooij1-3/+4
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-23/+26
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-10r6926: More build farm fixes:Jelmer Vernooij1-1/+1
- Warn about unknown attributes in .mk - Remove more unused functions (This used to be commit 6bf8126ae9368dc56cf0cd91b972a2d939974679)
2007-10-10r6098: fix parsing of empty union casesStefan Metzmacher1-1/+1
metze (This used to be commit f3c64120a16289472bdc56329d39c7221d00b558)
2007-10-10r5486: - Use references to interfaces in coclasses rather thenJelmer Vernooij1-3/+3
full interfaces. - Couple of bugfixes in odl.pm - First use of multiple pointers in dcom.idl (This used to be commit 3110c2ec44a872a53e7d6015b85c68fdb604b4de)
2007-10-10r5479: Add ODL input support.Jelmer Vernooij1-2/+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-10r5376: ORPC is NDR specific, so move it to ndr.pm.Jelmer Vernooij1-22/+2
Get rid of register_enum/register_bitmap, etc. (use list of types in ndr.pm instead) (This used to be commit efc2e41b8df3a0171cca57291929fb63760c1662)
2007-10-10r5338: More efforts to handle types similarly.Jelmer Vernooij1-4/+4
(This used to be commit 95c4f3149925ee71e74ea36fae3a65d2eebf717c)
2007-10-10r5320: Treat structs and unions somewhat more similarly:Jelmer Vernooij1-32/+20
- use same names in hashes (DATA -> ELEMENTS, etc) - [case()] and [default] are no longer special case, they're just regular properties (This used to be commit 6a0f599f822f5c42d93e78c13765804ab2223968)
2007-10-10r4884: - 2nd part of support ndr_size_ generation on unions as well as ↵Andrew Tridgell1-0/+1
structures - added "nopull" and "nopush" flags, to allow for externally written parsers for sub-structures (This used to be commit f65f239978425de795a0e188aaad3d5d1167da32)
2007-10-10r4551: add support for a pidl extensionsStefan Metzmacher1-2/+26
'declare bitmap foo1;' 'declare enum foo2;' and also allow typedef [public] bitmap ... typedef [public] enum ... you need to a forward declaration of bitmaps and enums when you want to use them in another idl file, and you need to make the real declaration to be public see the next commit to samr.idl and netlogon.idl metze (This used to be commit a8d61aa47388b82595ee02b9cfd35f15afb93c2a)
2007-10-10r4533: parsing support for:Stefan Metzmacher1-3/+18
typedef [bitmap16bit] bitmap { FLAG1 = 0x0001, FLAG2 = 0x8000 } fooflags; metze (This used to be commit 192f2495468d5d0c5889d94ca791aa8f371514e8)
2007-10-10r4522: PROPERTIES are now handled at the typedef levelAndrew Tridgell1-13/+11
(This used to be commit 73d5a033e8e9de536239c53e8a063e9be0eff701)
2007-10-10r4518: added proper support for "typedef enum" in pidl. We can now use enums ↵Andrew Tridgell1-5/+6
as types in switch statements and variable types, and the value will be printed with its string name and value (This used to be commit 1852033f2ec7584657d586e44d25a280959e4d81)
2007-10-10r3998: allow const arrays (see next commit to drsuapi.idl)Stefan Metzmacher1-0/+9
metze (This used to be commit 7264a2227d7a1881db01964d0d713c144eb77152)
2007-10-10r3667: Small COM fixesJelmer Vernooij1-2/+0
(This used to be commit 7484b9be7423ccd7e37432951700939e8a53d513)
2007-10-10r3611: DCOM client support works!!Jelmer Vernooij1-0/+2
The torture test DCOM-SIMPLE now successfully does an IStream_Read and a IStream_Write call. This test can now be run successfully against the "Simple DCOM" Visual Studio example. (You have to quote out line 337 in pidl. pidl complains if the variable that contains the array size follows the array. I still need to fix this properly) Next goals: - Clean up code - Server side support - Support custom marshalling - Support DCOM interfaces in files other then dcom.idl (This used to be commit 8693344772a9b700533179f4bacfe27ec27dfcfe)
2007-10-10r3513: Add (the infrastructure for) DCOM support. Contents:Jelmer Vernooij1-0/+1
- Support for sending over the object UUID in DCERPC calls - Simple torture test for the DCOM "Simple" object - Generate extra argument for "object" interfaces in pidl - Some stubs for common DCOM functions (This used to be commit c052f2e1edd816206d8974af3140cec7ef97a70c)
2007-10-10r3440: Add support for "coclass" to the pidl parser - the idl keyword thatJelmer Vernooij1-4/+17
describes a COM class. A coclass is the implementation of one or more interfaces. It has a UUID referred to as it's CLSID (Class ID). Also adding an example coclass called "CoffeeMachine". You can give it a string (or a cup, whatever you like ;-) and it will fill it with "COFFEE" (kind of the like the echo pipe is for regular RPC). CoffeeMachine's Windows implementation already works, a torture test for Samba will follow soon. (This used to be commit 05dd840b6ffba0d38d98e2e80d856e2f2b5d877c)
2007-10-10r3431: Allow optional semicolon after interface definitionsJelmer Vernooij1-1/+6
(This used to be commit edbd789abb505accd3e72863d13acd2603d991f6)
2007-10-10r2973: Allow comma's inside parentheses in property argumentsJelmer Vernooij1-1/+6
(This used to be commit ab2a788fe75ddaf8ff493477f2006a03959e6ab5)
2007-10-10r1838: Updates from the airplane:Jelmer Vernooij1-2/+2
- IDL fixes + adding comments - Start working on dcom infrastructure (This used to be commit ef0fc269f06c82594c34ad8673c76c5ea099250e)
2007-10-10r1736: - Pidl updates:Jelmer Vernooij1-30/+59
- Support for "object oriented" interfaces in pidl - Support for inherited interfaces in pidl - Simplification of the support for properties on an interface - Start on dcom rpc torture tests (This used to be commit 45c3d0036b8510102816f9cdff9210098259cc5f)
2007-10-10r738: Use same error message format as is used by compilers when reportingJelmer Vernooij1-1/+1
syntax errors (some editors parse these strings and jump to the erroneous line directly) (This used to be commit 6857efacccb1af69abd46e8867a0b4b3c26801db)
2003-12-16cope with different cpp formatting on some systems, and make sure weAndrew Tridgell1-1/+8
don't loop forever if we get a cpp format line we don't understand (This used to be commit 003c6c493b1babadb1f7c4eb54babed394bd42a9)
2003-12-15use the @CPP@ value from configure if possible when determining cpp inAndrew Tridgell1-1/+5
pidl (This used to be commit c47e88dabfc62db7533d2d39c7f1010b4188d2ea)
2003-12-15lets see if "cc -E" keeps more of the build farm happy then "cpp"Andrew Tridgell1-1/+1
We'll probably need a configure entry for this (This used to be commit 66e648f20ffd34e2cff1b94003db9974d2bac318)
2003-12-08commit idl.pm now, as many build farm machines don't have 'yapp'Andrew Tridgell1-4/+4
(This used to be commit 2b1300386dc8a3e3e802c8b1dafdbea286cfbb46)
2003-12-08 * reduced the number of grammer conflicts a lot using (arbitrary)Andrew Tridgell1-6/+9
precedence rules * build a standalone parser. When we come to distributing Samba4 we can just include idl.pm and other developers won't need Parse::Yapp installed * avoid the recursive make in most cases in build_idl.sh (This used to be commit be2c2be459d1bed41c113590e70711cb89ad12b9)
2003-12-07a bit more speed and better line matching in errorsAndrew Tridgell1-4/+8
(This used to be commit 788f6c44dbae48e13c9eeaca3bfa3ac7efbbd4e2)
2003-12-07re-wrote pidl to use Parse::Yapp instead of Parse::RecDescent, ThisAndrew Tridgell1-0/+307
makes pidl about 3x faster, and also gives us much better error reporting and a more standard grammer definition that will be much easier to code in lex/yacc if we want to do so at a later date. (Parse::Yapp uses essentially the same grammer file as lex/yacc) It also means we no longer need Parse::RecDescent, which should make pidl much more portable. (This used to be commit 4bbaffeb44dca99ad8c0245beb1fddbe01557215)