1
0
mirror of https://github.com/samba-team/samba.git synced 2024-12-24 21:34:56 +03:00
Commit Graph

99 Commits

Author SHA1 Message Date
Andrew Bartlett
7d4da6897c r17547: Add test by mkhl for some of our variable substituion behaviour.
Andrew Bartlett
(This used to be commit c2c72565e4)
2007-10-10 14:15:36 -05:00
Andrew Bartlett
b7cef04351 r17546: Test the loading of per-partition modules.
Andrew Bartlett
(This used to be commit 1a5ade30dc)
2007-10-10 14:15:36 -05:00
Andrew Bartlett
0572822b0e r17544: Add execute bit to js script.
Andrew Bartlett
(This used to be commit c1349cfd8d)
2007-10-10 14:15:36 -05:00
Andrew Bartlett
1ace9b6ec0 r17543: Patch from Martin Kühl <martin.kuehl@gmail.com> to extend the
samba3sam test cases for ldb_map, and to include this into our default
'make test'.
(This used to be commit f69a842314)
2007-10-10 14:15:36 -05:00
Andrew Bartlett
027583e6de r17525: This is a merge from the Google Summer of Code 2006 project by Martin Kühl
<mkhl@samba.org>.

Martin took over the work done last year by Jelmer, in last year's
SoC.  This was a substanital task, as the the ldb modules API changed
significantly during the past year, with the addition of async calls.

This changeset reimplements and enables the ldb_map ldb module and
adapts the example module and test case, both named samba3sam, to the
implementation.

The ldb_map module supports splitting an ldb database into two parts
(called the "local" and "remote" part) and storing the data in one of
them (the remote database) in a different format while the other acts
as a fallback.
This allows ldb to e.g. store to and load data from a remote LDAP
server and present it according to the Samba4 schema while still
allowing the LDAP to present and modify its data separately.

A complex example of this is the samba3sam module (by Jelmer
Vernooij), which maps data between the samba3 and samba4 schemas.

A simpler example is given by the entryUUID module (by Andrew
Bartlett), which handles some of the differences between AD and
OpenLDAP in operational attributes.  It principally maps objectGUID,
to and from entryUUID elements.  This is also an example of a module
that doesn't use the local backend as fallback storage.

This merge also splits the ldb_map.c file into smaller, more
manageable parts.
(This used to be commit af2bece4d3)
2007-10-10 14:15:33 -05:00
Andrew Bartlett
1057b4bea2 r17380: An expanded test, cross-referencing the global catalog to the main port.
Andrew Bartlett
(This used to be commit eadc24ed29)
2007-10-10 14:15:20 -05:00
Andrew Bartlett
cfa762ff87 r17302: Testing!
This confirms that records are replicated into the correct databases,
and that the case insensitive flags really work.

Andrew Bartlett
(This used to be commit ad463c1a52)
2007-10-10 14:15:08 -05:00
Andrew Bartlett
77bb75ead0 r17299: Improve the partition module to replicate attribute records into all
partitions.

Test that we do that correctly.

Andrew Bartlett
(This used to be commit 90c07b8801)
2007-10-10 14:15:08 -05:00
Andrew Bartlett
30c1716eda r16934: Expand the ldb test to demonstrate partition behaviour, including the
global USN and global transactions.

Andrew Bartlett
(This used to be commit 5abe3c4f5f)
2007-10-10 14:10:01 -05:00
Andrew Bartlett
bfc02627ce r16914: Add more tests for the partition module.
Andrew Bartlett
(This used to be commit 2728b60dfa)
2007-10-10 14:09:59 -05:00
Andrew Bartlett
59bd3b66cd r16167: Add tests for the changes to use hex digits, including some tests
commented out until we fix some more things on our server.

Andrew Bartlett
(This used to be commit ac9d3cb5b0)
2007-10-10 14:09:03 -05:00
Andrew Bartlett
2f16057bf4 r16110: Start some simple rootDSE LDAP tests in ejs.
Andrew Bartlett
(This used to be commit 0201f0df3f)
2007-10-10 14:09:00 -05:00
Andrew Bartlett
9f6884df6a r16072: Do basic wildcard searching in the ejs LDAP test.
Unfortunetly this didn't find the wildcard bug, but at least it tests
something...

Andrew Bartlett
(This used to be commit f763970caf)
2007-10-10 14:08:57 -05:00
Andrew Bartlett
7707d453c6 r16068: Check against the correct result in the ldap.js test
Andrew Bartlett
(This used to be commit 52b4e83a1c)
2007-10-10 14:08:56 -05:00
Andrew Bartlett
efddd37af8 r16066: The OSX AD plugin uses objectCategory searches a lot, and uses them
both fully qualified and in the 'short' form.  Now we test and support
this query format.

