1
0
mirror of https://github.com/samba-team/samba.git synced 2025-02-23 09:57:40 +03:00

1766 Commits

Author SHA1 Message Date
Andrew Tridgell
94c04b10db build: moved libds/common/flag_mapping.c into a common subsystem
Pair-Programmed-With: Andrew Bartlett <abartlet@samba.org>
2011-02-24 11:57:48 +11:00
Nadezhda Ivanova
0b93902349 s4-descriptor: Fixed a typo in a comment and clarified it a bit.
Autobuild-User: Nadezhda Ivanova <nivanova@samba.org>
Autobuild-Date: Tue Feb 22 12:39:23 CET 2011 on sn-devel-104
2011-02-22 12:39:23 +01:00
Nadezhda Ivanova
be36596f4e s4-descriptor: Fixed some missing curly braces. 2011-02-22 12:46:44 +02:00
Andrew Bartlett
e3821f2c40 s4-auth Move libcli/security/session.c to the top level
This code is now useful in common, as the elements of the
auth_session_info structure have now been defined in common IDL.

Andrew Bartlett
2011-02-22 16:20:11 +11:00
Andrew Tridgell
a12239b131 s4-waf: rename smbpasswd library to smbpasswdparser
this removes a conflict with the s3 smbpasswd binary
2011-02-22 02:51:10 +01:00
Nadezhda Ivanova
a69f634de4 s4-descriptor: Fixed some compiler warnings.
Autobuild-User: Nadezhda Ivanova <nivanova@samba.org>
Autobuild-Date: Mon Feb 21 18:02:21 CET 2011 on sn-devel-104
2011-02-21 18:02:21 +01:00
Nadezhda Ivanova
3b9f3755b0 s4-descriptor: Removed unnecessary descriptor_change function and unused callbacks. 2011-02-21 17:14:12 +02:00
Nadezhda Ivanova
a0a52b3423 s4-descriptor: Replaced the async descriptor_change with synchronous descriptor_modify.
The purpose is to make descriptor module synchronous. This will simplify reading and debugging, and also will make the
    implementation of SD hierarchy recalculation on modify much easier.
2011-02-21 17:08:44 +02:00
Nadezhda Ivanova
85877c0bd1 s4-descriptor: Replaced the synchronous descriptor_change with the synchronous descriptor_add.
The purpose is to make descriptor module synchronous. This will simplify reading and debugging, and also will make the
implementation of SD hierarchy recalculation on modify much easier.
2011-02-21 17:04:27 +02:00
Andrew Tridgell
600c726f51 s4-dsdb: operational module does not need auth any more
Pair-Programmed-With: Andrew Bartlett <abartlet@samba.org>
2011-02-18 15:09:46 +11:00
Kamen Mazdrashki
aaae3164b5 s4-ldb_modules/operational: Make use of dsdb_module_reference_dn() function
it does exactly what we need here

Autobuild-User: Kamen Mazdrashki <kamenim@samba.org>
Autobuild-Date: Tue Feb 15 16:55:32 CET 2011 on sn-devel-104
2011-02-15 16:55:32 +01:00
Matthias Dieter Wallnöfer
7312dacb63 s4:acl LDB module - interpret "userAccountControl" as "uint32_t"
This is the same way as it is done in the samldb LDB module.

Autobuild-User: Matthias Dieter Wallnöfer <mdw@samba.org>
Autobuild-Date: Tue Feb 15 12:08:26 CET 2011 on sn-devel-104
2011-02-15 12:08:26 +01:00
Kamen Mazdrashki
850bf67c45 s4-ldb_modules/acl: Use ntds_guid for SPN check only we have a DC object
ntds_guid is NULL otherwise as it doesn't make sense for
not a DC object

