summaryrefslogtreecommitdiff
path: root/source4/librpc/rpc
AgeCommit message (Collapse)AuthorFilesLines
2007-10-10r3611: DCOM client support works!!Jelmer Vernooij2-2/+11
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-10r3606: More DCOM fixes:Jelmer Vernooij1-5/+6
- OXID tables work now. IOXIDResolver is used if there is used for getting a STRINGBINDING if none is known yet - Add custom dissectors for STRINGARRAY and DUALSTRINGARRAY. If there's a way to get rid of these later on (by supporting them thru pidl somehow), I'd be happy to use that instead of doing it manually. I can now get to the point where we have created an object and are connected to it. The only thing left to do is being able to set the Object UUID properly.. (This used to be commit 54e1e5edca50d3cd496c080715e84ec62cb2a10c)
2007-10-10r3602: Add looking up transport by endpoint protocolJelmer Vernooij1-0/+16
(This used to be commit 76c02ecbe8581fbf07bb59dd22ba88eb97b4fd04)
2007-10-10r3601: Lots of smaller DCOM updates and fixes. Adds oxid tables, properJelmer Vernooij1-3/+3
use of contexts. (This used to be commit 93eb3cd99c4fb065a69eabcead0c33804259c976)
2007-10-10r3600: fixed two debug typosAndrew Tridgell1-2/+2
(This used to be commit d0149b173f70cf012e6ed2382394985fb4950af6)
2007-10-10r3586: Fix some of the issues with the module init functions.Jelmer Vernooij1-0/+6
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-10r3542: Re-indent, and fix a use-after-free by doing the talloc_destroy just aAndrew Bartlett1-4/+4
little later. Andrew Bartlett (This used to be commit b7c2a4fc34ef09b177508dcf475055523b84587c)
2007-10-10r3517: Fix the build - Sorry!Jelmer Vernooij1-4/+0
(This used to be commit a5c9e0a1854fdde14342e6bba511e4190122c2e1)
2007-10-10r3516: dcerpc_epm_map_binding now checks the endpoints it nows firstJelmer Vernooij1-37/+24
and then possibly does a epm_Map call(). ncacn_np now also uses dcerpc_epm_map_binding() (This used to be commit 77eec3fa18dbbf4d774ccf04c7a38b0887f26ca6)
2007-10-10r3515: Fix RemoteActivation correctly this time (-:Jelmer Vernooij1-1/+7
Thanks to tridge for some help on this one! (This used to be commit 1104667190aa144e2c7d79ece9a55502b98d0351)
2007-10-10r3513: Add (the infrastructure for) DCOM support. Contents:Jelmer Vernooij1-3/+12
- 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-10r3507: - added deferred replies on sharing violation in pvfs open. TheAndrew Tridgell1-1/+1
deferred reply is short-circuited immediately when the file is closed by another user, allowing it to be opened by the waiting user. - added a sane set of timeval manipulation routines - converted all the events code and code that uses it to use struct timeval instead of time_t, which allows for microsecond resolution instead of 1 second resolution. This was needed for doing the pvfs deferred open code, and is why the patch is so big. (This used to be commit 0d51511d408d91eb5f68a35e980e0875299b1831)
2007-10-10r3497: removed some include cruft, and split out librpc/gen_ndr/tables.hAndrew Tridgell1-0/+1
(This used to be commit 7dd3a5a6dadb0edc4fad56deba84f24b1e6dd2bc)
2007-10-10r3481: split out client.h and events.hAndrew Tridgell1-0/+1
(This used to be commit c6f486574470a311e0d336c026103f131451e21e)
2007-10-10r3463: separated out some more headers (asn_1.h, messages.h, dlinklist.h and ↵Andrew Tridgell2-0/+2
ioctl.h) (This used to be commit b97e395c814762024336c1cf4d7c25be8da5813a)
2007-10-10r3457: s_addr is a macro on solaris, so we can't use it in structure names. ↵Andrew Tridgell1-1/+1
arrgh. (This used to be commit 7842b23d01c53009259a2461600bd01159cecebf)
2007-10-10r3453: - split out the auth and popt includesAndrew Tridgell1-0/+1
- tidied up some of the system includes - moved a few more structures back from misc.idl to netlogon.idl and samr.idl now that pidl knows about inter-IDL dependencies (This used to be commit 7b7477ac42d96faac1b0ff361525d2c63cedfc64)
2007-10-10r3444: Don't use random data as endpoint if no default endpoint is known and noJelmer Vernooij1-1/+6
endpoint was specified for ncacn_np. (This used to be commit 5f47bf1187fbd07fd8eb88da2a1fea2b0e9addf8)
2007-10-10r3443: the next stage in the include files re-organisation.Andrew Tridgell1-2/+3
I have created the include/system/ directory, which will contain the wrappers for the system includes for logical subsystems. So far I have created include/system/kerberos.h and include/system/network.h, which contain all the system includes for kerberos code and networking code. These are the included in subsystems that need kerberos or networking respectively. Note that this method avoids the mess of #ifdef HAVE_XXX_H in every C file, instead each C module includes the include/system/XXX.h file for the logical system support it needs, and the details are kept isolated in include/system/ This patch also creates a "struct ipv4_addr" which replaces "struct in_addr" in our code. That avoids every C file needing to import all the system networking headers. (This used to be commit 2e25c71853f8996f73755277e448e7d670810349)
2007-10-10r3434: Fix memleakVolker Lendecke1-2/+3
(This used to be commit 0a12cc4cadf7c1e97282a0d8ab2f486536987a77)
2007-10-10r3428: switched to using minimal includes for the auto-generated RPC code.Andrew Tridgell4-1/+4
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-10r3419: moved the libcli/raw structures into libcli/raw/libcliraw.hAndrew Tridgell1-0/+1
and made them private (This used to be commit 386ac565c452ede1d74e06acb401ca9db99d3ff3)
2007-10-10r3412: Add NCACN_SPX and NCADG_IPX transportsJelmer Vernooij2-1/+7
(This used to be commit ff2f2b4273ce9a49599b385d32fbbd5e8f0d4c23)
2007-10-10r3392: fixed schannel over ncalrpcAndrew Tridgell2-0/+13
(This used to be commit 0b93be9f5f89ef17f94e8e98c3a405495e04e235)
2007-10-10r3391: fixed some memory leaks in the schannel codeAndrew Tridgell2-13/+7
(This used to be commit eb3366d3667ddddf7ab5eae5d1fbc5de86c41072)
2007-10-10r3390: fixed schannel server side support. RPC-SCHANNEL now works against ↵Andrew Tridgell1-1/+0
Samba4. (This used to be commit 01f5c1c72d9fc8f21029adc586154b0c54f76c9e)
2007-10-10r3389: fixed schannel client side code. RPC-SCHANNEL now works against w2k3Andrew Tridgell1-0/+6
again. The problem was that the sig_size method didn't get added in the gensec conversion. (This used to be commit a49b61173dbadbf4efb0fbcfaba67da393913639)
2007-10-10r3388: when doing schannel use a anonymous session setup (as the machine acctAndrew Tridgell1-1/+2
isn't allowed to login on a share) (This used to be commit 8c0be60d8d59863f0bcdd17012dce923c139ce09)
2007-10-10r3383: avoid multi-part SMBtrans and SMBtrans2 replies until our client ↵Andrew Tridgell1-1/+1
library can handle them properly (they are difficult to do in an async fashion). By choosing trans.in.max_data to fix in the negotiated buffer size a server won't send us multi-part replies. I notice that windows seems to avoid them too :) (This used to be commit e23edf762cace35f937959c9ffbef718431a79b9)
2007-10-10r3330: Use IPv6 for RPC client connections if we canJelmer Vernooij1-1/+9
(This used to be commit 9426a655356f817f3d3174d25caa25224043d373)
2007-10-10r3322: fixed a bunch of warnings in the build, including one case where it ↵Andrew Tridgell1-1/+1
was a real bug (This used to be commit 02d5d0f685e44bd66aff4a007f0bf34c8f915574)
2007-10-10r3304: changed the API to lib/socket/ a little.Andrew Tridgell1-14/+14
The main change is to make socket_recv() take a pre-allocated buffer, rather than allocating one itself. This allows non-blocking users of this API to avoid a memcpy(). As a result our messaging code is now about 10% faster, and the ncacn_ip_tcp and ncalrpc code is also faster. The second change was to remove the unused mem_ctx argument from socket_send(). Having it there implied that memory could be allocated, which meant the caller had to worry about freeing that memory (if for example it is sending in a tight loop using the same memory context). Removing that unused argument keeps life simpler for users. (This used to be commit a16e4756cd68ca8aab4ffc59d4d9db0b6e44dbd1)
2007-10-10r3280: fixed byte order of rhs IPAndrew Tridgell1-1/+1
(This used to be commit 29fab12d0b1649046ab2abb08b51f9845c8f8116)
2007-10-10r3278: - rewrote the client side rpc connection code to use lib/socket/Andrew Tridgell2-228/+83
rather than doing everything itself. This greatly simplifies the code, although I really don't like the socket_recv() interface (it always allocates memory for you, which means an extra memcpy in this code) - fixed several bugs in the socket_ipv4.c code, in particular client side code used a non-blocking connect but didn't handle EINPROGRESS, so it had no chance of working. Also fixed the error codes, using map_nt_error_from_unix() - cleaned up and expanded map_nt_error_from_unix() - changed interpret_addr2() to not take a mem_ctx. It makes absolutely no sense to allocate a fixed size 4 byte structure like this. Dozens of places in the code were also using interpret_addr2() incorrectly (precisely because the allocation made no sense) (This used to be commit 7f2c771b0e0e98c5c9e5cf662592d64d34ff1205)
2007-10-10r3277: don't use the non-portable getaddrinfo() function, instead useAndrew Tridgell1-18/+3
interpret_addr() and if someone wants to add support to that function for ipv6 then they are welcome to. (This used to be commit 50377db11bb727b407744e0c50805c8f90810c16)
2007-10-10r3211: Add a graphical endpoint mapper view toolJelmer Vernooij1-8/+8
(This used to be commit 71dfc27b8efb3057c4b7383feca0ba35ab5768a4)
2007-10-10r3209: - Create directory for ncalrpc with correct modeJelmer Vernooij2-8/+13
- Support binding strings like : ncacn_np:[sign] ncacn_np:myhost[seal,sign,endpoint] again (This used to be commit b53f4cd1697345065c7d979ba63237bf828dc07f)
2007-10-10r3205: Create ncalrpc directory if it didn't exist yetJelmer Vernooij2-2/+2
(This used to be commit 1161c33794cdb16a3d09a66258f46e0020c4aeef)
2007-10-10r3168: Use generic function for looking up endpointsJelmer Vernooij1-203/+3
(This used to be commit 45a3e2a9815058a3a828c573573c5eee605f9129)
2007-10-10r3167: Add a member 'endpoint' to the dcerpc_binding struct to use instead ofJelmer Vernooij2-36/+137
options[0]. (This used to be commit 18582083af800abd3d8de40eb73255c8ae6598dd)
2007-10-10r3164: Look up ncalrpc identifiers using the EPMAPPER. ncalrpc now works ↵Jelmer Vernooij1-8/+117
nicely :-) The various interface that support ncalrpc work nicely when tested with smbtorture and ncalrpc. Running RPC-SAMR against local smbd here is slightly faster using ncalrpc: ncalrpc: 1.8 sec ncacn_ip_tcp: 1.9 sec ncacn_np: 2.5 sec (This used to be commit 2cfc8f24ce209f47153d3a5bd7007dd1b0578b26)
2007-10-10r3162: Add client-side support for the ncalrpc: and ncacn_unix_stream: ↵Jelmer Vernooij3-382/+644
transports. ncalrpc uses the new config option "ncalrpc dir" for creating unix sockets. (This used to be commit b15cfbe2512961a199ecb069730d9a19787579f5)
2007-10-10r3157: Add ncacn_httpJelmer Vernooij2-1/+4
(This used to be commit a0c4138edf919ee0c4b236f201c09fc4deb2cc09)
2007-10-10r3156: Couple of fixes in the conversion functions between binding structs andJelmer Vernooij1-24/+29
protocol towers (This used to be commit f41dfc6c5a85bf241e4bcc0669f6191bf531e89a)
2007-10-10r3136: - Allow specifying socket type when adding smbd serviceJelmer Vernooij2-19/+20
- Make sure a epm_tower struct is completely initialized - Some more minor fixes (This used to be commit d560dcbdb85cb2c6915bdb9e2f82f1872b0f5a52)
2007-10-10r3125: Store object UUID directly instead of using a pointer (struct ↵Jelmer Vernooij2-17/+8
dcerpc_binding) Let test fail if messaging_init() fails instead of generating segfault in the LOCAL-MESSAGING test (This used to be commit 0609f410ef756501d50c04b544387ae547fcd63c)
2007-10-10r3124: Add dcerpc_binding_from_tower()Jelmer Vernooij1-2/+134
Add tests for dcerpc_binding_from_tower() (This used to be commit 88c6d34bba1a409127b26f86bd963bfab30a804c)
2007-10-10r3123: Add dcerpc_binding_build_tower()Jelmer Vernooij1-10/+184
Add local test for testing the functions dcerpc_parse_binding(), dcerpc_binding_string() and dcerpc_binding_build_tower() (This used to be commit 7a07c2c769b8e51178789eed4a31577f5d39f63a)
2007-10-10r3114: - More work on merging the various structs that describe endpointsJelmer Vernooij2-12/+39
- Add protocol sequence to dcerpc transports (will be used later on) - Add more transports to the list (This used to be commit ab110192e6e2c1e5a3b2befe7b61158744f15d18)
2007-10-10r3111: Add a few more protocol identifiers, rhs for ncalrpcJelmer Vernooij1-22/+22
(This used to be commit 53567a83cbca9df60bef76a15df24d2cd89a16b0)