void windows_plugin_init(Repl_Agmt *ra) { void *cookie = NULL; winsync_plugin_init_cb initfunc = NULL; LDAPDebug0Args( LDAP_DEBUG_PLUGIN, "--> windows_plugin_init_start -- begin\n"); /* if the function pointer array is null, get the functions - we will call init once per replication agreement, but will only grab the api once */ if(NULL == _WinSyncAPI) { if (slapi_apib_get_interface(WINSYNC_v2_0_GUID, &_WinSyncAPI) || (NULL == _WinSyncAPI)) { LDAPDebug1Arg( LDAP_DEBUG_PLUGIN, "<-- windows_plugin_init_start -- no windows plugin API registered for GUID [%s] -- end\n", WINSYNC_v2_0_GUID); } else if (_WinSyncAPI) { LDAPDebug1Arg( LDAP_DEBUG_PLUGIN, "<-- windows_plugin_init_start -- found windows plugin API registered for GUID [%s] -- end\n", WINSYNC_v2_0_GUID); maxapiidx = WINSYNC_PLUGIN_VERSION_2_END; } } if (NULL == _WinSyncAPI) { /* no v2 interface - look for v1 */ if (slapi_apib_get_interface(WINSYNC_v1_0_GUID, &_WinSyncAPI) || (NULL == _WinSyncAPI)) { LDAPDebug1Arg( LDAP_DEBUG_PLUGIN, "<-- windows_plugin_init_start -- no windows plugin API registered for GUID [%s] -- end\n", WINSYNC_v1_0_GUID); return; } else { LDAPDebug1Arg( LDAP_DEBUG_PLUGIN, "<-- windows_plugin_init_start -- found windows plugin API registered for GUID [%s] -- end\n", WINSYNC_v1_0_GUID); } } initfunc = (winsync_plugin_init_cb)_WinSyncAPI[WINSYNC_PLUGIN_INIT_CB]; if (initfunc) { cookie = (*initfunc)(windows_private_get_directory_subtree(ra), windows_private_get_windows_subtree(ra)); } windows_private_set_api_cookie(ra, cookie); LDAPDebug0Args( LDAP_DEBUG_PLUGIN, "<-- windows_plugin_init_start -- end\n"); return; }
void repl_session_plugin_init() { /* If the function pointer array is null, get the functions. * We will only grab the api once. */ if((NULL == _ReplSessionAPI) && (slapi_apib_get_interface(REPL_SESSION_v1_0_GUID, &_ReplSessionAPI) || (NULL == _ReplSessionAPI))) { slapi_log_err(SLAPI_LOG_PLUGIN, repl_plugin_name, "repl_session_plugin_init - No replication session" " plugin API registered for GUID [%s] -- end\n", REPL_SESSION_v1_0_GUID); } return; }