Autobuild-User: Kamen Mazdrashki <kamenim@samba.org>
Autobuild-Date: Mon Feb 14 13:15:31 CET 2011 on sn-devel-104
2011-02-14 13:15:31 +01:00
Kamen Mazdrashki
3134895075 s4-ldb_modules/acl: Get correct NTDSDSA objectGUID to check SPN for 2011-02-14 12:32:22 +01:00
Kamen Mazdrashki
73972072d7 s4-ldb_modules/util: Implement dsdb_module_find_ntdsguid_for_computer()
as a counterpart for samdb_find_ntdsguid_for_computer()
to be used in LDB modules
2011-02-14 12:32:22 +01:00
Kamen Mazdrashki
6110887802 s4/ldb_modules/acl.c: Fix calculation for samAccountName string len 2011-02-14 12:32:22 +01:00
Andrew Tridgell
a6af1efb42 s4-dsdb: cope with broken exchange schema with single valued backlinks
Pair-Programmed-With: Andrew Bartlett <abartlet@samba.org>

Autobuild-User: Andrew Tridgell <tridge@samba.org>
Autobuild-Date: Mon Feb 14 08:45:51 CET 2011 on sn-devel-104
2011-02-14 08:45:51 +01:00
Andrew Tridgell
63d4a99c1b s4-dsdb: fixed problem with constrained modification of description attribute
This approach just asks the tdb backend to handle the single valued
constraint for us

Pair-Programmed-With: Andrew Bartlett <abartlet@samba.org>
2011-02-14 17:55:08 +11:00
Volker Lendecke
80accd3946 Fix typos 2011-02-13 12:11:53 +01:00
Andrew Tridgell
8dc92c8f71 ldb: use #include <ldb.h> for ldb
thi ensures we are using the header corresponding to the version of
ldb we're linking against. Otherwise we could use the system ldb for
link and the in-tree one for include

Pair-Programmed-With: Andrew Bartlett <abartlet@samba.org>
2011-02-10 06:51:07 +01:00
Andrew Bartlett
a2ce53c1f5 s4-auth Rework auth subsystem to remove struct auth_serversupplied_info
This changes auth_serversupplied_info into the IDL-defined struct
auth_user_info_dc.  This then in turn contains a struct
auth_user_info, which is the only part of the structure that is
mainted into the struct session_info.

The idea here is to avoid keeping the incomplete results of the
authentication (such as session keys, lists of SID memberships etc) in
a namespace where it may be confused for the finalised results.

Andrew Barltett
2011-02-09 01:11:06 +01:00
Andrew Tridgell
f4a1b71b2b s4-dsdb: make subtree_rename errors clearer 2011-02-07 13:22:01 +11:00
Andrew Bartlett
2e865bed0a s4-dsdb Fix generation of rootDSE domainControllerFunctionality
The issue here is that when the samdb calls were removed, this call
relied on going back to the top of the module stack, so as to re-enter
the rootDSE search handler.  It makes more sense to check the @ROOTDSE
record directly, and therefore not to invoke the search() handler
during the init.

Andrew Bartlett
2011-02-02 15:21:13 +11:00
Nadezhda Ivanova
95e644f460 s4-acl: Fixed returning uninitialized ldap error in case of some critical errors.
Autobuild-User: Nadezhda Ivanova <nivanova@samba.org>
Autobuild-Date: Fri Jan 28 12:04:01 CET 2011 on sn-devel-104
2011-01-28 12:04:01 +01:00
Matthias Dieter Wallnöfer
3468f8de1e s4:dsdb/samdb/ldb_modules/objectclass.c - move LSA specific object checks into "objectclass_attrs" LDB module
LSA object classes are protected on both LDAP add and LDAP modify
operations, so I've refactored the previous check in the objectclass LDB
module only for LDAP adds in a new one in the objectclass_attrs LDB
module for both adds and modifies.
This is the result of the investigations done by Hongwei Sun and I in
the last months.
Interestingly these protection mechansim doesn't apply on LDAP deletes!

