1
0
mirror of https://github.com/samba-team/samba.git synced 2025-02-04 17:47:26 +03:00

637 Commits

Author SHA1 Message Date
Andrew Tridgell
1cd4339b9a r20646: first preparations for cluster enablement. This changes "
uint32_t server_id
to
  struct server_id server_id;

which allows a server ID to have an node number. The node number will
be zero in non-clustered case. This is the most basic hook needed for
clustering, and ctdb.
(This used to be commit 2365abaa991d57d68c6ebe9be608e01c907102eb)
2007-10-10 14:37:23 -05:00
Andrew Bartlett
08976cb3d2 r20639: Commit part 1 of 2.
This patch updates our build system and glue to support a new snapshot
of lorikeet-heimdal.

We now procude a [SUBSYTEM] in the ans1_deps.pl script, and can depend
on that in the heimdal_build/config.mk.  This is much easier than
listing every generated .o file individually.

This required some small changes to the build system, due to the way
the parent directory was handled for the output of scripts.  I've also
cleaned up et_deps.pl to handle cleaning up it's generated files on
clean.

The PAC glue in Heimdal has changed significantly: we no longer have a
custom hack in the KDC, instead we have the windc plugin interface.
As such, pac-glue.c is much smaller.  In the future, when I'm
confident of the new code, we will also be able to 'downsize'
auth/kerberos/kerberos_pac.c.

(I'll include the updated copy of heimdal in the next chekin, to make
it clearer what's changed in Samba4 itself).

Andrew Bartlett
(This used to be commit 75fddbbc0811010a28ca5bb597b573b3f10ef6d6)
2007-10-10 14:37:20 -05:00
Stefan Metzmacher
3b7686447a r20520: allow the caller to pass NULL if it doesn't want a session info
this can be used when we start to support the FAST BIND LDAP Control

metze
(This used to be commit 0a73d3262d5deb5a9d0052751336413fbea370b1)
2007-10-10 14:36:11 -05:00
Andrew Bartlett
f9dd1d7ef8 r20352: Use the common function to find the DN for a domain.
Andrew Bartlett
(This used to be commit 929fd1beee5cab647702a9b8d8d5e4c2aab23d11)
2007-10-10 14:30:14 -05:00
Stefan Metzmacher
f09c0c1237 r20275: we should check for the oid the caller gave us!
metze
(This used to be commit 4b9e196288f2deb3594db9ba2dd36d774e774574)
2007-10-10 14:29:29 -05:00
Stefan Metzmacher
b2d5ec0339 r20274: add missing return statement and make it more explicit that we return a NULL DATA_BLOB
metze
(This used to be commit 7256481f08b5e860308e73c2b51926b55b1f4c43)
2007-10-10 14:29:29 -05:00
Stefan Metzmacher
b55a68b368 r20258: add functions to read and write asn1 encoded OID strings without leading tag
metze
(This used to be commit 576d4c54cca844164b90e5d6ec71fe44b59607b7)
2007-10-10 14:29:28 -05:00
Andrew Bartlett
d471e52d23 r20149: Remove the smb.conf distinction between PDC and BDC. Now the correct
way to setup a Samba4 DC is to set 'server role = domain controller'.

We use the fSMORoleOwner attribute in the base DN to determine the PDC.

This patch is quite large, as I have corrected a number of places that
assumed taht we are always the PDC, or that used the smb.conf
lp_server_role() to determine that.

Also included is a warning fix in the SAMR code, where the IDL has
seperated a couple of types for group display enumeration.

We also now use the ldb database to determine if we should run the
global catalog service.

In the near future, I will complete the DRSUAPI
DsGetDomainControllerInfo server-side on the same basis.

Andrew Bartlett
(This used to be commit 67d8365e831adf3eaecd8b34dcc481fc82565893)
2007-10-10 14:29:15 -05:00
Stefan Metzmacher
38a472c994 r20135: attach default gensec features to the cli_credentials structure,
so make it possible to force encryption or signing.

metze
(This used to be commit a91dc4a02a46370c52f59cbd4dea9580fa6efafa)
2007-10-10 14:29:12 -05:00
Stefan Metzmacher
78ea6370bf r20108: match w2k3 and send 1.2.840.48018.1.2.2 before 1.2.840.113554.1.2.2
to work better against w2k, so we don't get redirected from
1.2.840.113554.1.2.2 to 1.2.840.48018.1.2.2 by a w2k server, causing 2 additional
auth roundtrips.

metze
(This used to be commit fa5c942ee99d3b5779598aa75f71d0317ba3f622)
2007-10-10 14:29:08 -05:00
Stefan Metzmacher
ae9f7857d5 r20107: don't segfault when the server didn't send a supportedMech in a negTokenTarg
this happens because we send 1.2.840.113554.1.2.2 before 1.2.840.48018.1.2.2
in the negTokenInit. And w2k's spnego code redirects us to use 1.2.840.48018.1.2.2
and then we start the our spnego engine with 1.2.840.48018.1.2.2 and in the then following
negTokenTarg w2k don't send the supportedMech (which means it aggrees in what we've choosen)

