return result;
}
+static void free_private_data(void **vp)
+{
+ struct nisplus_private_info **private = (struct nisplus_private_info **)vp;
+
+ if ((*private)->result) {
+ nis_freeresult ((*private)->result);
+ }
+
+ free(*private);
+
+ /* No need to free any further, as it is talloc()ed */
+}
+
NTSTATUS pdb_init_nisplussam (PDB_CONTEXT * pdb_context,
PDB_METHODS ** pdb_method, const char *location)
{
(*pdb_method)->add_sam_account = nisplussam_add_sam_account;
(*pdb_method)->update_sam_account = nisplussam_update_sam_account;
(*pdb_method)->delete_sam_account = nisplussam_delete_sam_account;
+ (*pdb_method)->free_private_data = free_private_data;
(*pdb_method)->private_data = private;
return NT_STATUS_OK;