summaryrefslogtreecommitdiff
path: root/source4/rpc_server
AgeCommit message (Collapse)AuthorFilesLines
2007-10-10r9410: - a winreg_CloseKey() should return a zero key on success (zeroing theAndrew Tridgell1-7/+4
callers key). This is the normal pattern with rpc handles. - fixed reference to undefined error variable in winreg_DeleteKey() (This used to be commit 6757d51a280d6c393648a384f1ef3ca403517352)
2007-10-10r9392: Fix ldb_dn_compose to make build farm happySimo Sorce2-14/+5
Add ldb_dn_string_compose so that you can build a dn starting from a struct ldb_dn base and a set of parameters to be composed in a format string with the same syntax of printf (This used to be commit 31c69d0655752cc8ea3bc5b7ea87792291302091)
2007-10-10r9391: Convert all the code to use struct ldb_dn to ohandle ldap like ↵Simo Sorce6-97/+130
distinguished names Provide more functions to handle DNs in this form (This used to be commit 692e35b7797e39533dd2a1c4b63d9da30f1eb5ba)
2007-10-10r9388: we should fault bad handles given to winreg_GetVersion()Andrew Tridgell1-1/+5
(This used to be commit 00e55be9efc6050e3bda13603270b028dbc19c3f)
2007-10-10r9384: added a debug to show the dcerpc fault code for any calls we faultAndrew Tridgell1-0/+4
(This used to be commit 92ed69695b2a5459e79f3edb37790a17de5a66c6)
2007-10-10r9359: don't check for size overflow if value is NULLAndrew Tridgell1-1/+2
this gets viewing the product options in smbd HKLM from w2k3 regedit working (This used to be commit 17f3250dd61bc9aad5cf3804e271383e219752f6)
2007-10-10r9358: - opening a winreg key of "" is the same as re-opening the hive. TheAndrew Tridgell1-11/+17
w2k3 regedit does this. - w2k3 expects null termination is string lengths (This used to be commit bcef9e592acd96a2fd7028b299d3d93968d044ae)
2007-10-10r9338: fixed the winreg IDL to be correct for the EnumKey and EnumValueAndrew Tridgell1-12/+38
calls. The previous IDL was just a workaround for the limitations of our older rpc infrastructure. Now that Jelmer has added much improved string support using the charset keyword we can correctly implemenent the unusual winreg string buffers. Jelmer, note the little comment I put on winreg_StringBuf() about why I couldn't use [value()] for the length field. This also fixes EnumKey() and EnumValue() to use NTTIME fields for the last_changed_time. I don't know why we were using a pair of uint32's, as it is just a NTTIME. (This used to be commit 8354b016122cc4f3cff042b3ada1de07e1614eb7)
2007-10-10r9284: Whitespace. (-:Tim Potter1-3/+3
(This used to be commit 6a7922a02c19b5ea2b77011ff593c6d535d0b212)
2007-10-10r9016: More work to avoid abuse of the "name" attribute, this time onAndrew Bartlett1-11/+27
NETLOGON. Andrew Bartlett (This used to be commit e9837d49bc8d784b365c0a7470ebfbd6f396464d)
2007-10-10r9015: Fix access to BUILTIN again.Andrew Bartlett1-31/+34
Andrew Bartlett (This used to be commit 2beb694226429319ff3799adbd7be50af99df02c)
2007-10-10r9011: Remove more references to "name" as a netbios name, using theAndrew Bartlett2-21/+82
cross-reference instead. Andrew Bartlett (This used to be commit 0f7b1136f6e0779f28f2132a8606dd64be20c42e)
2007-10-10r8998: More work on the RPC server code to avoid abusing the name attributeAndrew Bartlett2-29/+39
as a netbios name. Andrew Bartlett (This used to be commit 242db48b98a04eed46bb35946dcd68b579bffe00)
2007-10-10r8984: Use the correct cross-reference search in DRSUAPI, rather than makingAndrew Bartlett1-9/+10
assumptions about the behaviour of "name" as a NETBIOS domain name. Andrew Bartlett (This used to be commit ba5fe07b97a99c34256f849dfbdd9a307a7d238d)
2007-10-10r8983: The KVNO (Kerberos key version number) should be incremented withAndrew Bartlett1-0/+4
every password set. Andrew Bartlett (This used to be commit 71958cb19f8a2289e97f29018bb252a7d4540258)
2007-10-10r8982: "name" is not the netbios name, but the RDN. Return the correctAndrew Bartlett1-13/+4
netbios domain name of the host, as well as the sid from the cache we fetched earlier. Andrew Bartlett (This used to be commit c847ca2cc8244a7ce4180d17397723a486bbecc8)
2007-10-10r8974: Support makefile fragments in .mk filesJelmer Vernooij1-1/+1
(This used to be commit 8d9c18a1b4cf31ebae1d0c84b00b4d781f55de66)
2007-10-10r8811: Fix the build..Jelmer Vernooij2-0/+2
(This used to be commit fac77f5fa267da57a55e88cad8993897e80741a0)
2007-10-10r8790: Finish the migration of aliases and privilages with SamSync, by addingAndrew Bartlett2-48/+34
templating support for foreignSecurityPrincipals to the samdb module. This is an extension beyond what microsoft does, and has been very useful :-) The setup scripts have been modified to use the new template, as has the SAMR and LSA code. Other cleanups in LSA remove the assumption that the short domain name is the first component of the realm. Also add a lot of useful debug messages, to make it clear how/why the SamSync may have gone wrong. Many of these should perhaps be hooked into an error string. Andrew Bartlett (This used to be commit 1f071b0609c5c83024db1d4a7d04334a932b8253)
2007-10-10r8700: Propmted by tridge's need to do plaintext auth in ejs, rework theAndrew Bartlett2-21/+34
user_info strcture in auth/ This moves it to a pattern much like that found in ntvfs, with functions to migrate between PAIN, HASH and RESPONSE passwords. Instead of make_user_info*() functions, we simply fill in the control block in the callers, per recent dicussions on the lists. This removed a lot of data copies as well as error paths, as we can grab much of it with talloc. Andrew Bartlett (This used to be commit ecbd2235a3e2be937440fa1dc0aecc5a047eda88)
2007-10-10r8670: Remove GUID code from SAMR, it is handled lower down now. I noticeAndrew Bartlett1-11/+1
this code also does string SIDs, but I'm not quite sure where that fits in. Andrew Bartlett (This used to be commit 968bcc4fe8142319ca0a2ac9e3a895b5436b4552)
2007-10-10r8593: register the rpc server with irpcAndrew Tridgell1-0/+3
(This used to be commit bc9d9531f54d9dac3bb48e0704c6bff524dae465)
2007-10-10r8520: fixed a pile of warnings from the build farm gcc -Wall output onAndrew Tridgell2-7/+13
S390. This is an attempt to avoid the panic we're seeing in the automatic builds. The main fixes are: - assumptions that sizeof(size_t) == sizeof(int), mostly in printf formats - use of NULL format statements to perform dn searches. - assumption that sizeof() returns an int (This used to be commit a58ea6b3854973b694d2b1e22323ed7eb00e3a3f)
2007-10-10r8429: fix compiler warningsStefan Metzmacher1-3/+3
metze (This used to be commit b9ee5818808f2e0cd38c0c5d2ef15cba22d4edbe)
2007-10-10r8371: the objectGUID is now stored in binary...Stefan Metzmacher1-5/+4
metze (This used to be commit b920b306b3813ba4a220249dbd7e443605074c9b)
2007-10-10r8370: remove the '$' from in the cn: attribute for computer and dc accountsStefan Metzmacher1-7/+21
metze (This used to be commit 206f33778e8ff88b5eea493ead31342cc4405a22)
2007-10-10r8232: remove samr_String and netr_String as they are the same as lsa_StringStefan Metzmacher1-2/+2
metze (This used to be commit e601042c07d7b6eed0dc34e5b136d9266b8a0f81)
2007-10-10r8226: w2k3 adds a '.' after the forest and domain dns names for the primary ↵Stefan Metzmacher1-10/+27
domain and NULL for the trusted domains forest dns name metze (This used to be commit 225fc1b8658f01217b55e2d1c6d5814ee5022559)
2007-10-10r8109: Try to print out more helpful debug messages on DCERPC server-sideAndrew Bartlett1-2/+3
gensec failure to start. Andrew Bartlett (This used to be commit bc8f8d2dcfbcf06bb9c49981bc3811b252a4b9b0)
2007-10-10r8052: that looks nicer:-)Stefan Metzmacher1-1/+1
metze (This used to be commit dad0371a9fea0de080650cb081beafdaa773ceda)
2007-10-10r8049: add function that returns the build version (of w2k3 here 3790)Stefan Metzmacher1-0/+6
metze (This used to be commit 81abbdaeb180a1618e34ab56275f6eeacfcc99ce)
2007-10-10r8046: - add somemore failure checks in the RPC-SPOOLSS testStefan Metzmacher1-8/+31
- test AddForm on the PrintServer object - GetForm() isn't allowed on the PrintServer object so remove NTPTR function for it - accept the dns name as servername in the spoolss server metze (This used to be commit d8c308a4653d59514915021607fe55c5f2b38749)
2007-10-10r8036: revert rev 8023/8024 as they have a bugs.Stefan Metzmacher2-40/+41
metze (This used to be commit 66d6b1d5783cba98f2f8e1c8eed1bdc26a5bad4f)
2007-10-10r8023: use a pointer to a DATA_BLOB for each reply,Stefan Metzmacher2-41/+40
that will allow the write_fn callback of dcesrv_output() to reference the memory with a valid TALLOC pointer metze (This used to be commit d0574d407f426f5c001e943dee5c03d24f4fb21c)
2007-10-10r8021: we only need to return STATUS_BUFFER_OVERFLOW for the ipc_trans repliesStefan Metzmacher2-46/+14
and not for the ipc_read() replies as here the client explicit says how much data it wants the write_fn() in dcesrv_output() now returns NTSTATUS and the ipc specific implementations are moved to the ntvfs_ipc module metze (This used to be commit fe483dcd874b7243d61e9623840c672b4ea06b2c)
2007-10-10r8006: I have seen w2k3 send multiple encoding syntaxes in rpc bindAndrew Tridgell1-1/+2
requests. This is a simple change to accept that, as long as the first one is NDR. (This used to be commit 330293ddff39266abb688c6292e59472ff47aebe)
2007-10-10r7993: Further work on the Krb5 PAC.Andrew Bartlett2-67/+6
We now generate the PAC, and can verifiy both our own PAC and the PAC from Win2k3. This commit adds the PAC generation code, spits out the code to get the information we need from the NETLOGON server back into a auth/ helper function, and adds a number of glue functions. In the process of building the PAC generation code, some hints in the Microsoft PAC specification shed light on other parts of the code, and the updates to samr.idl and netlogon.idl come from those hints. Also in this commit: The Heimdal build package has been split up, so as to only link the KDC with smbd, not the client utils. To enable the PAC to be veified with gensec_krb5 (which isn't quite dead yet), the keyblock has been passed back to the calling layer. Andrew Bartlett (This used to be commit e2015671c2f7501f832ff402873ffe6e53b89466)
2007-10-10r7927: fixed an error on partial socket writes in the rpc serverAndrew Tridgell2-2/+2
(This used to be commit 3c7b5de67294ef161289af7da6716b44ffc5d526)
2007-10-10r7865: changed pidl to take a "const void *" instead of a "void *" for theAndrew Tridgell3-3/+3
structure in ndr_push_*() and ndr_print_*(). The push and print functions really should not modify the structure. metze, to make this work I had to change your spoolss hand marshaller. Can you please check it is OK? I think that the IN and OUT sides of that function are not ever called on the same structure, so I think that attempt at remembering the value by assigning to r->in._offered was not doing anything anyway, but please correct me if I have misunderstood it. If you really do need to remember something on those structures I'd suggest the ndr_token_store() and ndr_token_retrieve() functions, which are used by pidl for just this sort of thing. (This used to be commit eee528be97fa43ca53bdc5652b4d29a0a2caf563)
2007-10-10r7860: switch our ldb storage format to use a NDR encoded objectSid. This isAndrew Tridgell5-223/+139
quite a large change as we had lots of code that assumed that objectSid was a string in S- format. metze and simo tried to convince me to use NDR format months ago, but I didn't listen, so its fair that I have the pain of fixing all the code now :-) This builds on the ldb_register_samba_handlers() and ldif handlers code I did earlier this week. There are still three parts of this conversion I have not finished: - the ltdb index records need to use the string form of the objectSid (to keep the DNs sane). Until that it done I have disabled indexing on objectSid, which is a big performance hit, but allows us to pass all our tests while I rejig the indexing system to use a externally supplied conversion function - I haven't yet put in place the code that allows client to use the "S-xxx-yyy" form for objectSid in ldap search expressions. w2k3 supports this, presumably by looking for the "S-" prefix to determine what type of objectSid form is being used by the client. I have been working on ways to handle this, but am not happy with them yet so they aren't part of this patch - I need to change pidl to generate push functions that take a "const void *" instead of a "void*" for the data pointer. That will fix the couple of new warnings this code generates. Luckily it many places the conversion to NDR formatted records actually simplified the code, as it means we no longer need as many calls to dom_sid_parse_talloc(). In some places it got more complex, but not many. (This used to be commit d40bc2fa8ddd43560315688eebdbe98bdd02756c)
2007-10-10r7850: Support mkdir() with just one parameter. Patch fromJelmer Vernooij1-0/+1
Steven Edwards <steven_ed4153@yahoo.com>. I've moved the Win32-specific tests to win32.m4 so it does not make any of the POSIX configure stuff more complicated. (This used to be commit bf85fdd01552f75b745fdf3159a7a87cd6521ed2)
2007-10-10r7802: Remove a junk file.Tim Potter1-71/+0
(This used to be commit a2d60dd878671d7ec4dbe631e8138d2279a2c6a4)
2007-10-10r7800: added the same request serialisation logic to our socket based rpcAndrew Tridgell3-0/+12
servers as I added to the smb server yesterday. This means rpc server code can assume it runs serially unless it explicitly sets the async flag on the request and returns (This used to be commit 8546adb56aa4dda608a176409c243b074aeca77d)
2007-10-10r7756: Don't segfault by trying to search for the NULL DN, if the wrongAndrew Bartlett1-5/+7
password was entered. We would not use the results of the search in any case. Andrew Bartlett (This used to be commit edeb908acaaaaab13bef4d2e3fae18d87c07af81)
2007-10-10r7755: fixed an uninitialised event_ctx found by abartletAndrew Tridgell1-3/+4
(This used to be commit 1462da3b6d190eecfb82268e6f2f04a42d8d5298)
2007-10-10r7644: - remove some dublicate structures SetForm and AddForm uses the same ↵Stefan Metzmacher1-3/+63
struct - fix some typos in EnumPrintServerForms()/GetPrintServerForms() - add AddPrintServerForms()/SetPrintServerForms() and DeletePrintServerForms metze (This used to be commit 73906388421beebb34f2a00c9e0d1fc8b400a42a)
2007-10-10r7643: This patch adds a new NTPTR subsystem:Stefan Metzmacher4-668/+294
- this is an abstraction layer for print services, like out NTVFS subsystem for file services - all protocol specific details are still in rpc_server/spoolss/ - like the stupid in and out Buffer handling - checking of the r->in.server_name - ... - this subsystem can have multiple implementation selected by the "ntptr providor" global-section parameter - I currently added a "simple_ldb" backend, that stores Printers, Forms, Ports, Monitors, ... in the spoolss.db, and does no real printing this backend is basicly for testing, how the spoolss protocol works - the interface is just a prototype and will be changed a bit the next days or weeks, till the simple_ldb backend can handle all calls that are used by normal w2k3/xp clients - I'll also make the api async, as the ntvfs api this will make things like the RemoteFindFirstPrinterChangeNotifyEx(), that opens a connection back to the client, easier to implement, as we should not block the whole smbd for that - the idea is to later implement a "unix" backend that works like the current samba3 code - and maybe some embedded print server vendors can write there own backend that can directly talk to a printer without having cups or something like this - the default settings are (it currently makes no sense to change them :-): ntptr providor = simple_ldb spoolss database = $private_dir/spoolss.db metze (This used to be commit 455b5536d41bc31ebef8290812f45d4a38afa8e9)
2007-10-10r7634: move TestSleep functions so that all of them are togetherStefan Metzmacher1-22/+22
metze (This used to be commit 520d5c67329e957121e3b71c1ffc0be3893c2033)
2007-10-10r7633: this patch started as an attempt to make the dcerpc code use a givenAndrew Tridgell3-4/+6
event_context for the socket_connect() call, so that when things that use dcerpc are running alongside anything else it doesn't block the whole process during a connect. Then of course I needed to change any code that created a dcerpc connection (such as the auth code) to also take an event context, and anything that called that and so on .... thus the size of the patch. There were 3 places where I punted: - abartlet wanted me to add a gensec_set_event_context() call instead of adding it to the gensec init calls. Andrew, my apologies for not doing this. I didn't do it as adding a new parameter allowed me to catch all the callers with the compiler. Now that its done, we could go back and use gensec_set_event_context() - the ejs code calls auth initialisation, which means it should pass in the event context from the web server. I punted on that. Needs fixing. - I used a NULL event context in dcom_get_pipe(). This is equivalent to what we did already, but should be fixed to use a callers event context. Jelmer, can you think of a clean way to do that? I also cleaned up a couple of things: - libnet_context_destroy() makes no sense. I removed it. - removed some unused vars in various places (This used to be commit 3a3025485bdb8f600ab528c0b4b4eef0c65e3fc9)
2007-10-10r7582: Better way to have a fast path searching for a specific DN.Simo Sorce3-60/+50
Old way was ugly and had a bug, you couldn't add an attribute named dn or distinguishedName and search for it, tdb would change that search in a dn search. This makes it also possible to search by dn against an ldap server as the old method was not supported by ldap syntaxes. sss (This used to be commit a614466dec2484a0d39bdfae53da822cfcf80926)