metze
(This used to be commit 5af5488593991ab4a2a8e17d38501ad9ec539020)
2007-10-10 14:29:07 -05:00
Simo Sorce
ea212eb00f r20034: Start using ldb_search_exp_fmt()
(This used to be commit 4f07542143ddf5066f0360d965f26a8470504047)
2007-10-10 14:28:51 -05:00
Stefan Metzmacher
a6e2442a5f r20010: cosmetic fix
metze
(This used to be commit 9c992a39db32cbe35f0ecb8fe98223bb24a1e973)
2007-10-10 14:28:47 -05:00
Simo Sorce
a9e31b33b5 r19832: better prototypes for the linearization functions:
- ldb_dn_get_linearized
  returns a const string

- ldb_dn_alloc_linearized
  allocs astring with the linearized dn
(This used to be commit 3929c086d5d0b3f08b1c4f2f3f9602c3f4a9a4bd)
2007-10-10 14:28:22 -05:00
Simo Sorce
4889eb9f7a r19831: Big ldb_dn optimization and interfaces enhancement patch
This patch changes a lot of the code in ldb_dn.c, and also
removes and add a number of manipulation functions around.

The aim is to avoid validating a dn if not necessary as the
validation code is necessarily slow. This is mainly to speed up
internal operations where input is not user generated and so we
can assume the DNs need no validation. The code is designed to
keep the data as a string if possible.

The code is not yet 100% perfect, but pass all the tests so far.
A memleak is certainly present, I'll work on that next.

Simo.
(This used to be commit a580c871d3784602a9cce32d33419e63c8236e63)
2007-10-10 14:28:22 -05:00
Andrew Bartlett
84c5acc615 r19805: Add the (harmless, but apparently default)
NTLMSSP_NEGOTIATE_ALWAYS_SIGN flags into the default set.

Andrew Bartlett
(This used to be commit 04709c75afda0234c7236fba674bf53a265f8dbb)
2007-10-10 14:28:21 -05:00
Jelmer Vernooij
66494b1fc9 r19677: Fix more dependencies.
(This used to be commit 17c2557834aad8c85fb640054c942f99bbce1d94)
2007-10-10 14:25:29 -05:00
Jelmer Vernooij
c81f2930a2 r19676: Fix some more dependencies.
(This used to be commit 8768bec81f57131a0c9754e8121b345c0be4a5d0)
2007-10-10 14:25:29 -05:00
Stefan Metzmacher
f0d975fd69 r19674: auth didn't depdend on process_model!
metze
(This used to be commit 30963753fcd9d8db17ca5c8476cc85b7084b7e87)
2007-10-10 14:25:29 -05:00
Jelmer Vernooij
547eef2cf1 r19670: Reduce the number of unresolved symbols when building with shared libraries.
(This used to be commit 4422031d1d9307539832cee165c5071ff12943e7)
2007-10-10 14:25:27 -05:00
Stefan Metzmacher
c779270116 r19664: fix compiler warnings...
should _krb5_find_type_in_ad() also take a const?

metze
(This used to be commit addc31bd9309cb2b41cbb548c82c80de1cf96c4f)
2007-10-10 14:25:27 -05:00
Andrew Bartlett
47b7419fa7 r19660: Forgot to tell gsskrb5 not to canonicalize hostnames. Shoudl fix
valrind issues on fort, because we won't hit NSS any more.

Andrew Bartlett
(This used to be commit 6f67fa01ab4f946c9a9aae0d4e8d028153873e04)
2007-10-10 14:25:26 -05:00
Andrew Bartlett
e5974a1b5f r19650: Allow Samba to use Heimdal's SPNEGO code. Currently this can only
negotiate krb5, but if this works, I'll add NTLM as a GSSAPI backend
by some means or other.

Andrew Bartlett
(This used to be commit 476452e143f61a3878a3646864729daaddccdf68)
2007-10-10 14:25:25 -05:00
Andrew Bartlett
ed77e4e57b r19644: Merge up to current lorikeet-heimdal, incling adding
gsskrb5_set_default_realm(), which should fix mimir's issues.