Signed-off-by: Andrew Bartlett <abartlet@samba.org>
2011-01-25 12:27:20 +01:00
Kamen Mazdrashki
585e9a0ab0 s4-repl_meta_data: replmd_update_is_newer() should not return true if metadata stamps are equal
Autobuild-User: Kamen Mazdrashki <kamenim@samba.org>
Autobuild-Date: Sat Jan 22 12:22:30 CET 2011 on sn-devel-104
2011-01-22 12:22:30 +01:00
Kamen Mazdrashki
0ce93ad2bc s4-repl_meta_data: Print out what is wrong when we fail to modify object 2011-01-22 12:35:22 +02:00
Kamen Mazdrashki
0aa118f22b s4-repl_meta_data: We should not use USNs in metadata comparisons
If object is changed by same DC, then version should be incremented
2011-01-22 12:35:22 +02:00
Andrew Bartlett
fbe6d155bf s4-auth Remove special case for account_sid from auth_serversupplied_info
This makes everything reference a server_info->sids list, which is now
a struct dom_sid *, not a struct dom_sid **.  This is in keeping with
the other sid lists in the security_token etc.

In the process, I also tidy up the talloc tree (move more structures
under their logical parents) and check for some possible overflows in
situations with a pathological number of sids.

Andrew Bartlett
2011-01-20 23:44:05 +01:00
Andrew Tridgell
8794e6dad9 s4-dsdb: replaced the calls to ldb_search() in dsdb modules with dsdb_module_search()
this ensures we follow the module stack, and set the parent on child
requests
2011-01-17 05:23:04 +01:00
Andrew Tridgell
87f3151047 s4-dsdb: pass parent request to dsdb_module_*() functions
this preserves the request hierarchy for dsdb_module_*() calls inside
dsdb ldb modules

Pair-Programmed-With: Andrew Bartlett <abartlet@samba.org>
2011-01-17 05:23:04 +01:00
Matthias Dieter Wallnöfer
39eea5ca43 s4:samldb LDB module - fix "userAccountControl" handling
"UF_ACCOUNTDISABLE" is only added automatically if no "userAccountControl" flags
are set on LDAP add operations.

Autobuild-User: Matthias Dieter Wallnöfer <mdw@samba.org>
Autobuild-Date: Fri Jan 14 18:29:07 CET 2011 on sn-devel-104
2011-01-14 18:29:07 +01:00
Andrew Tridgell
ad8965c364 s4-dsdb: only enforce the extended dn rules over ldap
Pair-Programmed-With: Andrew Bartlett <abartlet@samba.org>

Autobuild-User: Andrew Tridgell <tridge@samba.org>
Autobuild-Date: Fri Jan 14 07:23:31 CET 2011 on sn-devel-104
2011-01-14 07:23:31 +01:00
Andrew Tridgell
74674e782e s4-dsdb: removed the last use of samdb_search_*() from the dsdb ldb modules
Pair-Programmed-With: Andrew Bartlett <abartlet@samba.org>
2011-01-14 16:39:33 +11:00
Andrew Tridgell
90110a0bbc s4-dsdb: removed some more samdb_search_*() calls from samldb.c
Pair-Programmed-With: Andrew Bartlett <abartlet@samba.org>
2011-01-14 16:39:33 +11:00
Andrew Tridgell
3b7c498437 s4-dsdb: replaced another use of samdb_search in a ldb module
we should be using the dsdb_module_search*() calls

Pair-Programmed-With: Andrew Bartlett <abartlet@samba.org>
2011-01-14 16:39:33 +11:00
Andrew Tridgell
15c8107868 s4-dsdb: fixed primaryGroupID to use dsdb_module_search_dn()
this avoids using a multi-part extended DN in a search that hits the
check in extended_dn_in

Pair-Programmed-With: Andrew Bartlett <abartlet@samba.org>
2011-01-14 16:39:33 +11:00
Andrew Tridgell
31d644c7f9 s4-dsdb: fixed filtering of tokengroups
builtin groups are shown in user tokenGroups searches

