Ticket #3: acl cache overflown problem
Fix Description: We have made ACLPB_MAX_SELECTED_ACLS and ACLPB_MAX_CACHE_RESULTS configurable.
Their default value is still 200 (same as before). To modify this value, you can add or
modify the attribute "nsslapd-aclpb-max-selected-acls" in the ACL plugin
config entry "cn=ACL Plugin,cn=plugins,cn=config".
- The constants were replaced with variables (same name in lower case)
- On init: the variables are initialized with the value contained in the mentioned
attribute, if it exists in config. Otherwise they are set to the default value.
- The arrays that depend on these values are now dynamically allocated
- On init: acl__malloc_aclpb ( )
- On pre-operation: acl_conn_ext_constructor ( ... )
- The memory is freed:
- On shutdown: acl_destroy_aclpb_pool()
- On post-operation: acl_conn_ext_destructor ( ... )
- I also free the space for aclQueue in acl_destroy_aclpb_pool(), since it seems
it is not done anywhere.
Platforms tested: Fedora 16, RHEL6
Reviewed by: rmeggins (and changed name of attribute slightly)