1
0
mirror of https://github.com/samba-team/samba.git synced 2025-04-30 18:53:31 +03:00

501 Commits

Author SHA1 Message Date
Andrew Bartlett
346aa6e093 s4:schema Provide a way to reference a loaded schema between ldbs
This allows us to load the schema against one ldb context, but apply
it to another.  This will be useful in the provision script, as we
need the schema before we start the LDAP server backend.

Adnrew Bartlett
2009-08-17 09:50:56 +10:00
Matthias Dieter Wallnöfer
53ef426e6f s4:samdb python bindings - we don't need the attributes here 2009-08-14 01:56:34 +02:00
Matthias Dieter Wallnöfer
44dfb2902e s4: Better way to call "dom_sid_to_rid" from ldap.py 2009-08-14 00:14:15 +02:00
Andrew Bartlett
7bc566a882 s4:provision Allow provision-backend to not run slapd for 'make test'
As the version of OpenLDAP required for Samba4 is fairly new, we don't
want to make it a requirement before this python code is run in 'make
test'.

As such, skip over the actual starting of slapd, but check the rest
runs alright (which still validates syntax and other modules).

Andrew Bartlett
2009-08-12 11:09:50 +10:00
Andrew Bartlett
6dc41bf27c s4:provision Make the --ol-slapd paramter take the full path to slapd 2009-08-12 10:01:48 +10:00
Oliver Liebel
28bcdf5266 s4:provision Rework and further automate setup of OpenLDAP backend
heres the summary of all changes/extensions:

- Andrew Bartlett's patch to generate indext
- Howard Chu's idea to use nosync on the DB included, but made optional

- slaptest-path is not needed any more (slapd -Ttest is used instead)
and is therefore removed. slapd-path is now recommended when
openldap-backend is chosen.
its also used for olc-conversion

- slapd-detection is now always done by ldapsearch (ldb module),
looking anonymous for objectClass: OpenLDAProotDSE via our ldapi_uri.

- if ldapsearch was not successfull, (no slapd listening on our socket)
slapd is
started via special generated slapdcommand_prov  (ldapi_uri only)

- slapd-"provision-process" startup is done via pythons subprocess.

- the slapd-provision-pid is stored under paths.ldapdir/slapd_provision_pid.

- after provision-backend is finished:
--- slapd.pid is compared with our stored slapd_provision_pid.
if the are unique, slapd.pid will be read out, and the
slapd "provison"-process will be shut down.
--- proper slapd-shutdown is verified again with ldb-search -> ldapi_uri
-> rootDSE.
--- if the pids are different or one of the pid-files is missing, slapd
will not be shut down,
instead an error message is displayed to locate slapd manually
--- extended help-messages (relevant to slapd) are always displayed,
e.g. the commandline with which slapd has to be started when everythings
finished
(slapd-commandline is stored under paths.ldapdir/slapd_command_file.txt))

- upgraded the content of the mini-howto (howto-ol-backend-s4.txt)
2009-08-12 10:01:48 +10:00
Matthias Dieter Wallnöfer
915b789c87 s4: Simplify two lines in the "samdb.py" file (cosmetic) 2009-08-06 12:35:47 +02:00
Andrew Bartlett
113621d96d s4:provision We no longer add krbtgt or kpasswd account into secrets.ldb 2009-07-29 09:07:49 +10:00
Andrew Bartlett
1887ad0a26 s4:provision Fix provision on FreeBSD
We were missing the 'cn' attribute, which we then prepare a sorted
list based on.  On Linux, strcmp(NULL, NULL) does not segfault, where
it does on FreeBSD.

Reported by Timur I. Bakeyev <timur@com.bat.ru>

Andrew Bartlett
2009-07-22 18:04:58 +10:00
Jelmer Vernooij
c80783eafd Re-add accidently removed shares test. 2009-07-20 13:34:50 +02:00
Jelmer Vernooij
478446f96d Remove unnecessary imports. 2009-07-19 18:51:15 +02:00
Jelmer Vernooij
7883897b8d python: Set right ldb modules directory when using system ldb. 2009-07-18 18:39:20 +02:00
Andrew Bartlett
271b5af92e s4:dsdb Handle dc/domain/forest functional levels properly
Rather than have the functional levels scattered in 4 different,
unconnected locations, the provision script now sets it, and the
rootdse module maintains it's copy only as a cached view onto the
original values.

