From 3c50db37b6e963491290e481aab9ee0b3268f54a Mon Sep 17 00:00:00 2001 From: Eric Kohl Date: Sun, 7 Oct 2012 17:38:16 +0000 Subject: [PATCH] [SAMSRV] Implement SamIFree_SAMPR_RETURNED_USTRING_ARRAY and SamIFree_SAMPR_ULONG_ARRAY. These functions are used to free structures that were allocated by calls to Samr-functions. svn path=/trunk/; revision=57516 --- reactos/dll/win32/samsrv/samsrv.c | 35 ++++++++++++++++++++++++++++ reactos/dll/win32/samsrv/samsrv.spec | 4 ++-- 2 files changed, 37 insertions(+), 2 deletions(-) diff --git a/reactos/dll/win32/samsrv/samsrv.c b/reactos/dll/win32/samsrv/samsrv.c index 1c6ab56e7a9..72bde202419 100644 --- a/reactos/dll/win32/samsrv/samsrv.c +++ b/reactos/dll/win32/samsrv/samsrv.c @@ -63,4 +63,39 @@ SampInitializeRegistry(VOID) return STATUS_SUCCESS; } + +VOID +NTAPI +SamIFree_SAMPR_RETURNED_USTRING_ARRAY(PSAMPR_RETURNED_USTRING_ARRAY Ptr) +{ + ULONG i; + + if (Ptr != NULL) + { + if (Ptr->Element != NULL) + { + for (i = 0; i < Ptr->Count; i++) + { + if (Ptr->Element[i].Buffer != NULL) + MIDL_user_free(Ptr->Element[i].Buffer); + } + + MIDL_user_free(Ptr->Element); + } + } +} + + +VOID +NTAPI +SamIFree_SAMPR_ULONG_ARRAY(PSAMPR_ULONG_ARRAY Ptr) +{ + if (Ptr != NULL) + { + if (Ptr->Element != NULL) + MIDL_user_free(Ptr->Element); + } + +} + /* EOF */ diff --git a/reactos/dll/win32/samsrv/samsrv.spec b/reactos/dll/win32/samsrv/samsrv.spec index 8b1922c3792..a6c9e5a50ae 100644 --- a/reactos/dll/win32/samsrv/samsrv.spec +++ b/reactos/dll/win32/samsrv/samsrv.spec @@ -10,9 +10,9 @@ @ stub SamIFree_SAMPR_GET_MEMBERS_BUFFER @ stub SamIFree_SAMPR_GROUP_INFO_BUFFER @ stub SamIFree_SAMPR_PSID_ARRAY -@ stub SamIFree_SAMPR_RETURNED_USTRING_ARRAY +@ stdcall SamIFree_SAMPR_RETURNED_USTRING_ARRAY(ptr) @ stub SamIFree_SAMPR_SR_SECURITY_DESCRIPTOR -@ stub SamIFree_SAMPR_ULONG_ARRAY +@ stdcall SamIFree_SAMPR_ULONG_ARRAY(ptr) @ stub SamIFree_SAMPR_USER_INFO_BUFFER @ stub SamIGetPrivateData @ stub SamIGetSerialNumberDomain