Andrew Bartlett
(This used to be commit 8117e76d2adee163925a29df872015ff5021a1d3)
2007-10-10 14:25:24 -05:00
Andrew Bartlett
cb3a884048 r19635: It appears that under CFX, different keys are used in each direction
(or something like that).

In any case, we need to stick with the initiator subkey for now, until
we figure out what Vista uses for the CIFS session key.

Andrew Bartlett
(This used to be commit b91a921e1393581ca0102ad1f49a1075acb91b4e)
2007-10-10 14:25:22 -05:00
Andrew Bartlett
f722b07438 r19633: Merge to lorikeet-heimdal, removing krb5_rd_req_return_keyblock in favour of a more tasteful replacement.
Remove kerberos_verify.c, as we don't need that code any more.
Replace with code for using the new krb5_rd_req_ctx() borrowed from
Heimdal's accecpt_sec_context.c

Andrew Bartlett
(This used to be commit 13c9df1d4f0517468c80040d3756310d4dcbdd50)
2007-10-10 14:25:21 -05:00
Andrew Bartlett
daa463070c r19629: No need to special case use of DCE_STYLE sign and seal away any more...
Andrew Bartlett
(This used to be commit 247b9f1ca907cf921087e6840400ddf68289b8f2)
2007-10-10 14:25:20 -05:00
Andrew Bartlett
a77b25cea7 r19628: This hint via Love at the IETF meeting:
Larry told me that most context flags needed to be set to, otherwise
it wouldn't work.

This fixes DCE_STYLE against Win2k3 SP1.  It seems they just tightened
up their end of the GSSAPI code, as DCE_STYLE is explicity rejected in
the session setup too (being the wrong layer).

Andrew Bartlett
(This used to be commit b2b77f34a4d0cebb828cac7bf9a73826fecab5b6)
2007-10-10 14:25:20 -05:00
Stefan Metzmacher
9f30272b27 r19614: fix compiler warnings
metze
(This used to be commit 1ca8651a59e95eeca2942e5e66c2141e3f65dd9f)
2007-10-10 14:25:05 -05:00
Andrew Bartlett
3c1e780ec7 r19604: This is a massive commit, and I appologise in advance for it's size.
This merges Samba4 with lorikeet-heimdal, which itself has been
tracking Heimdal CVS for the past couple of weeks.

This is such a big change because Heimdal reorganised it's internal
structures, with the mechglue merge, and because many of our 'wishes' have been granted:  we now have DCE_STYLE GSSAPI, send_to_kdc hooks and many other features merged into the mainline code.  We have adapted to upstream's choice of API in these cases.

In gensec_gssapi and gensec_krb5, we either expect a valid PAC, or NO
PAC.  This matches windows behavour.  We also have an option to
require the PAC to be present (which allows us to automate the testing
of this code).

This also includes a restructure of how the kerberos dependencies are
handled, due to the fallout of the merge.

Andrew Bartlett
(This used to be commit 4826f1735197c2a471d771495e6d4c1051b4c471)
2007-10-10 14:25:03 -05:00
Andrew Bartlett
13dbee3ffe r19598: Ahead of a merge to current lorikeet-heimdal:
Break up auth/auth.h not to include the world.

Add credentials_krb5.h with the kerberos dependent prototypes.

Andrew Bartlett
(This used to be commit 2b569c42e0fbb596ea82484d0e1cb22e193037b9)
2007-10-10 14:25:00 -05:00
Andrew Bartlett
c755bb5025 r19597: Ahead of the merge to current lorikeet-heimdal:
Supply the correct OID to the error display functions.

Rework the session key functions.

Andrew Bartlett
(This used to be commit 363628c13f4e4a8904802dcf4d80e296ed2f9e02)
2007-10-10 14:25:00 -05:00
Andrew Bartlett
97aec1a70c r19595: Seperate debug messages between database failure and simple lack of
records.

