diff options
Diffstat (limited to 'source4')
-rw-r--r-- | source4/ldap_server/ldap_server.c | 15 |
1 files changed, 8 insertions, 7 deletions
diff --git a/source4/ldap_server/ldap_server.c b/source4/ldap_server/ldap_server.c index 52a519721f..3c27577b66 100644 --- a/source4/ldap_server/ldap_server.c +++ b/source4/ldap_server/ldap_server.c @@ -60,6 +60,7 @@ static void add_socket(struct server_service *service, static void ldapsrv_init(struct server_service *service) { struct ldapsrv_service *ldap_service; + struct ldapsrv_partition *rootDSE_part; struct ldapsrv_partition *part; DEBUG(10,("ldapsrv_init\n")); @@ -71,16 +72,16 @@ static void ldapsrv_init(struct server_service *service) } ZERO_STRUCTP(ldap_service); - part = talloc_p(ldap_service, struct ldapsrv_partition); - if (!ldap_service) { + rootDSE_part = talloc_p(ldap_service, struct ldapsrv_partition); + if (!rootDSE_part) { DEBUG(0,("talloc_p(ldap_service, struct ldapsrv_partition) failed\n")); return; } - part->base_dn = ""; /* RootDSE */ - part->ops = ldapsrv_get_rootdse_partition_ops(); + rootDSE_part->base_dn = ""; /* RootDSE */ + rootDSE_part->ops = ldapsrv_get_rootdse_partition_ops(); - ldap_service->rootDSE = part; - DLIST_ADD_END(ldap_service->partitions, part, struct ldapsrv_partition *); + ldap_service->rootDSE = rootDSE_part; + DLIST_ADD_END(ldap_service->partitions, rootDSE_part, struct ldapsrv_partition *); part = talloc_p(ldap_service, struct ldapsrv_partition); if (!ldap_service) { @@ -552,7 +553,7 @@ static void ldapsrv_accept(struct server_connection *conn) ZERO_STRUCTP(ldap_conn); ldap_conn->connection = conn; - ldap_conn->service = talloc_reference(ldap_conn, conn->stream_socket->service); + ldap_conn->service = talloc_reference(ldap_conn, conn->stream_socket->service->service.private_data); conn->connection.private_data = ldap_conn; |