#define _RTLTYPES_H
/* DEPENDENCIES **************************************************************/
-#include "excpt.h"
-
-/* EXPORTED DATA *************************************************************/
+#include "pstypes.h"
/* CONSTANTS *****************************************************************/
#define MAXIMUM_LEADBYTES 12
#define PEB_BASE (0x7FFDF000)
+#define EXCEPTION_CHAIN_END ((PEXCEPTION_REGISTRATION_RECORD)-1)
#define EXCEPTION_CONTINUE_SEARCH 0
#define EXCEPTION_EXECUTE_HANDLER 1
#define HASH_STRING_ALGORITHM_X65599 1
#define HASH_STRING_ALGORITHM_INVALID 0xffffffff
+/* RtlDuplicateString settings */
+#define RTL_DUPLICATE_UNICODE_STRING_NULL_TERMINATE 1
+#define RTL_DUPLICATE_UNICODE_STRING_ALLOCATE_NULL_STRING 2
+
+/* For Size conversion macros */
+#define NLS_MB_CODE_PAGE_TAG NlsMbCodePageTag
+#define NLS_MB_OEM_CODE_PAGE_TAG NlsMbOemCodePageTag
+#define NLS_OEM_LEAD_BYTE_INFO NlsOemLeadByteInfo
+
+#define MAX_ATOM_LEN 255 /* TCHARS not including nullterm */
+
/* List Macros */
static __inline
VOID
/* RTL Atom Flags */
#define RTL_ATOM_IS_PINNED 0x1
+/* EXPORTED DATA *************************************************************/
+#ifdef NTOS_MODE_USER
+extern BOOLEAN NTSYSAPI NLS_MB_CODE_PAGE_TAG;
+extern BOOLEAN NTSYSAPI NLS_MB_OEM_CODE_PAGE_TAG;
+#endif
+
/* ENUMERATIONS **************************************************************/
#ifdef NTOS_MODE_USER
} DOS_PATHNAME_TYPE;
/* FUNCTION TYPES ************************************************************/
+#ifndef NTOS_MODE_USER
+typedef VOID (NTAPI *WAITORTIMERCALLBACKFUNC)(PVOID, BOOLEAN);
+
+#else
+
+typedef EXCEPTION_DISPOSITION
+(NTAPI *PEXCEPTION_ROUTINE)(
+ IN struct _EXCEPTION_RECORD *ExceptionRecord,
+ IN PVOID EstablisherFrame,
+ IN OUT struct _CONTEXT *ContextRecord,
+ IN OUT PVOID DispatcherContext
+);
+
+#endif
+
struct _RTL_AVL_TABLE;
struct _RTL_GENERIC_TABLE;
struct _RTL_RANGE;
IN PVOID UserParam
);
-typedef EXCEPTION_DISPOSITION
-(*PEXCEPTION_HANDLER)(
- struct _EXCEPTION_RECORD*,
- PVOID,
- struct _CONTEXT*,
- PVOID
-);
-
typedef LONG (NTAPI *PVECTORED_EXCEPTION_HANDLER)(
PEXCEPTION_POINTERS ExceptionPointers
);
} TIME_FIELDS, *PTIME_FIELDS;
#endif
+typedef EXCEPTION_DISPOSITION
+(*PEXCEPTION_HANDLER)(
+ struct _EXCEPTION_RECORD*,
+ PVOID,
+ struct _CONTEXT*,
+ PVOID
+);
+
typedef struct _ACE
{
ACE_HEADER Header;
} MODULE_INFORMATION, *PMODULE_INFORMATION;
/* END REVIEW AREA */
-#ifdef _INC_EXCPT
-typedef struct _EXCEPTION_REGISTRATION
+typedef struct _EXCEPTION_REGISTRATION_RECORD
{
- struct _EXCEPTION_REGISTRATION *prev;
- PEXCEPTION_HANDLER handler;
-} EXCEPTION_REGISTRATION, *PEXCEPTION_REGISTRATION;
-#endif
-
-typedef EXCEPTION_REGISTRATION EXCEPTION_REGISTRATION_RECORD;
-typedef PEXCEPTION_REGISTRATION PEXCEPTION_REGISTRATION_RECORD;
+ struct _EXCEPTION_REGISTRATION_RECORD *Next;
+ PEXCEPTION_HANDLER Handler;
+} EXCEPTION_REGISTRATION_RECORD, *PEXCEPTION_REGISTRATION_RECORD;
typedef struct _CURDIR
{