1
0
mirror of https://github.com/samba-team/samba.git synced 2024-12-25 23:21:54 +03:00
Commit Graph

41 Commits

Author SHA1 Message Date
Jelmer Vernooij
5b94a9583f r8806: Move data representation-independent data into seperate header
(This used to be commit 26e1fdf630)
2007-10-10 13:30:06 -05:00
Jelmer Vernooij
2c306f9af7 r8803: Rename --header to --ndr-header and --parser to --ndr-parser
(This used to be commit d292ab7ca6)
2007-10-10 13:30:06 -05:00
Jelmer Vernooij
21ba94c7be r8801: Change --output to --outputdir and make pidl add a data representation prefix
to pidl itself. Useful for supporting other data representation types.
(This used to be commit 5af68a0476)
2007-10-10 13:30:06 -05:00
Andrew Tridgell
89641975bb r8469: the extra pidl args need to be normal args, not after a --, otherwise pidl tries to compile
"--uint-enums" as a IDL file :-)

This should help the build on AIX 5.2
(This used to be commit f54e6c83e4)
2007-10-10 13:23:06 -05:00
Jelmer Vernooij
fa1445f4bc r8264: - Use standard perl package structure for pidl.
- Only "use" pidl modules in the main executable when necessary

Try 'make install' in build/pidl to install the package (should work stand-alone).
(This used to be commit c620095692)
2007-10-10 13:19:27 -05:00
Jelmer Vernooij
c222331d6d r8263: Some small pidl fixes, start working towards supporting installation of pidl.
(This used to be commit c785677a14)
2007-10-10 13:19:27 -05:00
Tim Potter
b48c121454 r8103: Add an argument separator between the hardcoded args and $PIDL_EXTRA_ARGS
so the first extra arg isn't interpreted as a parameter to the last
hardcoded arg.
(This used to be commit ad1700ca8e)
2007-10-10 13:19:08 -05:00
Stefan Metzmacher
1b3471ed0c r7425: configure check to see if a compiler can handle negative enum values
if the compiler doesn't support it we pass --uint-enums to pidl

metze
(This used to be commit c52703c0a8)
2007-10-10 13:17:51 -05:00
Jelmer Vernooij
80d3047333 r5490: The big (D)COM commit! :-) Contains most of the changes described in the
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 71fd3e5c3a)
2007-10-10 13:10:50 -05:00
Jelmer Vernooij
7e400d38ec r5479: Add ODL input support.
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 a339765d99)
2007-10-10 13:10:49 -05:00
Tim Potter
7d43a2bdfe r5087: Add --swig to pidl flags so that swig .i files are generated with
make idl.
(This used to be commit 7ba9f329aa)
2007-10-10 13:09:21 -05:00
Tim Potter
00169404ed r5033: Remove --with-eparserdir configure option and eparser_idl make target.
This is all done in the lorikeet/ethereal Makefile now.
(This used to be commit 5ec9fad5cf)
2007-10-10 13:09:14 -05:00
Tim Potter
37957ea3eb r5026: Don't build the swig stuff by default until it's a bit more stable.
(This used to be commit df35f1debf)
2007-10-10 13:09:14 -05:00
Tim Potter
28a3ccf9af r5019: Some tweaks to building the swig .i files.
(This used to be commit c252a286ef)
2007-10-10 13:09:14 -05:00
Tim Potter
0ee9f4d6e1 r4599: Remove some duplicated code in pidl.pl.
Start working on adding support for bitmaps and enums.

In progress tweaks for arrays of structures.
(This used to be commit d39cb7ecb4)
2007-10-10 13:08:32 -05:00
Tim Potter
b099aa9696 r4471: Running 'make eparser_idl' doesn't need --header anymore.
(This used to be commit 913630d6e4)
2007-10-10 13:07:55 -05:00
Jelmer Vernooij
a0fa682faa r3861: - Put ndr and rpc client code in seperate files
- Add some const
(This used to be commit a00bda88e1)
2007-10-10 13:05:58 -05:00
Jelmer Vernooij
46badf1908 r3790: use a registration function that is called from dcerpc_*_init functions
rather then a large table in librpc/gen_ndr/tables.c. This will allow us
to only link in only the required gen_ndr files (speeds up linking quite a
bit, makes binaries smaller).

Each gen_ndr_* file now has a init function that calls the init functions
of the interfaces it contains. I did it this way to keep pidl's code simple,
though it might hurt startup time a bit. I'd be happy to change it if
people like one function better.
(This used to be commit 3c436590ae)
2007-10-10 13:05:53 -05:00
Andrew Bartlett
d1f4ba08df r3651: Add a new configure option --with-eparserdir
This allows us to call 'make eparser_idl', generate the files required
by the ethereal pidl plugin, and put them in the right place.  (See
lorikeet/ethereal)

