1
0
mirror of https://github.com/samba-team/samba.git synced 2025-01-25 06:04:04 +03:00

187 Commits

Author SHA1 Message Date
Jelmer Vernooij
29a8069aee r6838: Remove unnecessary calls to gensec_gsskrb5
Make the build system give a proper warning about this in the future
(This used to be commit 2d980465af87d25ce17b8340c6b5f662ef29edd3)
2007-10-10 13:16:49 -05:00
Andrew Bartlett
e29cb65a90 r6819: More notes on krb5 requirements
Andrew Bartlett
(This used to be commit dbd845998723987c75dc0e6a427330116dce0bf4)
2007-10-10 13:16:47 -05:00
Tim Potter
d441930987 r6810: Rename auth/{ntlmssp,gensec,kerberos} mk and m4 files to be called
config.mk and config.m4 to be consistent with the rest of Samba.
(This used to be commit f377c71e4f0d60684326906dfb65e4581294ec34)
2007-10-10 13:16:46 -05:00
Jelmer Vernooij
3184d47c42 r6805: Remove two remaining references to gensec_gsskrb5
(This used to be commit a02e07739781eb00b521d050ab06d6b0aedf47bc)
2007-10-10 13:16:45 -05:00
Andrew Bartlett
1d0e2b9569 r6803: Try to bring in the correct GSSAPI headers for the krb5 mech. This
should allow us to ditch the local static storage for OIDs, as well as
fix the build on non-heimdal platforms.

Andrew Bartlett
(This used to be commit a7e2ecfac9aaacd673e3583b62139e4f4e114429)
2007-10-10 13:16:45 -05:00
Andrew Bartlett
c71a11c7ad r6801: It appears that krb5_make_principal, while convenient, is not portable.
Andrew Bartlett
(This used to be commit c8e8fa129ed0c80bcd289445935047c28d48da64)
2007-10-10 13:16:45 -05:00
Andrew Bartlett
5c6dd5e800 r6800: A big GENSEC update:
Finally remove the distinction between 'krb5' and 'ms_krb5'.  We now
don't do kerberos stuff twice on failure.  The solution to this is
slightly more general than perhaps was really required (as this is a
special case), but it works, and I'm happy with the cleanup I achived
in the process.  All modules have been updated to supply a
NULL-terminated list of OIDs.

In that process, SPNEGO code has been generalised, as I realised that
two of the functions should have been identical in behaviour.

Over in the actual modules, I have worked to remove the 'kinit' code
from gensec_krb5, and placed it in kerberos/kerberos_util.c.

The GSSAPI module has been extended to use this, so no longer requires
a manual kinit at the command line.  It will soon loose the
requirement for a on-disk keytab too.

The general kerberos code has also been updated to move from
error_message() to our routine which gets the Heimdal error string
(which may be much more useful) when available.

Andrew Bartlett
(This used to be commit 0101728d8e2ed9419eb31fe95047944a718ba135)
2007-10-10 13:16:45 -05:00
Andrew Bartlett
8f96c42027 r6799: Remove a rudundent variable from the context structure - we can figure
this out by asking GENSEC, just like everybody else.

Andrew Bartlett
(This used to be commit 0268d6c46b73bf2097247639df2532b5e8591531)
2007-10-10 13:16:45 -05:00
Rafal Szczesniak
2c08639e02 r6797: Typo fix.
rafal
(This used to be commit 0f9a2aef6c87bd53c962b33bf78bf773d2319b97)
2007-10-10 13:16:44 -05:00
Andrew Bartlett
50da9ed856 r6796: Remove the gensec_gsskrb5 module, which had had all of it's special
features merged back into gensec_gssapi.

(Removed because I've made some API changes, and it isn't worth
'fixing' the rudundent code to cope with changes)

Andrew Bartlett
(This used to be commit e8cf3d58ec956e41fc8d3e38363db3d5d838fe1d)
2007-10-10 13:16:44 -05:00
Jelmer Vernooij
5b18cf2268 r6795: Make some functions static and remove some unused ones.
(This used to be commit 46509eb89980bfe6dabd71264d570ea356ee5a22)
2007-10-10 13:16:44 -05:00
Simo Sorce
51b0f62b8f r6794: spellfix
(This used to be commit f5956d150154cb4393dc323ae8ae1f936adee355)
2007-10-10 13:16:44 -05:00
Andrew Bartlett
ae0cf9c240 r6793: Move auth_sam to use the dnsDomain rather than the
soon-to-be-depricated 'realm'.

