Age | Commit message (Collapse) | Author | Files | Lines |
|
Break out the samsync tests from RPC-NETLOGON into a new RPC-SAMSYNC,
that will cross-verify all the values.
Add support for the way netlogon credentials are shared between the
pipe that sets up schannel and the pipe that is encrypted with it.
Test this support, by calling both NETLOGON and SAMR operations in the
RPC-SCHANNEL test.
Move some of the Netlogon NEG flags into the .idl, now we have an idea
what a few of them really are.
Rename the sam_pwd_hash into a name that has meaning (all other crypto
functions were renamed in Samba4 ages ago).
Break out NTLMv2 functionality for operation on the NT hash - I intend
to do NTLMv2 logins in the samsync test in future, and naturally I
only have the hash.
Andrew Bartlett
(This used to be commit 6e6cc6fb9842113a1b0c7f6904dac709b320a6e5)
|
|
Andrew Bartlett
(This used to be commit f1d0bb409a481aeb094c586458f2b05576d2bef8)
|
|
- 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)
|
|
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)
|
|
(This used to be commit 0b93be9f5f89ef17f94e8e98c3a405495e04e235)
|
|
surroundings, and rename user_id -> rid, as it could be a user or group id.
Andrew Bartlett
Andrew Bartlett
(This used to be commit 18d0d70994ddb41b381b8fe42bc179cb9fdf0b11)
|
|
the build on systems like solaris with the SunPRO compiler
(This used to be commit fe913ad11bf1c5e9fe04ed769a93b0ea16aa0a34)
|
|
specifying a endpoint is now also 'endpoint' instead of 'endpoints'. The
default endpoint (if none is specified) is still "ncacn_np:[\\pipe\\ifacename]",
where ifacename is the name of the interface.
Examples:
[
uuid(60a15ec5-4de8-11d7-a637-005056a20182),
endpoint("ncacn_np:[\\pipe\\rpcecho]", "ncacn_ip_tcp:")
]
interface rpcecho
{
void dummy();
}
dcerpc_binding is now converted to ep_description in the server, but I hope to
completely eliminate ep_description later on.
The eventual goal of all these changes is to make it easier to add
transports as I'm going to add support for
ncalrpc (local RPC over named pipes) and ncacn_unix_stream (Unix sockets).
(This used to be commit f3da7c8b443a29b0c656c687a277384ae1353792)
|
|
(This used to be commit 5ab362cede5b6b91af42247d7b0981f3e4b4d093)
|
|
to a uint32, there're two uint32 with 0x00000000
metze
(This used to be commit 80f27766cb6d2c4e00232f7e3d5cde75ad84d094)
|
|
(This used to be commit ae49221301215a6aa12666f2ea336a42120459c5)
|
|
- added a torture test for interactive login in smbtorture
These changes allow winxp to perform an interactive login (a login on
the winxp console) against a Samba4 DC. Our netlogon server code is
still filling in many of the fields incorrectly, but it fills in
enough that winxp can login.
(This used to be commit db9ea488b047b5f0f7538fd75fb7dde8277eb06b)
|
|
(This used to be commit eb13fc6c3b482d49a2cfaf13d290f1e54a2f1865)
|
|
structure (andrew, this is the type of structure consolidation I think
you were asking about. It's possible here in NDR as it isn't in the
top level fn code)
- added validation level 6 in sam logon
With these changes I can successfully authentication smbclient to a
winxp server, with the winxp server using a Samba4 ADS DC for account
auth
(This used to be commit 705205083a6e2430c420f44436a1d1ff8826bc73)
|
|
(This used to be commit c8541098436d2cd83538375889560405ecb50034)
|
|
(This used to be commit 4eac7340d8d7a109bed8fe7bb7cf663d6e7f0a56)
|
|
- added workstation to auth_session_info in rpc servers
- added session key fetch hook in crypto backends in dcesrv
- store and fetch seed as well as a session key in schannel ldb
- when a client uses schannel to setup a netlogon pipe connection we
also need to setup the credentials from the schannel negotiation so
credentials chaining works
- added server side netr_LogonGetDomainInfo() call
(This used to be commit a35459387de3b6a422c5af6f658338fc7e4314b0)
|
|
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)
|
|
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)
|
|
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)
|
|
This includes the netlogon pipe, for the machine account password
change system.
Andrew Bartlett
(This used to be commit 49d545a82057ee8b60d50aa55e908efe59875150)
|
|
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)
|
|
- 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)
|
|
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)
|
|
(This used to be commit 446808ae4dbdcd0c64387c54b7d49649971e36d0)
|
|
- 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)
|
|
added test code for SamLogon validation level 2 and 3, so we test both
SamInfo and SamInfo2
(This used to be commit 321dbb61cc0743379ceb6b8fff6a0ca37f308bc2)
|
|
Richard Renard
(This used to be commit 2d8772ec9607c4e06bbc559b35979e27d4b988d9)
|
|
(This used to be commit b10127800a3101769241abf42ed76cbddf71a5fa)
|
|
delete group levels of Deltas
also reworked the Deltas IDL to use an enum to make it a little clearer
(This used to be commit cabf93f8c8f5ad0f6f348e0f7e206b952690995c)
|
|
I also added IDL for netr_DatabaseRedo() but I don't yet know how it
works
thats the last of the netlogon IDL !
(This used to be commit 387d8f25ff4858943d1389974127d03a58bf4c8f)
|
|
(This used to be commit 0f6af0c4bde0eb3758192b74dab797b558c944a1)
|
|
(This used to be commit cc4123db4baec6a217500dc55113f89e1ea8ef61)
|
|
(This used to be commit 17b2be4e859bd7f625214d7e7de9758b5ab5fb90)
|
|
(This used to be commit 63f46b223e16a3495b4a4a48c6489f1f0d7d84c4)
|
|
according to w2k3
(This used to be commit b2ca00ebc57774000af2de6132c29db4c6daae28)
|
|
"NT_STATUS_NOT_IMPLEMENTED" for
(This used to be commit aaf776a1c134d7b6112932f880e09ba497e8ebcf)
|
|
the last two sequence numbers on each database.
(This used to be commit f9377c860315a8a4f380d70ff97309d3ffdb5c26)
|
|
unknown1 is profile_path
If we are going to use automatic backend database generation then we
are going to have to move to really consistent field names in all our
IDL. Thats the only way we are going to be able to automate it a
lot. That will take a couple of days to do when we get to it.
(This used to be commit 1732aae562927afc1ef4f30ef7787cf2d43063e2)
|
|
(This used to be commit 107307b4c69000d2025f4463c72ee38172c48ec5)
|
|
(This used to be commit c4c09e9413d3886e030e98739121bbae81f80ca5)
|
|
(This used to be commit 360d03bb56ec7d129ec0d62a701f4bf0ff3876af)
|
|
(This used to be commit 75ea276c147e2b4b0617eb0b77276d5fb5da2043)
|
|
yet, but at least the request is understood by w2k3
Also modified pidl to allow multiple branches in a union to have the
same element. This is used in netlogon.
(This used to be commit 983c0e9683fa9666a6e055d1776ebeef8cd2e700)
|
|
actually makes sense, and as a nice side effect it matches the debug
output of the w2k3 netlogon.log
(This used to be commit 3c7287c24e5970e5b7447ad042848505537c7d3b)
|
|
machine account password.
* neater handling on value() options in IDL. The auto-print code
will now display the right value so you don't need to initialise
it in your C code
(This used to be commit 3dd978b12bb5571fba4e1839c0f7ee60cf729aa2)
|
|
* don't use static variables in the smbdes code
(This used to be commit e6e09064646c347169852fa162c72fc0542c6d5c)
|
|
(This used to be commit b7d748f499f79415b444e7cebe7d8de7186fbc94)
|
|
(This used to be commit 4fa3ad3ecbfd8f8663fcdfaba9a7db481e303f2b)
|
|
I would like the netlogon test suite to eventually do a new domain
join using a fake workstation name, then remove itself afterwards, but
for now I'm assuming we are already joined to the domain when the
testsuite runs. This means you need to use the Samba3 net command to
do a join before running RPC-NETLOGON
(This used to be commit 8c7a9446a0892a4f7722cced5019667f7a9fafdd)
|