/*++ Copyright (c) 1991 Microsoft Corporation Module Name: rpcclimm.c Abstract: LSA - Client RPC Memory Management Routines NOTE: These routines use windows API, so are different from their server counterparts. Author: Scott Birrell (ScottBi) May 1, 1991 Environment: Revision History: --*/ #include "lsaclip.h" /* #include // DbgPrint prototype #include // DbgPrint prototype #include // DataTypes and runtime APIs #include // generated by the MIDL complier #include // needed for windows.h #include // LocalAlloc #include // for strcpy strcat strlen memcmp */ PVOID MIDL_user_allocate ( unsigned int NumBytes ) /*++ Routine Description: Allocates storage for RPC server transactions. The RPC stubs will either call MIDL_user_allocate when it needs to un-marshall data into a buffer that the user must free. RPC servers will use MIDL_user_allocate to allocate storage that the RPC server stub will free after marshalling the data. Arguments: NumBytes - The number of bytes to allocate. Return Value: none Note: --*/ { return (LocalAlloc(LMEM_FIXED,NumBytes)); } VOID MIDL_user_free ( void *MemPointer ) /*++ Routine Description: Frees storage used in RPC transactions. The RPC client can call this function to free buffer space that was allocated by the RPC client stub when un-marshalling data that is to be returned to the client. The Client calls MIDL_user_free when it is finished with the data and desires to free up the storage. The RPC server stub calls MIDL_user_free when it has completed marshalling server data that is to be passed back to the client. Arguments: MemPointer - This points to the memory block that is to be released. Return Value: none. Note: --*/ { LocalFree(MemPointer); }