1
0
mirror of https://github.com/samba-team/samba.git synced 2025-12-04 08:23:50 +03:00
Commit Graph

194 Commits

Author SHA1 Message Date
Stefan Metzmacher
0f387d58e6 r20575: apply records to the test_samdb.ldb (my birthday present to myself...:-)
we need to modify some modules to only handle originating changes...

metze
2007-10-10 14:37:05 -05:00
Stefan Metzmacher
e84b0c7d40 r20572: - prepare a test_samdb.ldb in the NET-API-BECOME-DC torture test
- we call a ejs script from the torture test for this task
  so that we can use the provision template ldif's.

metze
2007-10-10 14:37:03 -05:00
Stefan Metzmacher
5875ce1ac6 r20568: split out the rootdse ldif
and set the isSyncronized = TRUE when we done

metze
2007-10-10 14:37:02 -05:00
Stefan Metzmacher
cbebe559a2 r20565: configure the list of global ldb modules also in js code
metze
2007-10-10 14:36:59 -05:00
Stefan Metzmacher
3e337ec276 r20560: make it possible to configure the backend and modules
for all partitions and make it not use LDAP in the variable names
because it isn't specific to the ldap backend case.

metze
2007-10-10 14:36:57 -05:00
Stefan Metzmacher
2a6e6a2695 r20557: use ${DOMAINDN} instead of ${BASEDN}
metze
2007-10-10 14:36:56 -05:00
Stefan Metzmacher
09622f0122 r20555: fix typo...
metze
2007-10-10 14:36:55 -05:00
Stefan Metzmacher
ebbd8a83c9 r20554: - use ${ROOTDN} for the rootDomainNamingContext
- the ${CONFIGDN} is a child of the ${ROOTDN}

metze
2007-10-10 14:36:55 -05:00
Stefan Metzmacher
09ca6aae12 r20553: add ${CONFIGDN} and ${SCHEMADN} instead of using hardcoded paths
under ${BASEDN}

metze
2007-10-10 14:36:54 -05:00
Andrew Bartlett
5781d0f41a r20505: I had the wrong ldif name here.
Andrew Bartlett
2007-10-10 14:36:02 -05:00
Andrew Bartlett
f45504e271 r20495: Further notes on joining with fedora DS.
Add in a hook for adding an ACI, needed to allow anonymous access
until we hook across a SYSTEM token to the LDAP server.

Andrew Bartlett
2007-10-10 14:36:00 -05:00
Andrew Bartlett
600c7f1a68 r20492: Add in instructions/sample LDIF to setup Fedora DS as a backend.
Add a new module entrypoint to handle the new, interesting and
different mappings required for Fedora DS.

Andrew Bartlett
2007-10-10 14:35:59 -05:00
Andrew Bartlett
99faff0ad8 r20468: Patch from Martin Kuehl <kuehl@univention.de> to make it easier to load
into an exsting LDAP server.  (Allow some parts to pre-exist, and try
to blow away less data).

Andrew Bartlett
2007-10-10 14:35:54 -05:00
Stefan Metzmacher
0fcdc8c243 r19427: print out the currect name
metze
2007-10-10 14:21:29 -05:00
Simo Sorce
57ee79c155 r19334: Commit commented provisioning code to activate the schema 2007-10-10 14:21:11 -05:00
Andrew Bartlett
9b77d285d8 r19318: Because we don't test the vampire code in SWAT very regularly, it bit-rotted.
Fix up interfaces and interaction between the two..

Andrew Bartlett
2007-10-10 14:21:08 -05:00
Andrew Bartlett
962219df7d r19258: Don't delete the contents of the partitions twice, and in particular
don't delete their contents until we have specified the new partition
locations.

However, preserve the important part of tridge's change, that is to
ensure that no database index is present when the mass delete occours.
In my testing, it is best to leave the index until the provision is
compleated.

Andrew Bartlett
2007-10-10 14:20:58 -05:00
Andrew Tridgell
b62437214c r19252: - fixed 'erase' argument to setup_ldb()
- when wiping a ldb, wipe within each naming context first. By not
  wiping the naming contexts we didn't wipe the partitions, which
  caused a massive slowdown in re-provisioning due to re-indexing of
  the schema.
2007-10-10 14:20:58 -05:00
Andrew Bartlett
a4aafe307d r19216: Merge from SAMBA_4_0_RELEASE:
Move default for subobj.LDAPMODULES into scripting/libjs/provision.js
so that SWAT can provision again.