We also use the functional level to determine if we should store AES
Kerberos keys.

Andrew Bartlett
2009-07-16 09:23:35 +10:00
Andrew Bartlett
ba58edd0bc Add a way to set an opaque integer onto a samdb
This will allow us to set some more flags into ldb during the provision.
2009-07-16 09:23:35 +10:00
Andrew Tridgell
465b879902 Changed ldb.ERR_NO_SUCH_OBJECT to LDB_ERR_NO_SUCH_OBJECT.
The LDB_ERR_NO_SUCH_OBJECT varient is not a defined variable. This
should improve error handling in our python code on some
systems. Unfortunately it still doesn't work on mine. I need to trap
Jelmer somewhere where he can't escape some day and force him to
divulge the deep druid secrets of python exception handling ....
2009-07-02 14:55:38 +10:00
Andrew Bartlett
1e6fb7d730 s4: Add tests and 'must change password' flags in setpassword and newuser
In particular, ensure that we can acutally change the password under
these circumstances.

Andrew Bartlett
2009-06-18 13:49:30 +10:00
Andrew Bartlett
2afc6df9b4 s4:setup Add an option to 'setpassword' to force password change at next login 2009-06-18 13:49:30 +10:00
Jelmer Vernooij
308de544f4 python: Provide way to iterate over available shares. 2009-06-16 02:28:10 +02:00
Jelmer Vernooij
f7ada51c29 python: Add API for accessing available shares. 2009-06-16 02:28:10 +02:00
Jelmer Vernooij
d5e6ae5cfc python: Fix samba4.dcerpc.rpcecho.RpcEchoTests.test_surrounding test. 2009-06-08 22:41:39 +02:00
Jelmer Vernooij
6ace18904d Fix more unresolved symbols. 2009-06-02 18:05:41 +02:00
Nadezhda Ivanova
ee4c1ed010 Modified SamDB to accept options like Ldb. 2009-05-27 21:08:35 +10:00
Andrew Bartlett
f128bfd449 Add str() for policy_handles.
Pair programmed with Jelmer
2009-04-21 12:06:04 +02:00
Andrew Bartlett
6f60a6e71a python/dcerpc: Custom implementations of policy_handle.__init__ and policy_handle.__repr__
pair-programmed with Jelmer
2009-04-21 11:53:00 +02:00
Andrew Bartlett
1856b999c8 python/rpc: Add custom GUID.__str__, GUID.__repr__, GUID.__init__ and GUID.__cmp__. 2009-04-21 11:14:11 +02:00
Jelmer Vernooij
03abc846ee Fix the valid NetBIOS name tests. 2009-04-20 11:11:25 +02:00
Andrew Tridgell
65ad2ced60 Merge branch 'wspp-schema' 2009-04-09 14:40:19 +10:00
Jelmer Vernooij
213249ceab Improve formatting in Python file. 2009-04-06 00:25:08 +02:00
Jelmer Vernooij
b1db78c595 Make valid_netbios_name() check a bit stricter. 2009-04-06 00:25:03 +02:00
Andrew Bartlett
354ba5e2e3 s4:schema Update Windows 2008 schema from Microsoft to latest version 2009-04-03 08:18:14 +11:00
Andrew Tridgell
631e688c82 Merge branch 'master' into wspp-schema 2009-03-31 11:58:37 +11:00
Matthias Dieter Wallnoefer
62ab39dde3 s4/provision: Use existing serverrole variable.
Signed-off-by: Jelmer Vernooij <jelmer@samba.org>
2009-03-21 03:07:00 +01:00
Andrew Bartlett
13be4d7ff4 s4:schema Remove 'cn' from the final output of ms_schema.py
This avoids one more point of difference between this an the output
from minschema and fullschema

Andrew Bartlett
2009-03-20 17:32:19 +11:00
Andrew Bartlett
6906c01cac s4:ldb Ensure to pass down options to LDB from python
This is needed for things such as to load modules, like the
paged_searches module.

