s4:dsdb Rework schema loading and add schema reloading
commitfe3e1af901c970f738bee92baac5d7d4f5736e17
authorAndrew Bartlett <abartlet@samba.org>
Mon, 22 Mar 2010 05:03:33 +0000 (22 16:03 +1100)
committerAndrew Bartlett <abartlet@samba.org>
Mon, 22 Mar 2010 09:24:41 +0000 (22 20:24 +1100)
tree88666ac36e3d7041b24592600f361c412aaa5c3f
parentd0b54476fc9f855d1e482597538a7ec60e04f331
s4:dsdb Rework schema loading and add schema reloading

This commit reworks Samba4's schema loading code to detect when it
needs to reload the schema.  This is done by watching the @REPLCHANGED
special DN.

The reload happens by means of a callback, which is only set when the
schema is loaded from the ldb - not when loaded from an LDIF file or
DRS.

We also rework the global schema handling - instead of storing the
pointer to the global schema in each ldb, we store a flag indicating
that the global schema should be returned at run time.  This makes it
much easier to switch to a new global schema.

Andrew Bartlett
source4/dsdb/samdb/ldb_modules/schema_load.c
source4/dsdb/schema/schema_set.c
source4/lib/ldb_wrap.c