mirror of
https://github.com/samba-team/samba.git
synced 2025-08-04 08:22:08 +03:00
dsdb-schema: make sure we build [system]PossibleInferiors completely
Otherwise callers like dsdb_schema_copy_shallow() will corrupt the talloc hierarchie. Signed-off-by: Stefan Metzmacher <metze@samba.org> Reviewed-by: Andrew Bartlett <abartlet@samba.org>
This commit is contained in:
@ -202,6 +202,8 @@ static void schema_fill_possible_inferiors(const struct dsdb_schema *schema,
|
|||||||
{
|
{
|
||||||
struct dsdb_class *c2;
|
struct dsdb_class *c2;
|
||||||
|
|
||||||
|
schema_class->possibleInferiors = NULL;
|
||||||
|
|
||||||
for (c2=schema->classes; c2; c2=c2->next) {
|
for (c2=schema->classes; c2; c2=c2->next) {
|
||||||
const char **superiors = schema_posssuperiors(schema, c2);
|
const char **superiors = schema_posssuperiors(schema, c2);
|
||||||
if (c2->systemOnly == false
|
if (c2->systemOnly == false
|
||||||
@ -223,6 +225,8 @@ static void schema_fill_system_possible_inferiors(const struct dsdb_schema *sche
|
|||||||
{
|
{
|
||||||
struct dsdb_class *c2;
|
struct dsdb_class *c2;
|
||||||
|
|
||||||
|
schema_class->systemPossibleInferiors = NULL;
|
||||||
|
|
||||||
for (c2=schema->classes; c2; c2=c2->next) {
|
for (c2=schema->classes; c2; c2=c2->next) {
|
||||||
const char **superiors = schema_posssuperiors(schema, c2);
|
const char **superiors = schema_posssuperiors(schema, c2);
|
||||||
if (c2->objectClassCategory != 2
|
if (c2->objectClassCategory != 2
|
||||||
|
Reference in New Issue
Block a user