Andrew Bartlett
(This used to be commit bd9497b092)
2007-10-10 13:05:41 -05:00
Tim Potter
ff19c6ac0d r2255: Don't do experimental swig stuff by default.
(This used to be commit db191572ff)
2007-10-10 12:58:35 -05:00
Tim Potter
3f7bf05f75 r2253: Add test program, as small example of what's going on.
(This used to be commit fd31ae38df)
2007-10-10 12:58:35 -05:00
Stefan Metzmacher
19fba1fafa r725: fix usage of $PERL to "$PERL" to handle perl -W correct
metze
(This used to be commit b1161c4c83)
2007-10-10 12:53:45 -05:00
Andrew Tridgell
8c2636f59a r586: removed --clientfns from build_idl.sh (tim removed that code from pidl)
(This used to be commit d1dcde1d91)
2007-10-10 12:51:48 -05:00
Tim Potter
3dce6f1e23 r356: Start of auto-generated client functions. Tridge can you take a look
and tell me what you think?  Output does not compile yet.
(This used to be commit 65692c9a93)
2007-10-10 12:51:34 -05:00
Stefan Metzmacher
ec5d556a12 some systems doesn't have ./ in PATH
so use ./build/pidl/pidl.pl

metze
(This used to be commit 7aab10d507)
2004-02-02 07:06:28 +00:00
Andrew Tridgell
2b5bc1b252 lots of shells don't have the -nt test, so use hackish find command
instead
(This used to be commit 2d57346c2d)
2003-12-15 12:13:34 +00:00
Andrew Tridgell
64352f9ef1 a script fix for the build farm
(This used to be commit 5f6b0baa30)
2003-12-15 05:37:15 +00:00
Andrew Tridgell
f6eb8342cb added auto-generation of the server side boilerplate code for each
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 bd3dcfe582)
2003-12-14 13:22:12 +00:00
Andrew Tridgell
8fa36b1fbc some systems don't have "which" and some systems don't have the "-nt"
flag to test. It's amazing that systems like that are ever sold.
(This used to be commit fe91635da8)
2003-12-08 07:37:38 +00:00
Andrew Tridgell
696c70c2f4 fixed shell scripting error
(This used to be commit b18dce549d)
2003-12-08 04:05:57 +00:00
Andrew Tridgell
86d0e4b7f1 cope with yapp not being installed
(This used to be commit e41d95acc0)
2003-12-08 03:57:03 +00:00
Andrew Tridgell
58714e6bda * reduced the number of grammer conflicts a lot using (arbitrary)
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 be2c2be459)
2003-12-08 02:24:40 +00:00
Andrew Tridgell
07fdc2c73e * support multiple interfaces in one IDL file in pidl
* make far more generated functions static

 * get rid of gen_rpc, and include the client calls in ndr_*.c

 * added placeholder IDL for a number of intefaces (dcom, wzcsvc, browser etc)
(This used to be commit a2bdf0be01)
2003-11-28 03:47:45 +00:00
Andrew Tridgell
df5949efb4 added auto-generation of the IDL interface tables. This makes two less
places that need to be edited when someone adds a new IDL file.
(This used to be commit ccd9ddeed6)
2003-11-28 00:48:05 +00:00
Andrew Tridgell
02dc7536dd save about 35% of the time for "make idl" by processing multiple IDL
files at once, which means less perl startup time.
(This used to be commit 64b2c67e47)
2003-11-23 03:42:20 +00:00
Andrew Tridgell
15776970a5 we now use a copy of pidl inside the samba4 source tree at
source/build/pidl/

I imported the code using direct respository manipulation to preserve
the commit history
(This used to be commit 2ed87a52cc)
2003-11-20 22:46:01 +00:00
Andrew Tridgell
b008369175 moved the pidl auto-generated files out of CVS
(This used to be commit 49c72d4276)
2003-11-20 11:09:53 +00:00
Andrew Tridgell
6a991bb9b0 simple method for auto-building rpc files if idl changes, and
auto-building proto.h if it doesn't exist. This should make life a
little easier for developers
(This used to be commit ab5939e796)
2003-11-15 21:25:03 +00:00
Andrew Tridgell
44dfd03963 - added the rest of the LSA calls as stubs
- auto-generate the client calls with 'make idl'
(This used to be commit 8e52381313)
2003-11-09 08:30:29 +00:00
Andrew Tridgell
30d45fc57c check for pidl.pl in path, not $HOME/pidl/
(This used to be commit 9aacdb5b8a)
2003-11-09 01:18:59 +00:00
Andrew Tridgell
668c938678 - more generation fixes
- added auto-generation from the Makefile. Only called when you run "make idl"
(This used to be commit 47a17e5a08)
2003-11-08 13:23:20 +00:00