summaryrefslogtreecommitdiff
path: root/source4/librpc
AgeCommit message (Collapse)AuthorFilesLines
2007-10-10r1077: fix segfault in schannel over ncacn_ip_tcpStefan Metzmacher2-13/+15
metze (This used to be commit 9e9a52692ebe9d47f1a08740ea1dcb8f46041211)
2007-10-10r1068: make the dcerpc client side auth/crypto code much more genericStefan Metzmacher6-282/+370
metze (This used to be commit 1706ff88a72c6578a109c2cf24f2f009812c3892)
2007-10-10r1061: The start of the SamLogon call for the NETLOGON pipe.Andrew Bartlett1-7/+19
Changes: - Check for a valid 'pipe_state' in netr_ServerAuthenticate3 before we dereference it - removes the expansionroom[7] in the netr_SamInfo* structs to 7 individual elements. - renames netr_SamInfo -> netr_SamInfo2 netr_SamInfo2 -> netr_SamInfo3 - Having the thing we always called an 'info3' being 'netr_SamInfo2' was just too confusing. - Expand and fill in extra details about users from the SAM, into the server_info, for processing into the SamLogon reply. - Add a dum_sid_dup() function to duplicate a struct dom_sid The SamLogon code currently does not return supplementary groups, and is only tested with Samba4 smbtorture. Andrew Bartlett (This used to be commit 6c92563b7961f15fc74b02601e105d5e1d04f04d)
2007-10-10r1058: The start of work on the SamLogon call for NETLOGON.Andrew Bartlett1-17/+17
This starts to store information about the user in the server_info struct - like the account name, the full name etc. Also, continue to make the names of the structure elements in the logon reply more consistant with those in the SAMR pipe. Andrew Bartlett (This used to be commit 3ccd96bd945e0fd95e42c69ad8ff07055af2e62b)
2007-10-10r1048: - moved the schannel definitions into a separate schannel.idlAndrew Tridgell5-18/+61
- added server side support for schannel type 23. This allows WinXP to establish a schannel connection to Samba4 as an ADS DC - added client side support for schannel type 23, but disabled it as currently the client code has now way of getting the fully qualified domain name (which is needed) - report dcerpc faults in the server code in the log (This used to be commit 55e0b014fe14ca8811b55887208a1c3147ddb0d2)
2007-10-10r1042: added testing of 128 bit schannel session keysAndrew Tridgell2-1/+9
(This used to be commit 96fc2b6f1e7372cc3646bd52172187b8a689c15a)
2007-10-10r1041: - pulled the domain join code out of the netlogon test and made it a ↵Andrew Tridgell3-57/+88
separate utility function, to allow multiple torture tests to temporarily join a domain - fixed a session key size problem - added a schannel test suite - allow schannel to work with ncacn_ip_tcp (This used to be commit 36f05e4d575099fcb957b8a55781c38dcd2e1177)
2007-10-10r1031: Move more code dealing with passwords to struct samr_Password.Andrew Bartlett1-3/+3
Andrew Bartlett (This used to be commit 88222b5da9a005e48477d2bfd98a488e4442b5f6)
2007-10-10r1030: added server side schannel supportAndrew Tridgell5-18/+54
(This used to be commit 2ac79dfba0e64056a680f21d7dd0c007f79d4a70)
2007-10-10r1025: Rename (across the samr and netlogon pipes, so far)Andrew Bartlett3-54/+54
pwd -> password passwd -> password username -> account_name Also work on consistant structure feild names between these two pipes, and fix up some callers to use samr_Password for the netlogon credential code. Andrew Bartlett (This used to be commit 4e35418c2776f7b79be5b358ffd077754685d1ac)
2007-10-10r1009: Make all users of NT and LM passwords use the samr_Password structure.Andrew Bartlett3-25/+21
This includes the netlogon pipe, for the machine account password change system. Andrew Bartlett (This used to be commit 49d545a82057ee8b60d50aa55e908efe59875150)
2007-10-10r995: - renamed many of our crypto routines to use the industry standardAndrew Tridgell1-1/+2
names rather than our crazy naming scheme. So DES is now called des_crypt() rather than smbhash() - added the code from the solution of the ADS crypto challenge that allows Samba to correctly handle a 128 bit session key in all of the netr_ServerAuthenticateX() varients. A huge thanks to Luke Howard from PADL for solving this one! - restructured the server side rpc authentication to allow for other than NTLMSSP sign and seal. This commit just adds the structure, the next commit will add schannel server side support. - added 128 bit session key support to our client side code, and testing against w2k3 with smbtorture. Works well. (This used to be commit 729b2f41c924a0b435d44a14209e6dacc2304cee)
2007-10-10r963: Tridge, according to ethereal this is an 'Acct Ctrl' field. My tests alsoVolker Lendecke1-1/+1
indicate this although I could not find any consistent pattern. I found this as 'net rpc group list local' in Samba3 sets this to 250 and only gets a fixed, but incomplete list of groups out of W2k3. I tried to correlate the results I got from w2k3 with the LDAP contents of the corresponding entries, but I could not find anything. Ethereal only decodes the lower byte, but to get all it seems necessary to have 0xffff here. If you have time, could you might want to spend some of it decoding the bits for SAMR completeness.... Volker (This used to be commit 74e59c45603a9f897a24e37fc7626cf8ffc81403)
2007-10-10r962: convert 'unsigned' and 'unsigned int' to uint_tStefan Metzmacher6-7/+7
metze (This used to be commit 57151e80eb1090281401930c8fe25b20a8cf3a38)
2007-10-10r961: convert 'uchar' to 'uint8_t'Stefan Metzmacher3-12/+12
metze (This used to be commit 9f914e4af99e18b469d4cf9d8b1514a2bd28ddec)
2007-10-10r960: convert 'unsigned int' to uint_t in the most placesStefan Metzmacher1-1/+1
metze (This used to be commit 18062d2ed9fc9224c43143c10efbf2f6f1f5bbe0)
2007-10-10r952: fixed schannel from my last commitAndrew Tridgell1-4/+10
(This used to be commit 05b69d9fff0922e2864a336f203bf2afc932d1b9)
2007-10-10r950: - added netr_ServerAuthenticate3(). This is used by WinXP clients who ↵Andrew Tridgell1-10/+18
try to login to Samba4, as WinXP sees us as an ADS server. Unfortunately WinXP also uses a set of negotiate_flags that we don't support yet. Some crypto work needed. (This used to be commit 2d740b65706fb5b4ebc138587472a885d680517f)
2007-10-10r937: - added a simple QuerySecurity implementation in samr serverAndrew Tridgell6-2/+174
- moved some sec desc defines into misc.idl - fixed pw_len field in UserInfo26 - made some pipes available on TCP - added netr_DsrEnumerateDomainTrusts() to netlogon - added templates for remaining netlogon IDL calls (from ethereal) - added a unistr_noterm vs unistr error detector in ndr basic decoder - added torture test for netr_DsrEnumerateDomainTrusts() (This used to be commit ae5a5113fb83640dcb9ae4642c1b9eaf28487956)
2007-10-10r924: got rid of the global well-known SIDs, instead using const defines in ↵Andrew Tridgell1-0/+30
misc.idl (This used to be commit ce7920a5fac0dbccb01402129c341b410a032e60)
2007-10-10r920: a placeholder lsads.idl file (lack of this is why the build farm is ↵Andrew Tridgell1-0/+16
unhappy for samba4) (This used to be commit 35dfa3e07b2e4d200d9f6ab1aea27a6471d5e546)
2007-10-10r919: - added lsa_QueryInfoPolicy2() to IDL, test suite and serverAndrew Tridgell1-1/+8
- added lsa_OpenPolicy2() to server - added guid handling in samdb - added a couple more info policy levels in lsa server - added some DNS info in the provisioning template and script With the above changes WinXP professional can join a Samba4 domain (This used to be commit d6dca96352144d6061175c964069ed54d942b9c2)
2007-10-10r917: - added the start of a LSA server to samba4.Andrew Tridgell3-35/+28
- added start of QueryDomainInfo in samr server "net rpc info" from samba3 now works against a samba4 server. I suspect join will work fairly soon. (This used to be commit 0a2c6a1062d0e364356853001f5f39bdb542f453)
2007-10-10r895: use _t in base ndr fnsAndrew Tridgell1-4/+4
(This used to be commit b3c00acdf0e85563b5d5ce1f9bc86cc2e781d53e)
2007-10-10r890: convert samba4 to use [u]int8_t instead of [u]int8Stefan Metzmacher2-9/+9
metze (This used to be commit 2986c5f08c8f0c26a2ea7b6ce20aae025183109f)
2007-10-10r889: convert samba4 to use [u]int16_t instead of [u]int16Stefan Metzmacher5-19/+19
metze (This used to be commit af6f1f8a01bebbecd99bc8c066519e89966e65e3)
2007-10-10r884: convert samba4 to use [u]int32_t instead of [u]int32Stefan Metzmacher13-112/+112
metze (This used to be commit 0e5517d937a2eb7cf707991d1c7498c1ab456095)
2007-10-10r877: This attempt at IDL was accidently included in the pervious commit.Andrew Bartlett1-9/+1
Andrew Bartlett (This used to be commit 6b91ab152d7bfadc113b6f206fcce4db54429871)
2007-10-10r874: This patch is a pile of work on NTLMSSP:Andrew Bartlett5-34/+45
Samba's NTLMSSP code is now fully talloc based, which should go a long way to cleaning up the memory leaks in this code. This also avoids a lot of extra copies of data, as we now allocate the 'return' blobs on a caller-supplied context. I have also been doing a lot of work towards NTLM2 signing and sealing. I have this working for sealing, but not for the verifier (MD5 integrity check on the stream) which is still incorrect. (I can aim a rpcecho sinkdata from a Win2k3 box to my server, and the data arrives intact, but the signature check fails. It does however match the test values I have...). The new torture test is cludged in - when we get a unit test suite back, I'll happliy put it in the 'right' place.... Andrew Bartlett (This used to be commit 399e2e2b1149b8d1c070aa7f0d5131c0b577d2b9)
2007-10-10r873: converted samba4 to use real 64 bit integers instead ofAndrew Tridgell4-35/+79
structures. This was suggested by metze recently. I checked on the build farm and all the machines we have support 64 bit ints, and support the LL suffix for 64 bit constants. I suspect some won't support strtoll() and related functions, so we will probably need replacements for those. (This used to be commit 9a9244a1c66654c12abe4379661cba83a73c4c21)
2007-10-10r793: - don't make templates members of any class that would make them showAndrew Tridgell1-0/+3
up in searches like "objectclass=user" - auto-add the computer objectclass for computer accounts on create - added two types of password change call in samr server - reset last_fault_code before each dcerpc call (This used to be commit c1a65f83f6a4c51e60efd204dab89c20cda65d2b)
2007-10-10r781: added level6 for logon level in SamLogon netlogon.idlAndrew Tridgell1-2/+3
(This used to be commit 446808ae4dbdcd0c64387c54b7d49649971e36d0)
2007-10-10r739: Implement GetNumRecords() call from eventlog pipe, including a torture ↵Jelmer Vernooij1-16/+76
test (This used to be commit 6a254e26f17c2b3175023764c02dc73615d585d6)
2007-10-10r712: fixed a bug in the NetShareGetInfo idl, and added another info levelAndrew Tridgell1-1/+6
(This used to be commit 93977055939c5282dbf218f3a6739fa17ebfc641)
2007-10-10r665: merge over the new build system from my tmp branchStefan Metzmacher1-24/+38
to the main SAMBA_4_0 tree. NOTE: that it's not completely ready, but it's functional:-) metze (This used to be commit c78a2ddb28ec50d6570a83b1f66f18a5c3621731)
2007-10-10r649: return unknown interface when the client not yetStefan Metzmacher1-0/+1
binds succesful to an interface metze (This used to be commit c39e450702cfa2b577c64e14ba1428fd95db7ade)
2007-10-10r644: add SPNEGO auth typeStefan Metzmacher1-0/+1
metze (This used to be commit 75bca5dcfa68de0d18a144a221260d2f728e0bfc)
2007-10-10r610: - Merge the Samba3 'ntlm_auth --diagnostics' testsuite to Samba4.Andrew Bartlett5-31/+17
- This required using NETLOGON_NEG_AUTH2_FLAGS for the SetupCredentials2 negotiation flags, which is what Samba3 does, because otherwise the server uses different crypto. - This tests the returned session keys, which we decrypt. - Update the Samba4 notion of a 'session key' to be a DATA_BLOB in most places. - Fix session key code to return NT_STATUS_NO_SESSION_KEY if none is available. - Remove a useless argument to SMBsesskeygen_ntv1 - move netr_CredentialState from the .idl to the new credentials.h Andrew Bartlett (This used to be commit 44f8b5b53e6abd4de8a676f78d729988fadff320)
2007-10-10r601: added the server code for all the samr_SetUserInfo and ↵Andrew Tridgell1-3/+18
samr_QueryUserInfo levels except for the password set levels. This means that a large part of the RPC-SAMR torture test now runs correctly against Samba4 (This used to be commit ec0a51898f543578e755207d81ed5c1524861c64)
2007-10-10r593: add a constant for the records size multiplier for max_size in ↵Andrew Tridgell1-0/+2
samr_EnumDomainUsers (This used to be commit 252b11112ce22152de3d53d0ba657879346ff243)
2007-10-10r587: added server code for samr_EnumDomainUsers, and started addingAndrew Tridgell1-0/+4
samr_SetUserInfo and samr_QueryUserInfo (This used to be commit e0db9659a85b59e52fbe033a94b411d6c64d9f9c)
2007-10-10r582: added the LMSessKey in SamInfo and SamInfo2, thanks to work by abartletAndrew Tridgell1-3/+11
added test code for SamLogon validation level 2 and 3, so we test both SamInfo and SamInfo2 (This used to be commit 321dbb61cc0743379ceb6b8fff6a0ca37f308bc2)
2007-10-10r575: moved the SID_NAME_USE enum into samr.idlAndrew Tridgell1-0/+12
(This used to be commit 2cb06b39d91ef18b21c18e9376ccbd8076aeecf8)
2007-10-10r511: fix some const handlingAndrew Tridgell1-3/+3
(This used to be commit be94cc4032b23fd99823902ddcd1472a72314a88)
2007-10-10r469: considerably improved the ChangePasswordUser3() IDL thanks to an idea ↵Andrew Tridgell1-6/+13
from abartlet (This used to be commit 5f30c3b077b59fc7ec40644e3af7236292100c6b)
2007-10-10r464: a big improvement to the API for writing server-side RPCAndrew Tridgell1-28/+28
servers. Previously the server pipe code needed to return the RPC level status (nearly always "OK") and separately set the function call return using r->out.result. All the programmers writing servers (metze, jelmer and me) were often getting this wrong, by doing things like "return NT_STATUS_NO_MEMORY" which was really quite meaningless as there is no code like that at the dcerpc level. I have now modified pidl to generate the necessary boilerplate so that just returning the status you want from the function will work. So for a NTSTATUS function you return NT_STATUS_XXX and from a WERROR function you return WERR_XXX. If you really want to generate a DCERPC level fault rather than just a return value in your function then you should use the DCESRV_FAULT() macro which will correctly generate a fault for you. As a side effect, this also adds automatic type checking of all of our server side rpc functions, which was impossible with the old API. When I changed the API I found and fixed quite a few functions with the wrong type information, so this is definately useful. I have also changed the server side template generation to generate a DCERPC "operation range error" by default when you have not yet filled in a server side function. This allows us to correctly implement functions in any order in our rpc pipe servers and give the client the right information about the fault. (This used to be commit a4df5c7cf88891a78d82c8d6d7f058d8485e73f0)
2007-10-10r420: added nicer names for the field bits in userinfo21Andrew Tridgell1-2/+14
added tests for the level 23 and 25 password change methods (This used to be commit d49f7a6a0d1895de3d654a5b46c6aec3a57fde76)
2007-10-10r392: added IDL for 3 more netlogon Delta levels, thanks to a dump from ↵Andrew Tridgell1-5/+21
Richard Renard (This used to be commit 2d8772ec9607c4e06bbc559b35979e27d4b988d9)
2007-10-10r390: added my best guess for how session keys are supposed to work when youAndrew Tridgell4-5/+34
use NTLMSSP sign or seal at the RPC layer It doesn't work yet, but then again neither does the old code (which just assumed the SMB session key was used, which of course makes no sense on a ncacn_ip_tcp connection) (This used to be commit e8782329269bc78d36d8ca83fb7a4e38b9c6b167)
2007-10-10r388: added IDL for 3 more set user info levels (all of which set theAndrew Tridgell1-0/+22
password). That makes 8 ways to change a password just on the SAMR pipe! Thanks to Luke Howard from PADL for this. (This used to be commit c8a49a7e004468d13f656f67eac4b7b4e1759022)