Pair-Programmed-With: Andrew Bartlett <abartlet@samba.org>
2011-01-14 16:39:33 +11:00
Andrew Tridgell
0450ab9536 s4-samdb: give a more useful debug when we can't open the privileges db
Pair-Programmed-With: Andrew Bartlett <abartlet@samba.org>
2011-01-14 16:39:33 +11:00
Andrew Tridgell
27d7f6a312 s4-dsdb: validate number of extended components
this checks that the number of extended components in a DN is valid,
to match MS AD behaviour. We need to do this to ensure that our tools
don't try to do operations that will be invalid when used against MS
servers

Pair-Programmed-With: Andrew Bartlett <abartlet@samba.org>
2011-01-14 16:39:32 +11:00
Andrew Bartlett
cbffc51313 s4-dsdb Implement tokenGroups expansion directly in ldb operational module
This removes a silly cross-dependency between the ldb moudle stack and auth/

Andrew Bartlett
2011-01-14 16:39:32 +11:00
Matthias Dieter Wallnöfer
d35d2bf392 s4:extended_dn_out LDB module - initialise "have_reveal_control" 2011-01-12 19:52:20 +01:00
Matthias Dieter Wallnöfer
37c4ced9bd s4:acl LDB module - "acl_rename" - memory contexts fixup
Autobuild-User: Matthias Dieter Wallnöfer <mdw@samba.org>
Autobuild-Date: Thu Dec 23 22:49:41 CET 2010 on sn-devel-104
2010-12-23 22:49:41 +01:00
Matthias Dieter Wallnöfer
e30299eabd s4:acl LDB module - add a missing "talloc_free(tmp_ctx)" in an error path
Just for consistency.

Autobuild-User: Matthias Dieter Wallnöfer <mdw@samba.org>
Autobuild-Date: Thu Dec 23 21:46:38 CET 2010 on sn-devel-104
2010-12-23 21:46:37 +01:00
Nadezhda Ivanova
3ba42be7c1 s4-acl: Implementation of Validated-SPN validated write
If this right is granted to a user, they may modify the SPN of an object with some value restrictions
serviceName can be set only if the object is a DC, and then only to the default domain and netbios name, or ntds_guid._msdsc_.forest_domain. If the serviceType is GC, only to the forest root domain. If the serviceType is ldap, then to forest_domain or netbiosname.
InstanceType can be samAccountName or dnsHostName.
2010-12-22 12:29:14 +02:00
Andrew Bartlett
6f7423c7f1 s4-auth Remove duplicate copies of session_info creation code
We now just do or do not call into LDB based on some flags.

This means there may be some more link time dependencies, but we seem
to deal with those better now.

Andrew Bartlett
2010-12-21 15:10:38 +11:00
Andrew Bartlett
1961d7a411 s4-auth rework session_info handling not to require an auth context
This reverts a previous move to have this based around the auth
subsystem, which just spread auth deps all over unrelated code.

Andrew Bartlett
2010-12-21 15:10:38 +11:00
Andrew Bartlett
94a59b781c s4-auth Remove event context from privilage database handling
These local TDB operations can quite safely be handled in a new/nested
event context, rather than using the main event context.

Andrew Bartlett
2010-12-21 15:10:38 +11:00
Andrew Bartlett
455ef46785 Revert "s4-dsdb Don't talloc_free() ares on failure, as LDB might free it later"
This reverts commit 25163380239abbad28f1656c42e6fab1b92473d9 because
further analyis showed the real problem was introduced in 0941099a
(which changed the caller behaviour, but only for indexed searches).

Andrew Bartlett

Autobuild-User: Andrew Bartlett <abartlet@samba.org>
Autobuild-Date: Sat Dec 18 02:19:59 CET 2010 on sn-devel-104
2010-12-18 02:19:59 +01:00
Jelmer Vernooij
6967cf27eb ldb: Rename controls_except_specified -> ldb_controls_except_specified.
Autobuild-User: Jelmer Vernooij <jelmer@samba.org>
Autobuild-Date: Sat Dec 18 01:33:24 CET 2010 on sn-devel-104
2010-12-18 01:33:24 +01:00