logo_kerberos.gif

Difference between revisions of "Samba4 Port: hdb & ldb Interfaces"

From K5Wiki
Jump to: navigation, search
(Samba's internal ldb library)
(Samba's internal ldb library)
Line 846: Line 846:
 
|
 
|
 
| attr
 
| attr
  +
 
|-
 
| ldb_ldap_backend_ops
 
| ldb_ildap/ldb_ildap.c
 
|
 
|
  +
|
  +
|
  +
|
  +
| backend_ops
  +
  +
|-
 
| ldb_ldapi_backend_ops
  +
| ldb_ildap/ldb_ildap.c
  +
|
  +
|
  +
|
  +
|
  +
|
  +
| backend_ops
  +
  +
|-
 
| ldb_ldaps_backend_ops
  +
| ldb_ildap/ldb_ildap.c
  +
|
  +
|
  +
|
  +
|
  +
|
  +
| backend_ops
  +
  +
|-
 
| ldb_tdb_backend_ops
 
| ldb_ldap/ldb_tdb.c
  +
|
  +
|
  +
|
  +
|
  +
|
  +
| backend_ops
   
 
|-
 
|-
Line 1,009: Line 1,049:
 
|-
 
|-
 
| ldb_dn_copy
 
| ldb_dn_copy
|
 
  +
| common/ldb_dn.c
 
| +
 
| +
 
| +
 
| +
Line 1,780: Line 1,820:
 
| ldb_kludge_acl_module_ops
 
| ldb_kludge_acl_module_ops
 
| ldb_modules/kludge_acl.c
 
| ldb_modules/kludge_acl.c
|
 
|
 
|
 
|
 
|
 
| module_ops
 
 
|-
 
| ldb_ldap_backend_ops
 
| ldb_ildap/ldb_ildap.c
 
|
 
|
 
|
 
|
 
|
 
| module_ops
 
 
|-
 
| ldb_ldapi_backend_ops
 
| ldb_ildap/ldb_ildap.c
 
|
 
|
 
|
 
|
 
|
 
| module_ops
 
 
|-
 
| ldb_ldaps_backend_ops
 
| ldb_ildap/ldb_ildap.c
 
 
|
 
|
 
|
 
|
Line 2,025: Line 2,035:
 
|
 
|
 
|
 
|
| schema
 
 
| module_ops
   
 
|-
 
|-
Line 2,070: Line 2,080:
 
| ldb_subtree_rename_module_ops
 
| ldb_subtree_rename_module_ops
 
| ldb_modules/subtree_rename.c
 
| ldb_modules/subtree_rename.c
|
 
|
 
|
 
|
 
|
 
| module_ops
 
 
|-
 
| ldb_tdb_backend_ops
 
| ldb_ldap/ldb_tdb.c
 
 
|
 
|
 
|
 
|

Revision as of 14:04, 17 September 2009

This page aims to reduce the confusion about four DB libraries:

  1. Two hdb libraries (one each for Samba4 & Heimdal);
  2. Samba4's LDB library, and
  3. Samba4's ldb library.

This page also answers two questions that we've wondered about, and which are important for the Samba4 port to MIT-krb:

  1. Does Heimdal call Samba4 directly?
  2. Does Samba4 call Heimdal functions directly, without going through the libkdc interface?

Unfortunately, the answer to both questions is "Yes."


Samba4's LDB interface to LDAP

Almost all of the LDB_ routines are in source4/kdc/hdb-samba4.c , and these routines make up half of Samba's kdc-specific code.

Entry-point Heim use Smb4 use Comment
LDB_destroy hdb
LDB_fetch hdb
LDB_firstkey hdb
LDB_nextkey hdb wrapper for LDB_seq
LDB_open hdb stub
LDB_close hdb stub
LDB_remove hdb stub
LDB_rename hdb stub
LDB_store hdb stub
LDB_lock hdb stub
LDB_unlock hdb stub
hdb_samba4_create hdb callback
kdc_hdb_samba4_create hdb kdc_task_init
LDB_seq LDB
LDB_fetch_client LDB
LDB_fetch_krbtgt LDB
LDB_fetch_server LDB
LDB_lookup_principal LDB
LDB_lookup_spn_alias samdb defined in dsdb/samdb
LDB_lookup_trust LDB
LDB_message2entry LDB
LDB_message2entry_keys LDB
LDB_trust_message2entry LDB

Heimdal's hdb Interface to Samba4's LDB

Samba4's file kdc/hdb-samba4.c contains the LDB_ functions, which only Samba4 uses directly.

In Samba4's heimdal/lib/hdb/hdb.h, Heimdal's HDB structure contains "hdb-" prefixed function-pointers to the LDB functions. Only Heimdal uses this function-pointer interface to Samba4's LDB_ functions:

  1. (HDB *)->hdb_dbc = NULL;
  2. (HDB *)->hdb_open = LDB_open;
  3. (HDB *)->hdb_close = LDB_close;
  4. (HDB *)->hdb_fetch = LDB_fetch;
  5. (HDB *)->hdb_store = LDB_store;
  6. (HDB *)->hdb_remove = LDB_remove;
  7. (HDB *)->hdb_firstkey = LDB_firstkey;
  8. (HDB *)->hdb_nextkey = LDB_nextkey;
  9. (HDB *)->hdb_lock = LDB_lock;
  10. (HDB *)->hdb_unlock = LDB_unlock;
  11. (HDB *)->hdb_rename = LDB_rename;
  12. (HDB *)->hdb__get = NULL;
  13. (HDB *)->hdb__put = NULL;
  14. (HDB *)->hdb__del = NULL;
  15. (HDB *)->hdb_destroy = LDB_destroy;

Samba4's hdb_ library also includes a local function invoked via a function-pointer:

  1. hdb_ldb_free_entry in kdc/hdb-samba4.c

This function-pointer gets used by both Heimdal & Samba4.


Heimdal's internal hdb library

This library isn't completely "internal," because four of these routines get used by Samba, too:

  1. initialize_hdb_error_table_r
  2. free_hdb_entry
  3. hdb_enctype2key
  4. hdb_free_entry

Further, the global struct hdb_kt_ops{} gets used only by Samba4.

Two functions here, hdb_lock & hdb_unlock, have the same names as two of the LDB function-pointers (see above):

  1. (HDB *)->hdb_lock ,
  2. (HDB *)->hdb_unlock .

Heimdal uses these two function pointers heavily.


Entry-point heimdal/lib/hdb file Heim use Smb4 use
copy_hdb_entry asn1_hdb_entry.c
copy_hdb_entry_alias asn1_hdb_entry_alias.c
decode_hdb_entry asn1_hdb_entry.c
decode_hdb_entry_alias asn1_hdb_entry_alias.c
encode_hdb_entry asn1_hdb_entry.c
encode_hdb_entry_alias asn1_hdb_entry_alias.c
free_hdb_entry asn1_hdb_entry.c hdb ++ LDB +
free_hdb_entry_alias asn1_hdb_entry_alias.c
initialize_hdb_error_table hdb_err.c
initialize_hdb_error_table_r hdb_err.c hdb kdc
length_hdb_entry asn1_hdb_entry.c
length_hdb_entry_alias asn1_hdb_entry_alias.c
_hdb_fetch common.c hdb
_hdb_store common.c hdb
_hdb_remove common.c hdb
_hdb_find_master_key mkey.c hdb
_hdb_mkey_decrypt mkey.c hdb
_hdb_mkey_version mkey.c hdb
hdb_add_master_key mkey.c
hdb_check_db_format hdb.c NDBM, DB, hdb
hdb_clear_extension ext.c hdb
hdb_clear_master_key mkey.c NDBM, DB
hdb_create hdb.c hdb
hdb_db_dr dbinfo.c kdc
hdb_dbinfo_get_acl_file dbinfo.c
hdb_dbinfo_get_binding dbinfo.c
hdb_dbinfo_get_dbname dbinfo.c
hdb_dbinfo_get_label dbinfo.c
hdb_dbinfo_get_log_file dbinfo.c
hdb_dbinfo_get_mkey_file dbinfo.c
hdb_dbinfo_get_next dbinfo.c
hdb_dbinfo_get_realm dbinfo.c
hdb_free_dbinfo dbinfo.c
hdb_get_dbinfo dbinfo.c
hdb_default_db dbinfo.c
hdb_init_db hdb.c NDBM, DB, hdb
hdb_enctype2key hdb.c kdc ++, tgs ++ kdc
hdb_entry_check_mandatory ext.c
hdb_entry_clear_password ext.c
hdb_entry_get_aliases ext.c
hdb_entry_get_ConstrainedDelegACL ext.c tgs
hdb_entry_get_password ext.c kdc
hdb_entry_get_pkinit_acl ext.c kdc
hdb_entry_get_pkinit_hash ext.c
hdb_entry_get_pw_change_time ext.c
hdb_entry_set_password ext.c
hdb_entry_set_pw_change_time ext.c
hdb_find_extension ext.c hdb ++
hdb_foreach hdb.c
hdb_free_entry hdb.c NDBM, DB, kdc, hdb + kdc ++
hdb_free_key hdb.c
hdb_free_keys keys.c
hdb_free_master_key mkey.c hdb
hdb_generate_key_set keys.c hdb
hdb_generate_key_set_password keys.c
hdb_kt_ops{} keytab.c kdc
hdb_list_builtin hdb.c
hdb_lock hdb.c NDBM, DB
hdb_next_enctype2key hdb.c kdc +, hdb
hdb_process_master_key mkey.c hdb ++
hdb_read_master_key mkey.c hdb
hdb_replace_extension ext.c hdb
hdb_seal_key mkey.c
hdb_seal_keys mkey.c
hdb_seal_key_mkey mkey.c hdb
hdb_seal_keys_mkey mkey.c hdb
hdb_set_master_key mkey.c
hdb_set_master_keyfile mkey.c hdb +
hdb_unlock hdb.c NDBM, DB
hdb_unseal_key mkey.c
hdb_unseal_keys mkey.c NDBM, DB
hdb_unseal_key_mkey mkey.c hdb
hdb_unseal_keys_mkey mkey.c hdb

Samba's internal ldb library

These routines are defined & used only in Samba4, and not in Samba4's heimdal snapshot tree.

Entry-point Samba4 file *srv dsdb net ldb other ldb grp
ldb_search common/ldb.c ++ ++ ++ ++ param basic
ldb_errstring common/ldb.c ++ ++ ++ ++ kdc, param basic
ldb_add common/ldb.c + + + ++ param basic
ldb_debug common/ldb_debug.c 1 ++ ++ basic
ldb_wait common/ldb.c 1 + 1 ++ basic
ldb_delete common/ldb.c 1 + ++ param basic
ldb_request common/ldb.c 1 + ++ basic
ldb_connect common/ldb.c 1 ++ param basic
ldb_init common/ldb.c 1 ++ basic
ldb_modify common/ldb.c + + + + param basic
ldb_rename common/ldb.c 1 1 + param basic
ldb_qsort common/qsort.c 1 1 1 1 basic
ldb_attr_cmp ldb/include/ldb.h ++ ++ attr
ldb_attr_in_list common/ldb_msg.c + + attr
ldb_attr_casefold common/ldb_utf8.c + attr
ldb_attr_list_copy_add common/ldb_msg.c 1 1 attr
ldb_attr_dn common/ldb_utf8.c 1 attr
ldb_ldap_backend_ops ldb_ildap/ldb_ildap.c backend_ops
ldb_ldapi_backend_ops ldb_ildap/ldb_ildap.c backend_ops
ldb_ldaps_backend_ops ldb_ildap/ldb_ildap.c backend_ops
ldb_tdb_backend_ops ldb_ldap/ldb_tdb.c backend_ops
ldb_attr_list_copy common/ldb_msg.c 1 attr
ldb_get_default_basedn common/ldb.c + + + kdc, auth basedn
ldb_get_root_basedn common/ldb.c + + 1 basedn
ldb_get_config_basedn common/ldb.c 1 1 basedn
ldb_get_schema_basedn common/ldb.c 1 1 basedn
ldb_build_search_req_ex common/ldb.c ++ ++ build...req
ldb_build_add_req common/ldb.c ++ + build...req
ldb_build_del_req common/ldb.c ++ + build...req
ldb_build_mod_req common/ldb.c ++ + build...req
ldb_build_rename_req common/ldb.c ++ + build...req
ldb_build_search_req common/ldb.c ++ + build...req
ldb_build_extended_req common/ldb.c 1 + build...req
ldb_dn_new common/ldb_dn.c ++ ++ ++ ++ gpo, auth, winbind, utils, param, ntptr dn
ldb_dn_get_linearized common/ldb_dn.c ++ ++ ++ ++ kdc, gpo, auth dn
ldb_dn_add_child_fmt common/ldb_dn.c ++ + + + dn
ldb_dn_new_fmt common/ldb_dn.c + + ++ + winbind, param, ntptr dn
ldb_dn_copy common/ldb_dn.c + + + ++ utils dn
ldb_dn_validate common/ldb_dn.c + + + ++ utils dn
ldb_dn_alloc_linearized common/ldb_dn.c 1 + + ++ dn
ldb_dn_compare common/ldb_dn.c 1 ++ + + dn
ldb_dn_is_special common/ldb_dn.c 1 ++ ++ dn
ldb_dn_get_parent common/ldb_dn.c 1 + + + dn
ldb_dn_get_component_val common/ldb_dn.c + + + dn
ldb_dn_get_comp_num common/ldb_dn.c + + + dn
ldb_dn_get_component_name common/ldb_dn.c + + + dn
ldb_dn_from_ldb_val common/ldb_dn.c 1 + + auth dn
ldb_dn_get_extended_linearized common/ldb_dn.c 1 + + dn
ldb_dn_get_rdn_val common/ldb_dn.c 1 + + dn
ldb_dn_get_rdn_name common/ldb_dn.c 1 + + dn
ldb_dn_add_base common/ldb_dn.c + + dn
ldb_dn_set_component common/ldb_dn.c + + dn
ldb_dn_compare_base common/ldb_dn.c + + dn
ldb_dn_remove_base_components common/ldb_dn.c + + dn
ldb_dn_has_extended common/ldb_dn.c + + dn
ldb_dn_is_null common/ldb_dn.c + + dn
ldb_dn_is_valid common/ldb_dn.c + + dn
ldb_dn_canonical_string common/ldb_dn.c 1 1 + dn
ldb_dn_add_base_fmt common/ldb_dn.c 1 + dn
ldb_dn_canonical_ex_string common/ldb_dn.c 1 + dn
ldb_dn_escape_value common/ldb_dn.c + dn
ldb_dn_check_local ldb_map/ldb_map.c + dn
ldb_dn_check_special common/ldb_dn.c + dn
ldb_dn_alloc_casefold common/ldb_dn.c + dn
ldb_dn_extended_syntax_by_name common/ldb_attributes.c + dn
ldb_dn_get_casefold common/ldb_dn.c + dn
ldb_dn_get_extended_component common/ldb_dn.c + auth dn
ldb_dn_set_extended_compo common/ldb_dn.c + dn
ldb_dn_map_local ldb_map/ldb_map.c + dn
ldb_dn_remove_child_components common/ldb_dn.c 1 1 dn
ldb_dn_add_child common/ldb_dn.c 1 dn
ldb_dn_extended_add_syntax common/ldb_attributes.c 1 dn
ldb_dn_map_rebase_remote ldb_map/ldb_map_outbound.c 1 dn
ldb_binary_encode common/ldb_parse.c 1 + + encoding
ldb_binary_encode_string common/ldb_parse.c + + auth encoding
ldb_should_b64_encode common/ldb_ldif.c + encoding
ldb_base64_decode common/ldb_ldif.c + encoding
ldb_base64_encode common/ldb_ldif.c + encoding
ldb_set_errstring common/ldb.c ++ ++ error
ldb_asprintf_errstring common/ldb.c ++ + error
ldb_strerror common/ldb.c + 1 + gpo error
ldb_reset_err_string common/ldb.c + + error
ldb_extended common/ldb.c + 1 extended
ldb_extended_default_callback common/ldb.c + 1 extended
ldb_get_opaque common/ldb.c 1 ++ ++ kdc get/set
ldb_set_opaque common/ldb.c + ++ ++ scripting get/set
ldb_get_event_context common/ldb.c + + get/set
ldb_get_create_perms common/ldb.c 1 get/set
ldb_set_create_perms common/ldb.c + get/set
ldb_ldif_write_file common/ldb_ldif.c + ++ ldif
ldb_ldif_read_file common/ldb_ldif.c + ldif
ldb_ldif_read_free common/ldb_ldif.c + ldif
ldb_ldif_read_string common/ldb_ldif.c + 1 ldif
ldb_module_get_ctx common/ldb_modules.c + +++ ++ module
ldb_module_done common/ldb_modules.c +++ ++ module
ldb_module_get_private common/ldb_modules.c ++ ++ module
ldb_module_send_entry common/ldb_modules.c ++ ++ module
ldb_module_send_referral common/ldb_modules.c ++ + module
ldb_module_set_private common/ldb_modules.c + + module
ldb_modules_list_from_string common/ldb_modules.c 1 + module
ldb_init_module_chain common/ldb_modules.c 1 + module
ldb_load_modules common/ldb_modules.c 1 + module
ldb_module_new common/ldb_modules.c + module
ldb_load_modules_list common/ldb_modules.c 1 1 module
ldb_register_module common/ldb_modules.c 1 module_ops
ldb_anr_module_ops sambdb/ldb_modules/anr.c module_ops
ldb_asq_module_ops ldb/modules/asq.c module_ops
ldb_dsdb_cache_module_ops ldb_modules/dsdb_cache.c module_ops
ldb_entryuuid_module_ops ldb_modules/simple_ldap_map.c module_ops
ldb_extended_dn_in_module_ops ldb_modules/extended_dn_in.c module_ops
ldb_extended_dn_out_dereference_module_ops ldb_modules/extended_dn_out.c module_ops
ldb_extended_dn_out_ldb_module_ops ldb_modules/extended_dn_out.c module_ops
ldb_extended_dn_store_module_ops ldb_modules/extended_dn_store.c module_ops
ldb_instancetype_module_ops ldb_modules/instancetype.c module_ops
ldb_kludge_acl_module_ops ldb_modules/kludge_acl.c module_ops
ldb_linked_attributes_module_ops ldb_modules/linked_attributes.c module_ops
ldb_local_password_module_ops ldb_modules/local_password.c module_ops
ldb_naming_fsmo_module_ops ldb_modules/naming_fsmo.c module_ops
ldb_nsuniqueid_module_ops ldb_modules/simple_ldap_map.c module_ops
ldb_objectclass_module_ops ldb_modules/objectclass.c module_ops
ldb_objectguid_module_ops ldb_modules/objectguid.c module_ops
ldb_operational_module_ops ldb_modules/operational.c module_ops
ldb_paged_results_module_ops ldb_modules/paged_results.c module_ops
ldb_paged_searches_module_ops ldb_modules/paged_searches.c module_ops
ldb_partition_module_ops ldb_modules/partition.c module_ops
ldb_password_hash_module_ops ldb_modules/password_hash.c module_ops
ldb_pdc_fsmo_module_ops ldb_modules/pdc_fsmo.c module_ops
ldb_proxy_module_ops ldb_modules/proxy.c module_ops
ldb_ranged_results_module_ops ldb_modules/ranged_results.c module_ops
ldb_rdn_name_module_ops ldb_modules/rdn_name.c module_ops
ldb_repl_meta_data_module_ops ldb_modules/repl_meta_data.c module_ops
ldb_rootdse_module_ops ldb_modules/rootdse.c module_ops
ldb_samba3sam_module_ops ldb_modules/samba3sam.c module_ops
ldb_samldb_module_ops ldb_modules/samldb.c module_ops
ldb_sample_module_ops ldb_modules/sample_module.c module_ops
ldb_schema_fsmo_module_ops ldb_modules/schema_fsmo.c module_ops
ldb_server_sort_module_ops ldb_modules/sort.c module_ops
ldb_show_deleted_module_ops ldb_modules/show_deleted.c module_ops
ldb_skel_module_ops ldb_modules/skel.c module_ops
ldb_subtree_delete_module_ops ldb_modules/subtree_delete.c module_ops
ldb_subtree_rename_module_ops ldb_modules/subtree_rename.c module_ops
ldb_update_keytab_module_ops ldb_modules/update_keytab.c module_ops
ldb_wins_ldb_module_ops ldb_modules/wins_ldb.c module_ops
ldb_msg_add_fmt common/ldb_msg.c ++ + + 1 param msg
ldb_msg_add_empty common/ldb_msg.c + ++ + winbind, param msg
ldb_msg_add common/ldb_msg.c 1 + msg
ldb_msg_add_steal_string common/ldb_msg.c 1 + 1 msg
ldb_msg_add_steal_value common/ldb_msg.c + + msg
ldb_msg_add_string common/ldb_msg.c + ++ + + winbind, utils, param, registry msg
ldb_msg_add_value common/ldb_msg.c + ++ + + winbind, param, registry msg
ldb_msg_canonicalize common/ldb_msg.c + + msg
ldb_msg_check_string_attribute common/ldb_msg.c + 1 msg
ldb_msg_copy common/ldb_msg.c ++ + msg
ldb_msg_copy_attr common/ldb_msg.c 1 msg
ldb_msg_copy_shallow common/ldb_msg.c ++ + msg
ldb_msg_diff common/ldb_msg.c + 1 msg
ldb_msg_element_compare common/ldb_msg.c + msg
ldb_msg_element_compare_name common/ldb_msg.c + msg
ldb_msg_find_attr_as_bool common/ldb_msg.c 1 msg
ldb_msg_find_attr_as_dn common/ldb_msg.c + + + msg
ldb_msg_find_attr_as_int common/ldb_msg.c + + + kdc, auth msg
ldb_msg_find_attr_as_int64 common/ldb_msg.c + 1 msg
ldb_msg_find_attr_as_string common/ldb_msg.c + ++ + + kdc, gpo, auth, registry, winbind, utils, param msg
ldb_msg_find_attr_as_uint64 common/ldb_msg.c ++ + + msg
ldb_msg_find_attr_as_uint common/ldb_msg.c ++ + + kdc, winbind, msg
ldb_msg_find_element common/ldb_msg.c + +++ 1 + kdc, gpo, registry msg
ldb_msg_find_ldb_val common/ldb_msg.c + ++ + + kdc, gpo, auth, winbind, param msg
ldb_msg_find_val common/ldb_msg.c + kdc msg
ldb_msg_new common/ldb_msg.c ++ + + + kdc, registry, winbind, utils, param msg
ldb_msg_remove_attr common/ldb_msg.c ++ + msg
ldb_msg_remove_element common/ldb_msg.c + + msg
ldb_msg_sanity_check common/ldb_msg.c + + msg
ldb_msg_sort_elements common/ldb_msg.c + msg
ldb_next_del_trans common/ldb_modules.c + 1 next
ldb_next_end_trans common/ldb_modules.c + 1 next
ldb_next_init common/ldb_modules.c ++ + next
ldb_next_remote_request ldb_map/ldb_map.c + next
ldb_next_request common/ldb_modules.c +++ ++ next
ldb_next_start_trans common/ldb_modules.c 1 1 next
ldb_request_add_control common/ldb_controls.c 1 + 1 request
ldb_request_done common/ldb.c + ++ request
ldb_request_get_control common/ldb_controls.c 1 + + request
ldb_request_get_status common/ldb.c + request
ldb_request_set_state common/ldb.c + request
ldb_schema_attribute_add common/ldb_attributes.c + schema
ldb_schema_attribute_add_with_syntax common/ldb_attributes.c + schema
ldb_schema_attribute_by_name common/ldb_attributes.c + ++ schema
ldb_schema_attribute_remove common/ldb_attributes.c + schema
ldb_schema_attribute_set_override_handler common/ldb_attributes.c 1 schema
ldb_set_debug common/ldb_debug.c + set
ldb_set_debug_stderr common/ldb_debug.c set
ldb_set_default_dns common/ldb.c 1 1 set
ldb_set_modules_dir common/ldb_modules.c + set
ldb_set_timeout common/ldb.c + 1 + set
ldb_set_utf8_default common/ldb_utf8.c 1 set
ldb_set_utf8_fns common/ldb_utf8.c + set
ldb_string_to_time common/ldb_msg.c + + + time
ldb_string_utc_to_time common/ldb_msg.c 1 time
ldb_timestring common/ldb_msg.c + + + time
ldb_timestring_utc common/ldb_msg.c 1 time
ldb_transaction_cancel common/ldb.c ++ + + kdc, winbind, registry transaction
ldb_transaction_commit common/ldb.c + 1 + kdc, registry, winbind transaction
ldb_transaction_start common/ldb.c + 1 + kdc, registry, winbind transaction
ldb_val_dup common/ldb_msg.c + + val
ldb_val_equal_exact common/ldb_msg.c + val
ldb_valid_attr_name common/ldb_utf8.c 1 attr
ldb_val_map_local ldb_map/ldb_map.c + val
ldb_val_map_remote ldb_map/ldb_map.c + val
ldb_parse_tree common/ldb_parse.c 1 + parse
ldb_parse_tree_attr_replace common/ldb_parse.c 1 + parse
ldb_samba_syntax_by_lDAPDisplayName ldb-samba/ldif_handlers.c 1 parse
ldb_samba_syntax_by_name ldb-samba/ldif_handlers.c 1 + parse
ldb_standard_syntax_by_name common/attrib_handlers.c 1 + parse
ldb_casefold common/ldb_utf8.c + basic
ldb_cmdline_process tools/cmdline.c + misc
ldb_comparison_binary common/attrib_handlers.c + misc
ldb_connect_backend common/ldb_modules.c 1 1 misc
ldb_debug_set common/ldb_debug.c 1 + + debug
ldb_filter_from_tree common/ldb_parse.c + + + parse
ldb_handle_new common/ldb_modules.c 1 + misc
ldb_handler_copy common/attrib_handlers.c + misc
ldb_map_init ldb_map/ldb_map.c + misc
ldb_match_msg common/ldb_match.c + msg
ldb_mod_register_control common/ldb_modules.c + + misc
ldb_op_default_callback common/ldb_modules.c 1 + misc
ldb_parse_control_strings common/ldb_controls.c + misc
ldb_register_samba_handle /ldb-samba/ldif_handlers.c + scripting misc
ldb_reply_get_control common/ldb_controls.c 1 1 misc
ldb_search_default_callback common/ldb.c + 1 + gpo misc
ldb_sequence_number common/ldb.c + misc
ldb_setup_wellknown_attributes common/ldb_attributes.c + misc
ldb_wrap_connect lib/ldb_wrap.c + + + 1 gpo, auth, winbind, param, ntptr misc