Andrew Bartlett
(This used to be commit 9ddcfacbce)
2007-10-10 14:08:55 -05:00
Andrew Bartlett
629d6ad3cf r16061: Prove that removing the objectClass list in the samldb module breaks things.
With this fix, we now correctly detect computers again, and get the
correct objectCategory, which is important for the OSX AD plugin.

Andrew Bartlett
(This used to be commit 4e39d7bb24)
2007-10-10 14:08:55 -05:00
Andrew Bartlett
b31c685ec2 r16028: Re-add the objectclass module, in the new async scheme.
Add a test to show that we need this, and to prove it works (for add
at least).

Andrew Bartlett
(This used to be commit f72079029a)
2007-10-10 14:08:51 -05:00
Simo Sorce
0c45a12b65 r13356: test utf8 usernames
(This used to be commit 7ddec83a60)
2007-10-10 13:51:48 -05:00
Andrew Bartlett
7dad66d8e3 r12998: A big update to samldb.c
This updates the module to handle both SID allocation and nextRid
updating while importing users.  (As imported users already have a
SID, so don't go via the allocation step).  We also ensure that SIDs
in the database are unquie at create time.

Furthermore, at allocation time, we double-check the SID isn't already
in use, and that we don't create a foriegnSecurityPrincipal for a
'local' sid.

Also create random samAccountName entries for users without one (we
were setting $000000-000000000000).

We may want to seperate the uniqueness code from the rest of samldb,
and into a module with the objectguid code, which needs similar
checks.  These checks also need to apply to modification, or those
modifications denied outright.

Also update part of the testsuite to validate this.

Andrew Bartlett
(This used to be commit 7a9c8eee4b)
2007-10-10 13:51:15 -05:00
Andrew Bartlett
58f78fa182 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
(This used to be commit a5e7c17c34)
2007-10-10 13:50:59 -05:00
Andrew Tridgell
ddbeaa2f65 r12324: use command line credentials if available in ldap.js
(This used to be commit f4f99f9af3)
2007-10-10 13:47:29 -05:00
Rafal Szczesniak
6d3fac3fdc r11587: Trivial testing code giving an idea of how could using
subcontexts look like.

rafal
(This used to be commit 5a338b04f3)
2007-10-10 13:45:54 -05:00
Andrew Tridgell
375922801f r11467: yay! mmc now accepts our schema. The trick was to get all the OID
mappings right for the attributeTypes field of the aggregate schema

now to add the display specifiers and I won't need the proxy module
any more
(This used to be commit 69264362bd)
2007-10-10 13:45:40 -05:00
Andrew Tridgell
6dfb09c5a5 r11463: more progress on the schema generator. mmc now accepts all parts
except the attributeTypes fields of the Aggregrate record. Proxying
just that field and the display specifiers gives us a working mmc
client

hopefully i'll work out what it doesn't like about the attributeTypes
field soon
(This used to be commit 3af867a3f4)
2007-10-10 13:45:40 -05:00
Andrew Tridgell
4298fab790 r11436: this is work in progress for generating the schema we need for our ADS
ldap server. It's still not quite right, and I'm chasing down a few
errors that mmc throws up, but its a lot closer than it was. I had to
change the approach quite substantially over the last couple of days,
but this approach now seems to be working out.
(This used to be commit 38ea11510c)
2007-10-10 13:45:37 -05:00
Rafal Szczesniak
6386f31317 r11309: A trivial test script for ejs libnet interface.
rafal
(This used to be commit deb561ea4a)
2007-10-10 13:45:17 -05:00
Andrew Tridgell
840364eb97 r10990: the beginnings of a program designed to work out the minimal schema
needed to represent all the current records on a ADS LDAP server. The
idea is we will use something based on this code to work out exactly
what schema elements we will need for our initial ADS schema. I plan
on expanding this code to automatically work out attribute properties,
and write out a schema file that we can load into ldb.

Interestingly, it looks like we only need 43 objectclasses and around
200 attributes to represent all records of a newly installed w2k3 ADS
server.
(This used to be commit 7b0ae77757)
2007-10-10 13:39:51 -05:00
Andrew Tridgell
2e61cce2b4 r10919: fixed the ldb test for the new operational module
(This used to be commit 915878d7ce)
2007-10-10 13:39:43 -05:00
Jelmer Vernooij
ffbd9313e2 r10577: Fix error in ReadFile()
(This used to be commit 04b8c473d7)
2007-10-10 13:39:06 -05:00
Jelmer Vernooij
4ad69c3dee r10576: Add testprog for named pipes. Also add GNUmakefile's for cross-compilation
using mingw32
(This used to be commit 30ba8fdc3d)
2007-10-10 13:39:06 -05:00
Jelmer Vernooij
74b26525ea r9919: Remove debug statement from samba3sam
Add SOC STATUS doc
(This used to be commit 152c1a37b5)
2007-10-10 13:36:22 -05:00
Jelmer Vernooij
08f630be82 r9915: Some more mappings. Fix weird sAMAccountName values.
(This used to be commit 8ff1358f40)
2007-10-10 13:36:21 -05:00
Jelmer Vernooij
4f4dae05f0 r9912: Fix another bug in ldb_map.
(This used to be commit 4c3b37d660)
2007-10-10 13:36:21 -05:00
Jelmer Vernooij
ca6c0af86f r9908: Generate posixUser and posixGroup as well
(This used to be commit ebed25b47d)
2007-10-10 13:36:21 -05:00
Jelmer Vernooij
e2e2508b58 r9899: Be more conservative about what is sent to the remote server in ldb_map.
(This used to be commit 76e943d441)
2007-10-10 13:36:21 -05:00
Jelmer Vernooij
1b5cb7309d r9857: Fix rename/delete issues
(This used to be commit d6dce7ef3e)
2007-10-10 13:36:18 -05:00
Jelmer Vernooij
99054eb40a r9855: Finish ldb_map testsuite
Update PLAN
Some more small other fixes
(This used to be commit 31cd5d55a9)
2007-10-10 13:36:18 -05:00
Jelmer Vernooij
b19cc95a88 r9849: Extend testsuite a bit more.
(This used to be commit 5cbe1e6b70)
2007-10-10 13:36:17 -05:00
Jelmer Vernooij
222fdd5237 r9842: More error checks in the ldb_map modules, extend testsuite
(This used to be commit b7992de4b7)
2007-10-10 13:36:17 -05:00
Jelmer Vernooij
40f85ace04 r9813: Conver testsuite for samba3sam module to EJS
(This used to be commit 77f24ed131)
2007-10-10 13:35:04 -05:00
Andrew Tridgell
030087c449 r9599: fix formatting of echo output
(This used to be commit 47c11fd886)
2007-10-10 13:34:33 -05:00
Andrew Tridgell
fef7a81478 r9491: fixed up a few scripts that need to be updated for the new GetOptions syntax. Mimir, its
a good idea to use grep -r to find places that need fixing when you change the syntax of
a call :-)
(This used to be commit 1ead49f8e8)
2007-10-10 13:34:21 -05:00
Andrew Tridgell
f72c86d4dc r9383: remove unused file
(This used to be commit dae90b6959)
2007-10-10 13:33:31 -05:00
Andrew Tridgell
a533f398aa r9345: used the data blob functions in the echo.js test code
(This used to be commit f217f08b67)
2007-10-10 13:33:26 -05:00
Andrew Tridgell
60beb50044 r9342: removed extra libinclude of base.js
(This used to be commit bda6943c31)
2007-10-10 13:33:26 -05:00
Andrew Tridgell
66c3640366 r9341: updated the winreg test program to take advantage of the new EnumValue
functionality. It now completely enumerates a winreg tree.

