[SSSD] [PATCHES] Second refactoring wave for #1747

Jakub Hrozek jhrozek at redhat.com
Mon Jan 21 21:25:20 UTC 2013


On Mon, Jan 21, 2013 at 05:55:00PM +0100, Jakub Hrozek wrote:
> On Thu, Jan 17, 2013 at 08:58:59AM -0500, Simo Sorce wrote:
> > On Thu, 2013-01-17 at 13:47 +0100, Jakub Hrozek wrote:
> > > On Sat, Jan 12, 2013 at 11:55:08AM -0500, Simo Sorce wrote:
> > > > Attached are 25 patches that are a second wave on top of my previous
> > > > refactoring patchset for #1747.
> > > > 
> > > > These new patches are a start for the removal of the sysdb argument from
> > > > some of the functions, leaving just the domain argument. This part is
> > > > not complete, but this subset is self contained.
> > > > 
> > > > On top of that there is also a complete refactoring of the code around
> > > > the struct be_req structure. This structure has now been made private to
> > > > the data_provider_be.c file so that it cannot be abused in future.
> > > > 
> > > > I will soon propose a third wave with more sysdb args elimination and
> > > > hopefully, finally a change in how subdomains are managed, which is the
> > > > end-goal of this long refactoring journey.
> > > > 
> > > > This patchset is also compressed as uncompresse dit amounts to ~ 250k
> > > 
> > > Hi Simo, I was only able to apply the first 10 patches, can you rebase
> > > (publishing just the git branch is OK).
> > > 
> > > I read the first 10 patches I could apply and they look good to me. I
> > > don't really have any issues and I give a tentative ack.
> > > 
> > > I ran some limited tests and didn't find any issues either, but I'd like
> > > to do full testing with the whole patchset.
> > 
> > I pushed a rebase sysdb_refactor tree with 2nd and third wave patches on
> > top of master.
> > 
> > Simo.
> 
> In general, I haven't tested every path the patches changed, they simply
> touch almost every part of the SSSD. But general testing went fine and
> all the unit tests pass. I tested only with the whole patchset
> applied, obviously.
> 
> I think we should push these 25 patches as they constitute the "second
> wave".
> 
> Patch 0001: Move ldap provider access functions
> Ack. Just moves code around.
> 
> Patch 0002: Remove sysdb as a be context structure member
> Ack. Looks good. I haven't tested every part of the code, it's too much.
> But I tested id lookups, auth, hbac, selinux and ran the unit tests.
> 
> Patch 0003: Remove sysdb as a be request structure member
> Ack.
> 
> Patch 0004: Remove sysdb argument from ipa_host_info_send()
> Ack.
> 
> Patch 0005: Remove unused structure
> Ack.
> 
> Patch 0006: Remove sysdb argument from hbac_user_attrs_to_rule()
> Ack
> 
> Patch 0007: Remove sysdb arg from hbac_service_attrs_to_rule()
> Ack
> 
> Patch 0008: Remove sysdb arg from hbac_*host_attrs_to_rule()
> Ack
> 
> Patch 0009: Remove sysdb arg from ipa_hbac_service_info_send()
> Ack
> 
> Patch 0010: Remove sysdb arg from [ipa_]hbac_sysdb_save()
> Ack
> 
> Patch 0011: Remove sysdb argument from hbac_get_cached_rules()
> Ack
> 
> Patch 0012: Remove hbac_ctx_sysdb()
> Ack
> 
> Patch 0013: Remove hbac_ctx_be()
> Ack
> 
> Patch 0014: Remove hbac_ctx_ev()
> Ack
> 
> Patch 0015: Remove hbac_ctx_sdap_id_[ctx|op]()
> Ack
> 
> Patch 0016: Move hbac_ctx_is_offline()
> Ack
> 
> Patch 0017: Do not pass NULL to ipa_subdomain_retrieve()
> Ack
> 
> Patch 0018: Split simple_access_check function out
> Ack
> 
> Patch 0019: Pass domain not be_req to access check functions
> Ack
> 
> Patch 0020: Remove domain from be_req structure
> Ack
> 
> Patch 0021: Introduce be_req_terminate() helper
> Ack
> 
> Patch 0022: Add be_req_create() helper
> Ack
> 
> Patch 0023: Add be_req_get_be_ctx() helper.
> Ack
> 
> Patch 0024: Add be_req_get_data() helper funciton.
> Ack
> 
> Patch 0025: Make struct be_req opaque
> Ack

All 25 patches pushed to master. For the record, it was these patches:

3561e54 Make struct be_req opaque
cbaba2f Add be_req_get_data() helper funciton.
03abdaa Add be_req_get_be_ctx() helper.
99151f2 Add be_req_create() helper
8e5549e Introduce be_req_terminate() helper
ccc2af0 Remove domain from be_req structure
249a28d Pass domain not be_req to access check functions
225d845 Split simple_access_check function out
d6d8287 Do not pass NULL to ipa_subdomain_retrieve()
ffbd3f3 Move hbac_ctx_is_offline()
1f59651 Remove hbac_ctx_sdap_id_[ctx|op]()
0514913 Remove hbac_ctx_ev()
f67c42a Remove hbac_ctx_be()
b860f8b Remove hbac_ctx_sysdb()
28c0e7e Remove sysdb argument from hbac_get_cached_rules()
e0404de Remove sysdb arg from [ipa_]hbac_sysdb_save()
697160f Remove sysdb arg from ipa_hbac_service_info_send()
18cb0d6 Remove sysdb arg from hbac_*host_attrs_to_rule()
0700185 Remove sysdb arg from hbac_service_attrs_to_rule()
8a81628 Remove sysdb argument from hbac_user_attrs_to_rule()
16ba62a Remove unused structure
d34961f Remove sysdb argument from ipa_host_info_send()
24b715f Remove sysdb as a be request structure member
df0596e Remove sysdb as a be context structure member
7a46878 Move ldap provider access functions



More information about the sssd-devel mailing list