[Date Prev][Date Next] [Chronological] [Thread] [Top]

Re: Same old problem: how to univoquely identify a database



> 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:pierangelo.masarati@sys-net.it


    SysNet - via Dossi,8 27100 Pavia Tel: +390382573859 Fax: +390382476497