> Hm... How about just adding a BackendDB.be_realdb pointer that always > points to the real BackendDB structure. (It points to itself in the real > structure, obviously.) That ought to solve it...
I'll play with that as well. In practice, dummy, internal and in general non-classical backends should contain a pointer to the backend they inherit from. This solves the problem one way but not the other, and it's not fully equivalent to mine. What I realized, after my digging, is that I'd need the __internal__ backend to appear as the authz_backend; so, instead of fakedb->be_realdb == realdb, I'd need a realdb->be_realdb == fakedb !!! Since the fakedb typically doesn't have its own BackendDB structure, but hijacks that of the realdb or a tempoary and simply sets bd_info, be_private (and sometimes be_cf_ocs...), doing the reverse, i.e. setting be_realdb to point to fakedb before returning from bind would not work. The idea of using an authz_cookie is based on the assumption that the authz_backend notion will only be used as a flag, and not to perform real operations on it. I need to play a bit more. p. -- Pierangelo Masarati mailto:[EMAIL PROTECTED] SysNet - via Dossi,8 27100 Pavia Tel: +390382573859 Fax: +390382476497
