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

RE: backend private data

> -----Original Message-----
> From: owner-openldap-devel@OpenLDAP.org
> [mailto:owner-openldap-devel@OpenLDAP.org]On Behalf Of David Parker
> It looks like all of the existing backends grab a 
> backend-specific pointer from op->o_bd->be_private in, for 
> instance, their bind methods. At what point in the request 
> processing does the op->o_bd->be_private pointer get 
> populated? In back-ldap, for example, the be_private is being 
> cast to a "struct ldapinfo *", but I don't see anywhere in 
> the slapd directory that knows about this type, so I'm 
> wondering where that connection is getting made.

The be_private pointer is just that, private to each backend. The slapd
frontend doesn't know anything about what it points to. In back-ldap it's
created in init.c:ldap_back_db_init(); most other backends do a similar
thing. The db_init routines are called during slapd startup, long before any
request processing occurs.

  -- Howard Chu
  Chief Architect, Symas Corp.       Director, Highland Sun
  http://www.symas.com               http://highlandsun.com/hyc
  Symas: Premier OpenSource Development and Support 

<<attachment: winmail.dat>>