Age | Commit message (Collapse) | Author | Files | Lines |
|
(This used to be commit 48d54a9b57c0b233c7c60392b23876b426bbdec1)
|
|
(This used to be commit e601f51b82e99a999f0a9c62b487d56c715a3502)
|
|
(This used to be commit 70b58aa7790a93b9c7cdaa644689b2b1fa5e5405)
|
|
(This used to be commit 3c31cbaac0cd916e6af49bfd2260bc3b1a75b677)
|
|
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)
|
|
- Disable all current DCOM functionality (I hope to commit
a large bunch of COM and DCOM changes later today)
- Make remact and oxidresolver depend on orpc rather then dcom
(This used to be commit f298f2a5478a905fe385b8d68318db92ee984374)
|
|
full interfaces.
- Couple of bugfixes in odl.pm
- First use of multiple pointers in dcom.idl
(This used to be commit 3110c2ec44a872a53e7d6015b85c68fdb604b4de)
|
|
(This used to be commit d0d4251d6f8718256fd3baf7db4969dcf6073283)
|
|
metze
(This used to be commit 0e82e7f02bdd61d8fd27ef3eab9b23ecaadb1e5a)
|
|
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)
|
|
(This used to be commit fd8fc22a79ec5fb7d5902605ca3984c4f8f463d0)
|
|
- Remember INTERFACEs as well (they can be types in DCOM)
(This used to be commit d914cd1804636eb1a34805d48c18e016835e973b)
|
|
(This used to be commit 75d8fc8338ea0345ed0181f5700640029e311599)
|
|
(This used to be commit 280df525380d06d67ce33938c4760807d5466966)
|
|
(require for some of the COM stuff)
(This used to be commit fbce7464b2a61a46f5135ba2a341bea4e53f28e7)
|
|
Also add a new function to echo.idl that tests this behaviour.
(This used to be commit e5eb5e847e75f2b7b041a66f84d9b919ddf27739)
|
|
(This used to be commit 6d1ad1ce7a327d016636d8b374bfbe9ec2052d1c)
|
|
pointers rather then a bool.
(This used to be commit d40a49c8a7ea85335383144b18b1ecfddc0c4ae0)
|
|
more generically. The default functions for remembering array sizes
are now used rather then a special local variable.
(This used to be commit 5f7882341fa435a495fa7181537b5599e2fc7a0d)
|
|
readable. (Output C and header files have not changed, just internal pidl
changes)
(This used to be commit b86b299197f2c3b314d0fc33c0139bd19ef637f2)
|
|
(This used to be commit 1909a0695295e984b948b7410addac0022904ab8)
|
|
(This used to be commit a251712670e1daac949221407ae979b363dbc105)
|
|
was disabled in the first place.
(This used to be commit e52256aec27e2aba8893cd2e570874482696b230)
|
|
(This used to be commit e912f36dc827d7ad38994b93967fe48aade27b2b)
|
|
(This used to be commit a5bf662b52e270d45bba2605f844625cc30c7f89)
|
|
(This used to be commit cf1208471247e2d734f90008d29827541f177952)
|
|
this out.
(This used to be commit 0a78a1f90887afc695204f67af38138271aab2b8)
|
|
(This used to be commit d0a6b973307ba3b740f18214f14682495a607c63)
|
|
when linking though.
(This used to be commit 2e1e8db6dc877eb32b51cfc3d9c8f463d14530ec)
|
|
(This used to be commit 40547ed33fea57ee8f68a8f864f8f10c9a6d24dc)
|
|
(This used to be commit f5224d40c01b495f2607199f0d85a8c9afb056b0)
|
|
keyword,
move pointer parsing to seperate function.
(This used to be commit ea872b9a2b9a51ba9f6c2842303d067e9e85d11a)
|
|
- added a new IDL type "udlongr", which is like udlong, but with the
two uint32 halves reversed
- modified the winsrepl.idl to cope with a wider range of packets
(This used to be commit bc8d60c918f2e268d591aac464fc6a78c38a4cf9)
|
|
(just like header.pm already did).
(This used to be commit 90b262398b471acf560a8d05765cab1f25e24b5a)
|
|
(This used to be commit e8c1a30f2373bdccb26659867b4f025d28de4724)
|
|
(This used to be commit afadd172981c8753b7e974154a843c36ef73df3a)
|
|
Get rid of register_enum/register_bitmap, etc. (use list of
types in ndr.pm instead)
(This used to be commit efc2e41b8df3a0171cca57291929fb63760c1662)
|
|
- ndr_%_relative% -> ndr_%_relative_ptr%
- Change pointer_default() default to "unique"
(DCE uses "ptr" as default, MIDL doesn't follow the standard and uses "unique")
(This used to be commit 53b4ecbcc7a8da67cde1377de6f24a3de6d229e3)
|
|
is assumed to be "ptr" if not specified (just like midl).
The validator will warn when "ptr" is used at the moment, because
pidl only supports unique, ref and relative at the moment.
(This used to be commit 31bed62a9a6f7830f523d509b67970648d40aaef)
|
|
(This used to be commit c9d7b88756039a3eb3024c886851e489c46ef67f)
|
|
(This used to be commit d8a0a6972156c3211001b7f98e990c167be2468c)
|
|
(This used to be commit 10f3bdce80ff67e05b14c3481a05362b054d1f11)
|
|
(This used to be commit 95c4f3149925ee71e74ea36fae3a65d2eebf717c)
|
|
- 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)
|
|
parser.pm (now renamed to ndr.pm).
(This used to be commit a469a5fefb4e6941264c11f4bde60eab71f6f7aa)
|
|
less likely that anyone will use pstring for new code
- got rid of winbind_client.h from includes.h. This one triggered a
huge change, as winbind_client.h was including system/filesys.h and
defining the old uint32 and uint16 types, as well as its own
pstring and fstring.
(This used to be commit 9db6c79e902ec538108d6b7d3324039aabe1704f)
|
|
(This used to be commit 5c2f0df566804cf0b8879504f5e41a8100a7fd40)
|
|
various data types:
Add ndr_flags argument to all ndr push/pull scalar functions
(This used to be commit ab490c0c882bb13de190546c50a0631ecb8255ad)
|
|
(This used to be commit 949f31ad2865699da0f3a9e827606abd762b10b7)
|
|
(This used to be commit e65741159d8578d629ccfcd863f034fda895f9fe)
|