Andrew Bartlett
(This used to be commit 163f75372792b0afa72f48d64d78d82b72d8eda5)
2007-10-10 14:24:59 -05:00
Jelmer Vernooij
5a6e2bc9ae r19573: Move secrets.o into param/ (subsystems haven't been integrated yet).
(This used to be commit 8143de855c0b65346b2d8e59ecdb78952927de4a)
2007-10-10 14:24:55 -05:00
Andrew Bartlett
18aa4c6a38 r19568: When we get back a skew error, try with no skew. This allows us to
recover from inheriting an invalid skew from a ccache.

Andrew Bartlett
(This used to be commit 4881f0583dd42083bb2bc2eeca32316f890c4804)
2007-10-10 14:24:53 -05:00
Andrew Bartlett
c45262582c r19566: Predeclare some useful structures.
(This used to be commit 160a59f0733a90db157ad48747c7fb72c2912829)
2007-10-10 14:24:53 -05:00
Andrew Bartlett
d046e8d0cc r19523: Remove unused functions.
Andrew Bartlett
(This used to be commit 3a3c1040a97e1d7d64e9e151ea4e1af79dcb976e)
2007-10-10 14:24:44 -05:00
Jelmer Vernooij
4fa24df98d r19507: Merge my DSO fixes branch. Building Samba's libraries as shared libraries
works again now, by specifying --enable-dso to configure.
(This used to be commit 7a01235067a4800b07b8919a6a475954bfb0b04c)
2007-10-10 14:24:41 -05:00
Simo Sorce
7f833458ca r19489: Change ldb_msg_add_value and ldb_msg_add_empty to take a foruth argument.
This is a pointer to an element pointer. If it is not null it will be
filled with the pointer of the manipulated element.
Will avoid double searches on the elements list in some cases.
(This used to be commit 0fa5d4bc225b83e9f63ac6d75bffc4c08eb6b620)
2007-10-10 14:24:38 -05:00
Andrew Bartlett
3c203ab927 r19465: Rather than use the non-standard API for determining the signature
length, use the amount the wapped message expanded by.

This works, because GSSAPI doesn't do AEAD (signing of headers), and
so changing the signature length after the fact is valid.

Andrew Bartlett
(This used to be commit bd1e0f679c8f2b9755051b8d34114fa127a7cf26)
2007-10-10 14:21:37 -05:00
Jelmer Vernooij
8773e743c5 r19339: Merge my 4.0-unittest branch. This adds an API for more fine-grained
output in the testsuite rather than just True or False for a
set of tests.

The aim is to use this for:
 * known failure lists (run all tests and detect tests that
						started working or started failing). This
   would allow us to get rid of the RPC-SAMBA3-* tests
 * nicer torture output
 * simplification of the testsuite system
 * compatibility with other unit testing systems
 * easier usage of smbtorture (being able to run one test
						and automatically set up the environment for that)

This is still a work-in-progress; expect more updates over the next couple of
days.
(This used to be commit 0eb6097305776325c75081356309115f445a7218)
2007-10-10 14:21:12 -05:00
Simo Sorce
59b66744f7 r19299: Fix possible memleaks
(This used to be commit 6fad80bb09113a60689061a2de67711c9924708b)
2007-10-10 14:21:04 -05:00
Andrew Bartlett
541339fbd2 r19265: It is not an error to set the target hostname to NULL.
Andrew Bartlett
(This used to be commit c9c2e90e2e3937d05c58c681af187413b12d9220)
2007-10-10 14:21:00 -05:00
Andrew Bartlett
cbed4ba5af r18354: It seems safe to enable the DIGEST-MD5 module now.
Andrew Bartlett
(This used to be commit 8357f8be45ef93bd1b648350c951bbe3b1bb5682)
2007-10-10 14:18:17 -05:00
Andrew Tridgell
9adf2883ef r18321: fixed some warnings on AIX
(This used to be commit 449fab2c264aa50601f9a2d3310f1910ba97706b)
2007-10-10 14:18:08 -05:00
Andrew Tridgell
30ee8beb93 r18301: I discovered how to load the warnings from a build farm build into
emacs compile mode (hint, paste to a file, and compile as "cat
filename").

This allowed me to fix nearly all the warnings for a IA_64 SuSE build
very quickly.
(This used to be commit eba6c84efff735bb0ca941ac4b755ce2b0591667)
2007-10-10 14:18:04 -05:00
Andrew Tridgell
dfd4c8e84d r18295: pass write type for packet_size
this fixes a crash on IA_64 systems
(This used to be commit 22c39027621fb65663122b4959b171d328b549d4)
2007-10-10 14:18:03 -05:00
Andrew Tridgell
217998018f r18258: need to use .priority not .order here
(This used to be commit a47d65fe17a0e84615ff235380eb2462579199f0)
2007-10-10 14:17:57 -05:00
Andrew Bartlett
c1ec0da99c r18257: Order the GENSEC modules, with unknown modules last.
Andrew Bartlett
(This used to be commit 8ae880b5019ab275fe0eca48120ab9e0fcca6293)
2007-10-10 14:17:57 -05:00
Andrew Bartlett
40cf47fa56 r18255: Remove the SMB_ASSERT(), as these are not talloc()'ed structures.
Andrew Bartlett
(This used to be commit 73fba185eba6b059d34790c95a30d49b296759f5)
2007-10-10 14:17:56 -05:00