Andrew Bartlett
2009-03-20 16:28:41 +11:00
Andrew Bartlett
27c6eca04c Merge branch 'master' of ssh://git.samba.org/data/git/samba into wspp-schema 2009-03-20 13:22:08 +11:00
Andrew Tridgell
483525f73c use a base64 encoded password when changing passwords
This avoids problems with embedded control characters in password
changes
2009-03-12 15:20:25 +11:00
Andrew Tridgell
0770028cbe fixed more embedded spaces in LDIF
This one added 3 spaces to the end of any new passwords
2009-03-12 15:13:23 +11:00
Andrew Tridgell
917905aea0 removed leading spaces from embedded ldif
This fixes the problem with the setpassword command failing like this:
   Error: First line of ldif must be a dn not '    dn'
2009-03-12 13:13:14 +11:00
Andrew Bartlett
5ffe7de348 s4:provision load_schema in provision.py no longer takes a hostname
This was missed in the earlier work to use this in provision-backend

Andrew Bartlett
2009-03-11 12:16:27 +11:00
Andrew Bartlett
4c32d8f1a7 Load the schema for provision-backend in a transaction
Loading data in a transaction is faster than without.

Andrew Bartlett
2009-03-06 12:14:08 +11:00
Sreepathi Pai
8352650fee Allow ms_schema.py to produce output much like minschema_wspp
I've patched the new ms_schema.py (which was intended to be used as a
library) to function as minschema_wspp if invoked standalone. Although
this is less robust than minschema_wspp on incorrect data, having two
programs doing the same thing might not be good idea.

Signed-off-by: Andrew Bartlett <abartlet@samba.org>
2009-03-05 17:03:13 +11:00
Andrew Bartlett
17aac8cad2 Remove ad2oLschema, insted call it directly from provision-backend
This removes a level of indirection via external binaries in the
provision-backend code, and also makes better use of our internal code
for loading schema from an LDIF file.

Remaining to do: Sort the output again, as the load from LDIF is
unsorted (also needed because the normal LDB load from sorted input is too slow
anyway, and is only needed here).

Andrew Bartlett
2009-03-05 16:52:11 +11:00
Andrew Bartlett
41760c18bd Merge branch 'master' of ssh://git.samba.org/data/git/samba into wspp-schema 2009-03-05 12:24:35 +11:00
Andrew Bartlett
952bdffaad Don't print the admin password if we don't set one.
For example, if we don't create the admin user (perhaps expecting
users to be in LDAP already, or we are due an incoming replication) we
should not confuse the administrator by printing a unused password.

Andrew Bartlett
2009-03-04 14:02:35 +11:00
Jelmer Vernooij
cdbc00bb52 Fix test_surrounding in samba4.rpcecho.python. 2009-03-02 05:07:30 +01:00
Jelmer Vernooij
258ae4cec5 Merge branch 'master' of ssh://git.samba.org/data/git/samba
Conflicts:
	source4/scripting/python/samba/provision.py
2009-02-25 12:49:37 +01:00
Andrew Bartlett
8249383efb Add the new, updated AD schema file from Microsoft
Also remove the copy of the licence text from licence.txt, to ensure
we don't get variations between the copies.

Andrew Bartlett
2009-02-25 10:40:42 +11:00
Andrew Bartlett
8be9941354 Don't parse the schema data twice 2009-02-25 10:40:42 +11:00
Andrew Bartlett
8d63387744 Tolerate more whitespace errors
We need to trim trailing spaces in the Microsoft-supplied schema.

Andrew Bartlett
2009-02-25 10:40:42 +11:00
Sreepathi Pai
f83e754ae6 Create schema.ldif at runtime directly from ad-schema files
Here's a first attempt at moving the minschema_wspp code into a
library as Andrew requested. Since this script no longer has to
generate CN=aggregate, I've simplified it quite a bit to a level where
it almost does a line-by-line translation. This is faster and simpler,
but it may not catch as many errors in the ad-schema files as the
previous versions did.

Signed-off-by: Andrew Bartlett <abartlet@samba.org>
2009-02-25 10:40:41 +11:00