Andrew Bartlett
2007-10-10 14:20:54 -05:00
Andrew Bartlett
9b2003618b r18977: Seperate these asserts, so we know which fired.
Andrew Bartlett
2007-10-10 14:20:26 -05:00
Derrell Lipman
34bffbaebf r18880: JSON-RPC work in progress 2007-10-10 14:20:17 -05:00
Andrew Tridgell
7005806aa6 r18567: fixed the winreg js code for the new names of the fields in winreg.idl
When changing a field name in idl, please remember to check for use of
those functions in any js code as well.
2007-10-10 14:18:47 -05:00
Andrew Tridgell
96db975024 r18334: AIX 5.1 doesn't have any of 'users', 'guest', 'other' or 'unknown'
it does have 'usr'
2007-10-10 14:18:11 -05:00
Andrew Bartlett
77b810f548 r18248: Bail out with a error message if this search fails for some reason.
Andrew Bartlett
2007-10-10 14:17:55 -05:00
Andrew Bartlett
1a111817a3 r18072: Really delete things in the base partition, after we changed where the
default search scope points to.

Andrew Bartlett
2007-10-10 14:17:11 -05:00
Andrew Bartlett
befac43f59 r17982: One final hack...
When against a real, schema-checking LDAP backend, we need
extensibleObject on the baseDN entry (as entryUUID isn't run for
creating this basic ldif) output.
2007-10-10 14:17:01 -05:00
Andrew Bartlett
32996ca9d6 r17876: Require one less patch for the LDAP backend to work.
This lets the modules or backend generate the host and domain GUID,
rather than the randguid() function.  These can still be specified
from the command line.

Andrew Bartlett
2007-10-10 14:16:50 -05:00
Andrew Bartlett
d5814b689e r17704: Add comments suggesting how to get the LDAP backend working.
Shutdown and reload the LDB, so the entryUUID module knows to read the
schema (will be changed once we have a central schema store and
notifications).

Andrew Bartlett
2007-10-10 14:16:28 -05:00
Andrew Bartlett
8a6908200b r17548: It is a good idea to commit the fix (from mkhl) before the test that
shows the need for...

Martin Kuhl writes:

The ejs function `substitute_var' returns `undefined' when the first
argument ends in a pattern that should be substituted.

For that reason, the second assertion fails in the following test-case:

,----
| libinclude("base.js");
|
| var obj = new Object();
| obj.FOO = "foo";
| obj.BAR = "bar";
| var str1 = "${FOO}:${BAR}";
| var str2 = "${FOO}:${BAR} "; // note the space after the brace
| var sub1 = substitute_var(str1, obj);
| var sub2 = substitute_var(str2, obj);
|
| assert(str1 + " " == str2);
| assert(sub1 + " " == sub2);
`----

The problem is that the function `split' returns a single-element
array in both cases:
a) the string to split doesn't contain the split pattern
b) the string ends with the split pattern

To work around this, the following patch tests this condition and
returns `undefined' only if the string to split (`list[i]') really
didn't contain a closing brace.
2007-10-10 14:15:37 -05:00
Andrew Bartlett
177b713288 r17534: Try another group for 'wheel' on True64. 2007-10-10 14:15:34 -05:00
Andrew Bartlett
009d090594 r17499: Open the main database only the minimum times during a provision.
This causes things to operate as just one transaction (locally), and
to make a minimum of TCP connections when connecting to a remote LDAP
server.

Taking advantage of this, create another file to handle loading the
Samba4 specific schema extensions.  Also comment out 'middleName' and
reassign the OID to one in the Samba4 range, as it is 'stolen' from a
netscape range that is used in OpenLDAP and interenet standards for
'ref'.

Andrew Bartlett
2007-10-10 14:15:30 -05:00
Andrew Bartlett
31225b9cb6 r17330: Enable the partitions module.
This module redirects various samdb requests into different modules,
depending on the prefix.  It also makes moving to an LDAP backend
easier, as it is just a different partition backend.

This adds yet another stage to the provision process, as we must setup
the partitions before we setup the magic attributes.

Andrew Bartlett
2007-10-10 14:15:15 -05:00
Simo Sorce
a89cc346b9 r17206: Add a modular API for share configuration.
Commit the classic backwards compatible module which is the default one
2007-10-10 14:10:18 -05:00
Andrew Bartlett
82f5f6c03d r16265: Fix 'newuser' command.
Andrew Bartlett
2007-10-10 14:09:09 -05:00
Andrew Bartlett
b49a4fbb57 r16264: Add, but do not yet enable, the partitions module.
This required changes to the rootDSE module, to allow registration of
partitions.  In doing so I renamed the 'register' operation to
'register_control' and 'register_partition', which changed a few more
modules.