This would make a good basis for a js version of regshell if someone
felt like taking that on.
(This used to be commit 75d0cf78ec)
2007-10-10 13:33:26 -05:00
Andrew Tridgell
924b3cc953 r9218: make the winreg library code handle arbitrary paths more efficiently
and more conveniently (caller doesn't need to know the hive names now)
(This used to be commit dadd7e22fb)
2007-10-10 13:31:32 -05:00
Andrew Tridgell
8658136f26 r9160: use the winreg lib in the test program
(This used to be commit 33bb76ed4e)
2007-10-10 13:31:25 -05:00
Andrew Tridgell
bc43808d8b r9153: added a sample program for enumerating winreg via js
(This used to be commit 10043db676)
2007-10-10 13:31:24 -05:00
Andrew Tridgell
f6d2892faa r8821: continue the trend to move to a more OO style of interface for our js
calls. This changes the generated RPC and IRPC calls to use the 'this'
object pointer instead of requiring the passing of the object on each
call. So typical usage is now:

var echo = echo_init();
var io = irpcObj();

status = echo.connect("ncacn_np:server");
assert(status.is_ok);

io.input.in_data = 7;
status = echo.AddOne(io);
assert(status.is_ok);
(This used to be commit f7b49ecd08)
2007-10-10 13:30:08 -05:00