Add torture test for this behaviour.

Andrew Bartlet
(This used to be commit 6b9020661a13fd5ec6c5d1e21344d9f654978987)
2007-10-10 13:16:44 -05:00
Andrew Bartlett
c0c1b26a76 r6792: Allow a mech to fail on the first pass at the packet, and still fall
back to the other options.

Andrew Bartlett
(This used to be commit 9153d7306124d5e4ffc0467728210e2e2235059f)
2007-10-10 13:16:43 -05:00
Andrew Bartlett
4f9fa5a81d r6791: My early notes on the particular things I have discovered as I learn
kerberos, and how Microsoft constructs their kerberos implementation.

Andrew Bartlett
(This used to be commit 5fa9be75d987af106fd798f6d5379b637a170b00)
2007-10-10 13:16:43 -05:00
Tim Potter
8aa0aec431 r6767: Fix compiler warning.
(This used to be commit 45a0692be10a03032f9a4e26da3de08696c03464)
2007-10-10 13:16:42 -05:00
Andrew Tridgell
3da16200e9 r6740: make gensec_gssapi.c compile again
(This used to be commit 6d15e9511115cc30ee213ec91320a2dccde15b8f)
2007-10-10 13:16:40 -05:00
Andrew Bartlett
c64ac2fc5a r6738: My version of the patch by metze that I just reverted (-r 6734).
This also includes other changes to reduce memory use by GENSEC when
not being used for sign/seal operations.  This should lower tridge's K
'per connection' benchmark further.

Andrew Bartlett
(This used to be commit 4a5829401b20c10091185bbd93236477523459b2)
2007-10-10 13:16:40 -05:00
Andrew Bartlett
0aef77698e r6737: Explain these error returns a bit better.
Andrew Bartlett
(This used to be commit 77d054c65aeecfc0d1156d750f7b8025cb154d3a)
2007-10-10 13:16:40 -05:00
Andrew Bartlett
d4d4d66828 r6736: Revert metze's -r 6734, as metze and I made the same changes at the
same time, but with different names.  This just helps me avoid
conflicts when I merge up my other changes.

Andrew Bartlett
(This used to be commit 27e6a853a5160cb1ad595bea25e891eeae439662)
2007-10-10 13:16:39 -05:00
Stefan Metzmacher
3bdd579f55 r6734: most compiler don't like struct elements without a name...
metze
(This used to be commit 0c1cd40bcea748d65938bb2dc8160ea07e9ec851)
2007-10-10 13:16:39 -05:00
Stefan Metzmacher
470f14ece2 r6733: GSS_C_DCE_STYLE is not available for most builds
metze
(This used to be commit 3536029e8fb1da1ca689e0b7aa1f3edfb7967790)
2007-10-10 13:16:39 -05:00
Stefan Metzmacher
15e84f47c5 r6730: register gensec_krb5 also with the drcrpc auth type
metze
(This used to be commit 491d7804f5f5bdfb43ae09b81c2cbc34fab2246d)
2007-10-10 13:16:39 -05:00
Andrew Bartlett
976fc6f76a r6729: Fix silly copy-paste bug spotted by metze.
Andrew Bartlett
(This used to be commit 400899995b2c2ed54a114f8f55e5fb36592298b9)
2007-10-10 13:16:39 -05:00
Andrew Bartlett
dc3cb69a09 r6728: Microsoft relies very strongly on getting the OIDs it expects, so we
must register the 'MS' OID for the domain join to progress.

