2025-04-27 07:49:33 -04:00

68 lines
1.0 KiB
C

/*++
Copyright (c) 1997 Microsoft Corporation
Module Name:
stack.c
Abstract:
This provides a generic stack handler to push/pop things onto it
Author:
Stephane Plante (splante)
Environment:
User, Kernel
--*/
#ifndef _STACK_H_
#define _STACK_H_
NTSTATUS
StackAllocate(
OUT PSTACK *Stack,
IN ULONG StackElementSize
);
NTSTATUS
StackFree(
IN OUT PSTACK *Stack
);
NTSTATUS
StackParent(
IN OUT PSTACK *Stack,
IN PVOID Child,
OUT PVOID Parent
);
NTSTATUS
StackPop(
IN OUT PSTACK *Stack
);
NTSTATUS
StackPush(
IN OUT PSTACK *Stack,
OUT PVOID StackElement
);
NTSTATUS
StackRoot(
IN OUT PSTACK *Stack,
OUT PVOID RootElement
);
NTSTATUS
StackTop(
IN OUT PSTACK *Stack,
OUT PVOID TopElement
);
#endif