[PATCH(wip)] remove dependency loop pdb->pdb_ldapsam->smbldaphelper->pdb

Michael Adam obnox at samba.org
Tue Oct 22 16:42:22 MDT 2013


Hi,

the attached (unfinished) patch removes a dependency loop
pdb->pdb_ldapsam->smbldaphelper->pdb
(the last step was implicit by "allow_undefined_symbols=True").

It is achieved by moving some code and splitting out new subsystems
PRIVILEGES (lib/privileges.c),
ACCOUNT_POL (passdb/account_pol.c), and
PDB_ALGORITHMIC_UTIL (passdb/pdb_algorithmic_util.c, containing algorithmic_rid_base())

so that afterwards we have:

pdb--+-->ACCOUNT_POL-->PRIVILEGES
     |
     +-->PDB_ALGORITHMIC_UTIL
     |
     +-->pdb_ldapsam-->smbldaphelper--+-->ACCOUNT_POL-->PRIVILEGES
                                      |
                                      +-->PDB_ALGORITHMIC_UTIL

(A separate PRIVILEGS would not have been necessary, but it seemed
 natural and might be useful later, e.g. lsa server.)

The patch is unfinished in that it would need some polishing
(like splitting out the account_pol.c header from passdb.h)
but I think it is doing the right thing generally, and I would
like to what others think.

One point is that it changes the pdb "library", which is
published since recently (which I still find unfortunate for such
an internal thing, but well..). I think the change removes
symbols from passdb that don't actually belong into there.
Opinions?

Cheers - Michael

-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0001-TODO-remove-dep-loop-pdb-pdb_ldapsam-smbldaphelper-p.patch
Type: text/x-diff
Size: 11711 bytes
Desc: not available
URL: <http://lists.samba.org/pipermail/samba-technical/attachments/20131023/c4516ee6/attachment.patch>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 215 bytes
Desc: Digital signature
URL: <http://lists.samba.org/pipermail/samba-technical/attachments/20131023/c4516ee6/attachment.pgp>


More information about the samba-technical mailing list