Due to the behaviour of certain LDAP servers, we create the baseDN
entry in two parts: Firstly, we allow the admin to export a simple
LDIF file to add to their server.  Then we perform a modify to add the
remaining attributes.

To delete all users in partitions, we must now search and delete all
objects in the partition, rather than a simple search from the root.
Against LDAP, this might not delete all objects, so we allow this to
fail.

In testing, we found that the 'Domain Controllers' container was
misnamed, and should be 'CN=', rather than 'OU='.

To avoid the Templates being found in default searches, they have been
moved to CN=Templates from CN=Templates,${BASEDN}.

Andrew Bartlett
2007-10-10 14:09:09 -05:00
Andrew Bartlett
4e8d7b7fb3 r16063: Make is clearer when we can't write to the smb.conf
Find more possible posix group names for the 'domain users' group, as
the existing options don't exist in OSX.

Andrew Bartlett
2007-10-10 14:08:55 -05:00
Stefan Metzmacher
e896c32614 r15077: map SID_BUILTIN_USERS
metze
2007-10-10 14:04:07 -05:00
Andrew Bartlett
0859ba59ae r14200: Now we have real USN support, don't force the values in the provision
scripts.

This tests the real module, and avoids duplication.

Andrew Bartlett
2007-10-10 13:56:59 -05:00
Simo Sorce
3fb9571a76 r13369: let's have a way to show the samba4 version through ejs
and use it in provisioning to fullfill rfc 3045 requirements
2007-10-10 13:51:50 -05:00
Andrew Tridgell
dc74d8ccf1 r13102: fixed the vampire code to correctly setup foreign sids and default
unix name mappings
2007-10-10 13:51:25 -05:00
Andrew Tridgell
0cacd69dd5 r13098: make check for workgroup and realm case insensitive 2007-10-10 13:51:24 -05:00
Andrew Tridgell
95e90169f4 r13097: move the creation of the default sam name -> unix name mappings into
the main provision logic, so it can also be used as part of the
vampire process
2007-10-10 13:51:24 -05:00
Stefan Metzmacher
b7a0a778cc r13084: fix 'make test'!
I would sugguest to run 'make test && make valgrind' before each commit
at this stage...

metze
2007-10-10 13:51:23 -05:00
Andrew Tridgell
1c49ce8df0 r13076: catch a easy to make error during vampire install 2007-10-10 13:51:22 -05:00
Jelmer Vernooij
cc4cab341e r13062: Fix upgrade of WINS entries 2007-10-10 13:51:20 -05:00
Andrew Tridgell
c7951d17b1 r12947: added some error checking that I stumbled across while testing domain migration 2007-10-10 13:51:12 -05:00
Andrew Bartlett
701558b5fe r12945: Try to move closer to getting Samba3 import working again.
There still a few things to work out

Andrew Bartlett
2007-10-10 13:51:12 -05:00
Andrew Bartlett
def3195618 r12929: Fix more implict global and shadowing variables.
Andrew Bartlett
2007-10-10 13:51:07 -05:00
Andrew Bartlett
a38ceefd11 r12928: This patch improves the interaction between the vampire and provsion code.
Previously, we had to know (or guess) the host and domain guid at the
provision stage.  Now we query the database post-provision, to extract
the values and fill in the zone file.

This allows us to generate a correct zone file in the Windows migration case.

In an effort to make SWAT easier to use, I have removed and renamed
some of the provision options.

I have also fixed a nasty issue in my js code.  I had implictly
declared a global variable of the name 'join', with disasterious
results for any subsequent user of the string utility function:

esp exception - ASSERT at lib/appweb/ejs/ejsParser.c:2064, 0

Backtrace:
        [ 0]       substitute_var:20   ->               list[i] = join("", list2)
        [ 1]           setup_file:9    ->       data = substitute_var(data, subobj)

Andrew Bartlett
2007-10-10 13:51:07 -05:00
Andrew Bartlett
a5e7c17c34 r12892: Add a 'Migrate from Windows' page to our installation section in SWAT.
Doing this required reworking ejsnet, particularly so it could take a
set of credentials, not just a username and password argument.

This required fixing the ejsnet.js test script, which now adds and
deletes a user, and is run from 'make test'.  This should prevent it
being broken again.

Deleting a user from ejsnet required that the matching backend be
added to libnet, hooking fortunetly onto already existing code for the
actual deletion.

The js credentials interface now handles the 'set machine account' flag.

New functions have been added to provision.js to wrap the basic
operations (so we can write a command line version, as well as the web
based version).

Andrew Bartlett
2007-10-10 13:50:59 -05:00