summaryrefslogtreecommitdiff
path: root/source4/build/pidl/header.pm
AgeCommit message (Collapse)AuthorFilesLines
2007-10-10r4526: - much simpler (and more accurate!) ndr_size_*() code generation. ItAndrew Tridgell1-3/+5
is less efficient, but I really doubt that matters. - use enum in epmapper.idl for protocol type - added support for "enum8bit" flag, used in epmapper.idl (This used to be commit 1a24a50384b7f588844cd012f1218ca242ca4507)
2007-10-10r4521: fixed up the handling of PROPERTIES elements after the change to ↵Andrew Tridgell1-3/+3
support enum (This used to be commit dee8eff2590be58c59b0db089fcca4af3e011c42)
2007-10-10r4518: added proper support for "typedef enum" in pidl. We can now use enums ↵Andrew Tridgell1-0/+5
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-10r4468: Don't be a slacker and leave out parameter names when generatingTim Potter1-12/+12
prototypes for ndr push/pull/print functions. (This used to be commit 1fe95ad1720f48a353ec77178e303b437bb13fed)
2007-10-10r3998: allow const arrays (see next commit to drsuapi.idl)Stefan Metzmacher1-2/+6
metze (This used to be commit 7264a2227d7a1881db01964d0d713c144eb77152)
2007-10-10r3861: - Put ndr and rpc client code in seperate filesJelmer Vernooij1-1/+1
- Add some const (This used to be commit a00bda88e1b6abdc36e5aa8c2a35f64855f67c96)
2007-10-10r3689: Large number of COM updates:Jelmer Vernooij1-11/+34
- Work on server side and local COM support (should work, just no example classes yet) - Use vtables so that local and remote calls can be used transparently - Generate 'proxies and stubs' rather then heavily modified code in client.pm and server.pm. proxies (client side code) are generated in proxy.pm, stubs (server side dispatchers) are generated in stubs.pm - Support registering classes and interfaces - DCOM interfaces no longer have to be in the same IDL file as their base interface, which will allow us to split up dcom.idl (This used to be commit 7466947a23985f9bb15209b67880f7b94dc515c8)
2007-10-10r3667: Small COM fixesJelmer Vernooij1-3/+14
(This used to be commit 7484b9be7423ccd7e37432951700939e8a53d513)
2007-10-10r3611: DCOM client support works!!Jelmer Vernooij1-0/+1
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-10r3601: Lots of smaller DCOM updates and fixes. Adds oxid tables, properJelmer Vernooij1-6/+4
use of contexts. (This used to be commit 93eb3cd99c4fb065a69eabcead0c33804259c976)
2007-10-10r3586: Fix some of the issues with the module init functions.Jelmer Vernooij1-1/+1
Both subsystems and modules can now have init functions, which can be specified in .mk files (INIT_FUNCTION = ...) The build system will define : - SUBSYSTEM_init_static_modules that calls the init functions of all statically compiled modules. Failing to load will generate an error which is not fatal - BINARY_init_subsystems that calls the init functions (if defined) for the subsystems the binary depends on This removes the hack with the "static bool Initialised = " and the "lazy_init" functions (This used to be commit 7a8244761bfdfdfb48f8264d76951ebdfbf7bd8a)
2007-10-10r3513: Add (the infrastructure for) DCOM support. Contents:Jelmer Vernooij1-2/+7
- 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-10r3442: Add support for the "call_as" and "local" attributes.Jelmer Vernooij1-0/+3
(This used to be commit 8e25117103b0339441bc6328176ed34034005528)
2007-10-10r3428: switched to using minimal includes for the auto-generated RPC code.Andrew Tridgell1-0/+7
The thing that finally convinced me that minimal includes was worth pursuing for rpc was a compiler (tcc) that failed to build Samba due to reaching internal limits of the size of include files. Also the fact that includes.h.gch was 16MB, which really seems excessive. This patch brings it back to 12M, which is still too large, but better. Note that this patch speeds up compile times for both the pch and non-pch case. This change also includes the addition iof a "depends()" option in our IDL files, allowing you to specify that one IDL file depends on another. This capability was needed for the auto-includes generation. (This used to be commit b8f5fa8ac8e8725f3d321004f0aedf4246fc6b49)
2007-10-10r3423: auto-generate prototypes for all external functions in pidlAndrew Tridgell1-2/+50
(This used to be commit 009488dfe55f5219b24c30222b1a8bf411a7e939)
2007-10-10r3282: some C pre-processors don't like expressions likeAndrew Tridgell1-1/+2
uuid(1ff70682-0a51-30e8-076d-740be8cee98b) so we now accept uuid("1ff70682-0a51-30e8-076d-740be8cee98b") in pidl, and automagically add quotes only if needed (This used to be commit 4aab2cb210eb9678bb72aebb33dcf6fd499206c1)
2007-10-10r3281: some compilers can't handle empty structures, so for empty IDLAndrew Tridgell1-0/+6
structures generate a single _empty_ element in the header (This used to be commit 00ff1ca1d284bb698e98c773b18a29695e927605)
2007-10-10r1909: nicer formatStefan Metzmacher1-2/+2
metze (This used to be commit e9e5fb2cb0b428de11d8e91da8b44394b6221a43)
2007-10-10r1786: Add support for the 'helpstring' attribute on interfacesJelmer Vernooij1-0/+5
(This used to be commit 85fb26a05d57e58795b0c0ffa93dc9e0fa902431)
2007-10-10r1736: - Pidl updates:Jelmer Vernooij1-20/+6
- 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-10r1700: make version default to 0.0 (same as midl)Jelmer Vernooij1-0/+2
(This used to be commit b380324c938d0c5069dce02e468c92e24363a36b)
2004-01-08This patch adds a better dcerpc server infastructure.Stefan Metzmacher1-1/+1
1.) We now register endpoint servers add startup via register_backend() and later use the smb.conf 'dcerpc endpoint servers' parameter to setup the dcesrv_context 2.) each endpoint server can register at context creation time as much interfaces as it wants (multiple interfaces on one endpoint are supported!) (NOTE: there's a difference between 'endpoint server' and 'endpoint'! for details look at rpc_server/dcesrv_server.h) 3.) one endpoint can have a security descriptor registered to it self this will be checked in the future when a client wants to connect to an smb pipe endpoint. 4.) we now have a 'remote' endpoint server, which works like the ntvfs_cifs module it takes this options in the [globals] section: dcerpc remote:interfaces = srvsvc, winreg, w32time, epmapper dcerpc remote:binding = ... dcerpc remote:user = ... dcerpc remote:password = ... 5.) we currently have tree endpoint servers: epmapper, rpcecho and remote the default for the 'dcerpc endpiont servers = epmapper, rpcecho' for testing you can also do dcerpc endpoint servers = rpcecho, remote, epmapper dcerpc remote:interfaces = srvsvc, samr, netlogon 6,) please notice the the epmapper now only returns NO_ENTRIES (but I think we'll find a solution for this too:-) 7.) also there're some other stuff left, but step by step :-) This patch also includes updates for the register_subsystem() , ntvfs_init(), and some other funtions to check for duplicate subsystem registration metze (hmmm, my first large commit...I hope it works as supposed :-) (This used to be commit 917e45dafd5be4c2cd90ff425b8d6f8403122349)
2003-12-16a fairly large commit!Andrew Tridgell1-0/+4
This adds support for bigendian rpc in the client. I have installed SUN pcnetlink locally and am using it to test the samba4 rpc code. This allows us to easily find places where we have stuffed up the types (such as 2 uint16 versus a uint32), as testing both big-endian and little-endian easily shows which is correct. I have now used this to fix several bugs like that in the samba4 IDL. In order to make this work I also had to redefine a GUID as a true structure, not a blob. From the pcnetlink wire it is clear that it is indeed defined as a structure (the byte order changes). This required changing lots of Samba code to use a GUID as a structure. I also had to fix the if_version code in dcerpc syntax IDs, as it turns out they are a single uint32 not two uint16s. The big-endian support is a bit ugly at the moment, and breaks the layering in some places. More work is needed, especially on the server side. (This used to be commit bb1af644a5a7b188290ce36232f255da0e5d66d2)
2003-12-16the out substructure is not empty if there is a return from theAndrew Tridgell1-0/+6
function (This used to be commit d18a08a870aa9ee12ed2913775b70d1b8a09c84b)
2003-12-16some compilers can't handle structures with no elements. GenerateAndrew Tridgell1-16/+46
dummy elements if need be. (This used to be commit b6fdc984023a76a6c77d03cb3ec12c6c18d215a6)
2003-12-15make pidl no longer dependent on Data::Dumper, which isn't installedAndrew Tridgell1-1/+0
on some systems (This used to be commit a4aa9168c0f80cf6e758c380d41335db50d06869)
2003-12-14added auto-generation of the server side boilerplate code for eachAndrew Tridgell1-1/+2
pipe. The server side code gets generated as librpc/gen_ndr/ndr_NAME_s.c and gets included in the pipe module (This used to be commit bd3dcfe5820489a838e19b244266bd9126af5eb4)
2003-12-02added netr_DatabaseSync(). It doesn't work as I haven't done schannelAndrew Tridgell1-19/+17
yet, but at least the request is understood by w2k3 Also modified pidl to allow multiple branches in a union to have the same element. This is used in netlogon. (This used to be commit 983c0e9683fa9666a6e055d1776ebeef8cd2e700)
2003-11-27added an rpc scanner. This prints messages like this:Andrew Tridgell1-2/+1
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 :) (This used to be commit f5821b2468a0c46d0e5590de59562926d746c349)
2003-11-26added some paranoid checking for enumsAndrew Tridgell1-2/+5
(This used to be commit 3492f37b0bf14797514f1dc603f518bf5b801c3c)
2003-11-23added a tool called 'ndrdump' that allows you to dump NDR dataAndrew Tridgell1-0/+2
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-22added support for enumerated types in IDL files. This makes unionsAndrew Tridgell1-1/+28
easier to work with. (This used to be commit 60be15d306e7b65efdd27df02250c0264996ccf3)
2003-11-22added support for 'const' in IDL files. This makes it easy to defineAndrew Tridgell1-4/+14
symbolic names for bitfields etc. (This used to be commit 344a6e1682cc1afab24735e73d05cf15f6eb9816)
2003-11-21* changed the way strings are handled in pidl to a much more generalAndrew Tridgell1-6/+3
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-21added support for 'ascstr', a ascii string in MSRPC !Andrew Tridgell1-4/+4
(This used to be commit a5eeb3be0577e0ce91ac1f6e641782e4acbbda07)
2003-11-20use a precompiled grammer in pidl. This speeds up pidl by about aAndrew Tridgell1-0/+1
factor of 2 on my system. (This used to be commit a291dd835f68ae5a109670b1d1ca1a48b2aacfb6)
2003-11-20use strict perl package everywhere for error checkingAndrew Tridgell1-1/+2
(This used to be commit 3b7a4b70a321a1e8e378b8c5cc1e87a1c3399e91)
2003-11-20 * added a 'lstring' type for spoolssAndrew Tridgell1-0/+2
* added some notes on type equivalents in NOTES.txt (This used to be commit a44d952fcb7ebf85d3072b622e5656dcf25cfbb0)
2003-11-20 * added support for empty case elements (including default cases)Andrew Tridgell1-1/+3
* changed to midl syntax using [case(x)] instead of case(x) (This used to be commit 6ecdb25e137c25e6bf9a7037a4eb602ae1afc514)
2003-11-18auto-generate the pipe UUID version and nameAndrew Tridgell1-9/+32
(This used to be commit cdba426e62a5b30263b75f53f97b191da224a55f)
2003-11-17started documenting the extension to IDL that pidl implementsAndrew Tridgell1-8/+0
(This used to be commit 22b5418a53149b42e71fd887866f75cdd53b81af)
2003-11-16 * the beginnings of non-constant fixed arraysAndrew Tridgell1-3/+7
* added relative pointers support (This used to be commit 4a34a4f29cf8ab79582ce7b503da907df7b4d209)
2003-11-16added support for "relstr", structure and union properties and publicAndrew Tridgell1-0/+2
functions (This used to be commit fb2f8c6bffdaacdddbb7fb82439af70e17ce9a4b)
2003-11-13I think we now handle conformant arrays in structures correctly - theAndrew Tridgell1-4/+4
test cases pass (This used to be commit 22e15023509f8f1682865d72765e79f41ab7d149)
2003-11-11- added support for the pull side of unionsAndrew Tridgell1-51/+54
- don't generate parse functions for pull/push functions that are not used (This used to be commit 54613574bcd8b365c13848c6aa9366cadeb5da0e)
2003-11-10much cleaner handling of the different types of variablesAndrew Tridgell1-1/+8
(This used to be commit 4df59bcff56a00e413fbde1a40ffebcb16763d3c)
2003-11-09- handle void functionsAndrew Tridgell1-3/+13
- bettenicer handling of PROPERTIES - handle size_is() on an out variable that refers to an in variable (This used to be commit 33d9b75783651ccb02f895bc9e0b0d0d59f67b1d)
2003-11-08- include includes.hAndrew Tridgell1-4/+0
- fix ref ptrs in push - add NTSTATUS return (This used to be commit cba9df9aa4cef7d35ae786a90d6c34b54e9a086a)
2003-11-06updated pidl to auto-generate the ndr_push_*() functions for theAndrew Tridgell1-17/+99
Samba4 rpc framework not complete, but sufficient for a number of lsa functions (This used to be commit 42cd6904f51bac1ff92f0aea0deffb11864dfac2)
2000-12-14changed auto-generated comment for headersAndrew Tridgell1-1/+1
(This used to be commit 24ec2f1f81a2f21573818695e7cb72979dcdef8b)