Andrew Bartlett
(This used to be commit c8fbda6bfd96d5d57cd52bc15d8695547effe2e3)
2007-10-10 13:16:38 -05:00
Andrew Bartlett
8b2eb02d15 r6727: One more step down the long march to the 'Kerberos domain join'.
This patch allows a suitably patched Heimdal GSSAPI library (detected
in configure) to supply to us the session keys, and further compleats
the gensec_gssapi module.  This is tested for CIFS, but fails for LDAP
at this point (that is what I'll work on next).

We currently fill out the 'session info' from the SAM, like
gensec_krb5 does, but both will need to use the PAC extraction
functions in the near future.

Andrew Bartlett
(This used to be commit 937ee361615a487af9e0279145e75b6c27720a6b)
2007-10-10 13:16:38 -05:00
Andrew Bartlett
369c53ccf4 r6711: Clarify that we are dealing with a salting principal in the kerberos
code, which is certainly not in the form of machine$.

Rework the default salt to match what I just added to the heimdal
server (Samba4 is back on speaking terms with lorikeet heimdal now),
from Luke Howard's post to samba-technical in Nov 2004.

Now to test compatability with MS...

Andrew Bartlett
(This used to be commit d719a0093bfe37fc62f28c7c02f17f93eec16abf)
2007-10-10 13:16:37 -05:00
Stefan Metzmacher
fa24196d0d r6705: let the gensec module decide if messages can be signed and sealed in a different
order than a strict request - reply sequence

Note: we should also fix the client code...

metze
(This used to be commit 0a61d1f65150546f7a7582512ca010d156f963bf)
2007-10-10 13:16:36 -05:00
Stefan Metzmacher
0b3e651e05 r6704: fix compiler warning
metze
(This used to be commit 9d86314c44ae8e1ec21653b21cc267bfac573445)
2007-10-10 13:16:36 -05:00
Stefan Metzmacher
34ae3b1604 r6703: fix the build
metze
(This used to be commit 333f9bdf585db3df455009667d94deae568be02a)
2007-10-10 13:16:36 -05:00
Andrew Bartlett
a21b7de463 r6701: Updates to our server-side ticket verification code, we now use the
client credentials code to read the secrets.ldb.

Also clean up error handling, and ensure to always set the
last_error_message stuff.

Andrew Bartlett
(This used to be commit 435d229e5d1da349f00d80a36b599ae70468e99d)
2007-10-10 13:16:36 -05:00
Andrew Bartlett
69f3a934d7 r6700: Upper case realms in kerberos-specific parts of the code, as this is
no longer done globally.

This keeps MIT client libraries happy, because otherwise the windows
KDC will return a different case to what was requested.

Andrew Bartlett
(This used to be commit 9098b9321f938473c367f906cfe2f001ca1d8e6a)
2007-10-10 13:16:35 -05:00
Andrew Tridgell
f597d6df59 r6620: the type 23 schannel bind uses a workstation name, not an account name
(This used to be commit 250f1f69dd719a7981ec4c1698942b31826888d2)
2007-10-10 13:16:31 -05:00
Tim Potter
8bcfc14d64 r6610: Fix a const warning in the gensec spnego implementation. (A make proto
is required after updating to this version).
(This used to be commit 258d03ef9248b2827db18269e4f0883c73839084)
2007-10-10 13:16:30 -05:00
Andrew Bartlett
85e9412c47 r6565: Cludge, cludge, cludge...
We need to pass the 'secure channel type' to the NETLOGON layer, which
must match the account type.

(Yes, jelmer objects to this inclusion of the kitchen sink ;-)

Andrew Bartlett
(This used to be commit 8ee208a926d2b15fdc42753b1f9ee586564c6248)
2007-10-10 13:16:26 -05:00
Andrew Bartlett
bb6e2059ee r6544: Use common structures between SAMR, NETLGON and the Krb5 PAC.
Fill out the group list for the SamLogon reply, so clients get the
supplementary groups.

Andrew Bartlett
(This used to be commit d9c31e60a72c345e3a23a7eb742906bcfc18721c)
2007-10-10 13:16:24 -05:00
Andrew Bartlett
d3481b160c r6522: I have no idea why this change was made, but it not only breaks
connections to Win2k3, it doesn't match the well-known behaviour from
samba3.

Andrew Bartlett
(This used to be commit 99c9afe45a345e78d7492fe01463922460d66e99)
2007-10-10 13:16:22 -05:00
Tim Potter
cba367d001 r6521: Include system/network.h to fix compiler warning.
(This used to be commit 45383f6cec3c380043be59f1e1c5bf82f3095abb)
2007-10-10 13:16:22 -05:00
Andrew Bartlett
4aaffcf866 r6498: Add comments in line with those I already added to 3.0.
Please don't re-invent security=server :-)

Andrew Bartlett
(This used to be commit b3a38e9c8ce9758db31aec53db29290a240868be)
2007-10-10 13:16:19 -05:00
Stefan Metzmacher
a09593c37a r6484: fix NTLMSSP client against w2k and w2k3
if we use lm_response = data_blob(NULL, 0);

we got NT_STATUS_INVALID_PARAMETER

(abartlet: we should maybe also give this error in our server code)

metze
(This used to be commit be5e301442c442a37bb6756d12b9f1452d634a17)
2007-10-10 13:16:19 -05:00
Tim Potter
3edf40cd49 r6466: Spelling.
(This used to be commit 764b96792655be550d3c7065cb290bc6ea2b5133)
2007-10-10 13:11:39 -05:00
Andrew Bartlett
9c0647ddca r6465: Use talloc_zero for the gensec_ntlmssp_state structure, as the history
of this code has too many pre-zeroed structure assumptions.

Remove unused 'stub' functions

Andrew Bartlett
(This used to be commit 78dc57c65513ba4c271308d84fc2a2a533f76061)
2007-10-10 13:11:39 -05:00
Andrew Bartlett
8b0e09e24f r6464: Remove the last of the Samba3 NTLMSSP API. This removes the rudundent
struct ntlmssp_state, and pushes all the member elements into struct
gensec_ntlmssp_state.

This also removes the 2-layer start function, caused by the previous
double abstraction layer.

Andrew Bartlett
(This used to be commit eebbb4205b335214d24974f3be825846f6227f0c)
2007-10-10 13:11:39 -05:00
Andrew Bartlett
f5a8054f26 r6463: Move NTLM2 and NTLM (v1) specific variables into a union for DCE/RPC.
Andrew Bartlett
(This used to be commit 227f2578da140067734f55b559760871ee4d0d12)
2007-10-10 13:11:39 -05:00
Andrew Bartlett
0501a440be r6462: Move the arcfour sbox state into it's own structure, and allocate it
with talloc() for the NTLMSSP system.

Andrew Bartlett
(This used to be commit 7a93ac49c28d433ccf0f077294f473fe728b9995)
2007-10-10 13:11:39 -05:00
Andrew Bartlett
874cd2db86 r6460: Push the client credentials into NTLMSSP, allowing logins of the form
user@REALM for the first time.

Fix the build for smbencrypt.c

Andrew Bartlett
(This used to be commit 5a6a57cd93e22e612bfbb8a8f7bc29269a9a3ac6)
2007-10-10 13:11:39 -05:00
Andrew Bartlett
3045ecfa1d r6458: Split up NTLMSSP into a new directory, and into seperate files for the
client and server logic code.  In future, this may allow us to build
only the NTLMSSP client, and not the server, but in the short-term, it
allows me greater sainity in moving around these files.

Andrew Bartlett
(This used to be commit 2f22841c6753e3d5816c12bd463b71f74e1d8796)
2007-10-10 13:11:38 -05:00
Andrew Bartlett
4c6db04124 r6455: Remove wrapper functions, and ntlmssp_end (which is well handed by talloc() now).
Andrew Bartlett
(This used to be commit fc3e3653ebc3accf94f9264d2bbfe1cb71b017d0)
2007-10-10 13:11:38 -05:00
Andrew Bartlett
53079da638 r6454: Start to migrate NTLMSSP away from it's own API to just use GENSEC.
The aim here is to remove the extra layer of abstraction, and to then
use the credentials code directly in the NTLMSSP layer.

Andrew Bartlett
(This used to be commit b14c530dfd3e56975dea7e30aa8d62d4f2827700)
2007-10-10 13:11:38 -05:00
Andrew Bartlett
a2abd01cca r6453: Move verbose errors for the schannel 'not in the DB, or DB corrupt' error cases.
Andrew Bartlett
(This used to be commit 24f98f32aae3b8c45283715b27fa67b1d2e5c0f2)
2007-10-10 13:11:38 -05:00