1
0
mirror of https://github.com/samba-team/samba.git synced 2025-08-04 08:22:08 +03:00

r12880: Remove ldap partitions useless now and probably we

will not use it anyway as we plan to support
partitions in ldb directly like with rootdse

Merge ldap_simple_ldb into ldap_backend, it is
not simple anymore and makes no sense to have
it separated now that ldap partitions are gone

Initial attempt at working to some limit to avoid DOSs
for the ldap server.

Simo.
(This used to be commit 97bff3e049)
This commit is contained in:
Simo Sorce
2006-01-13 00:38:35 +00:00
committed by Gerald (Jerry) Carter
parent 0ac6b5232d
commit a7a79d2b25
6 changed files with 605 additions and 786 deletions

View File

@ -27,14 +27,22 @@ struct ldapsrv_connection {
struct auth_session_info *session_info;
struct ldapsrv_service *service;
struct tls_context *tls;
struct ldapsrv_partition *default_partition;
struct ldapsrv_partition *partitions;
struct cli_credentials *server_credentials;
struct ldb_context *ldb;
/* are we using gensec wrapping? */
BOOL enable_wrap;
struct packet_context *packet;
struct {
int initial_timeout;
int conn_idle_time;
int max_page_size;
int search_timeout;
struct timed_event *ite;
} limits;
};
struct ldapsrv_call {
@ -47,30 +55,6 @@ struct ldapsrv_call {
};
struct ldapsrv_service;
struct ldapsrv_partition;
struct ldapsrv_partition_ops {
const char *name;
NTSTATUS (*Init)(struct ldapsrv_partition *partition, struct ldapsrv_connection *conn);
NTSTATUS (*Bind)(struct ldapsrv_partition *partition, struct ldapsrv_connection *conn);
NTSTATUS (*Search)(struct ldapsrv_partition *partition, struct ldapsrv_call *call);
NTSTATUS (*Modify)(struct ldapsrv_partition *partition, struct ldapsrv_call *call);
NTSTATUS (*Add)(struct ldapsrv_partition *partition, struct ldapsrv_call *call);
NTSTATUS (*Del)(struct ldapsrv_partition *partition, struct ldapsrv_call *call);
NTSTATUS (*ModifyDN)(struct ldapsrv_partition *partition, struct ldapsrv_call *call);
NTSTATUS (*Compare)(struct ldapsrv_partition *partition, struct ldapsrv_call *call);
NTSTATUS (*Abandon)(struct ldapsrv_partition *partition, struct ldapsrv_call *call);
NTSTATUS (*Extended)(struct ldapsrv_partition *partition, struct ldapsrv_call *call);
};
struct ldapsrv_partition {
struct ldapsrv_partition *prev,*next;
void *private;
const struct ldapsrv_partition_ops *ops;
const char *base_dn;
};
struct ldapsrv_service {
struct tls_params *tls_params;