2 * PROJECT: .inf file parser
3 * LICENSE: GPL - See COPYING in the top level directory
4 * COPYRIGHT: Copyright 2005 Ge van Geldorp <gvg@reactos.org>
9 /* Definitions native to the host on which we're building */
11 #include <host/typedefs.h>
18 #define FREE(Area) free(Area)
19 #define MALLOC(Size) malloc((size_t)(Size))
20 #define ZEROMEMORY(Area, Size) memset((Area), '\0', (size_t)(Size))
21 #define MEMCPY(Dest, Src, Size) memcpy((Dest), (Src), (size_t)(Size))
23 #define STATUS_SUCCESS 0
24 #define INF_STATUS_SUCCESS 0
25 #define INF_STATUS_NO_MEMORY ENOMEM
26 #define INF_STATUS_INVALID_PARAMETER EINVAL
27 #define INF_STATUS_NOT_FOUND ENOENT
28 #define INF_STATUS_BUFFER_OVERFLOW E2BIG
29 #define INF_SUCCESS(x) (0 == (x))
31 typedef char TCHAR
, *PTCHAR
, *PTSTR
;
32 typedef const TCHAR
*PCTSTR
;
35 #define _tcsicmp strcasecmp
36 #define _tcslen strlen
37 #define _tcscpy strcpy
38 #define _tcstoul strtoul
39 #define _tcstol strtol
43 #define strcasecmp _stricmp
46 #define IS_TEXT_UNICODE_ASCII16 1
47 #define IS_TEXT_UNICODE_REVERSE_ASCII16 16
48 #define IS_TEXT_UNICODE_STATISTICS 2
49 #define IS_TEXT_UNICODE_REVERSE_STATISTICS 32
50 #define IS_TEXT_UNICODE_CONTROLS 4
51 #define IS_TEXT_UNICODE_REVERSE_CONTROLS 64
52 #define IS_TEXT_UNICODE_SIGNATURE 8
53 #define IS_TEXT_UNICODE_REVERSE_SIGNATURE 128
54 #define IS_TEXT_UNICODE_ILLEGAL_CHARS 256
55 #define IS_TEXT_UNICODE_ODD_LENGTH 512
56 #define IS_TEXT_UNICODE_NULL_BYTES 4096
57 #define IS_TEXT_UNICODE_UNICODE_MASK 15
58 #define IS_TEXT_UNICODE_REVERSE_MASK 240
59 #define IS_TEXT_UNICODE_NOT_UNICODE_MASK 3840
60 #define IS_TEXT_UNICODE_NOT_ASCII_MASK 61440
62 #else /* ! defined(INFLIB_HOST) */
64 /* ReactOS definitions */
68 #define WIN32_NO_STATUS
70 #define NTOS_MODE_USER
71 #include <ndk/ntndk.h>
74 extern PVOID InfpHeap
;
76 #define FREE(Area) RtlFreeHeap(InfpHeap, 0, (Area))
77 #define MALLOC(Size) RtlAllocateHeap(InfpHeap, 0, (Size))
78 #define ZEROMEMORY(Area, Size) RtlZeroMemory((Area), (Size))
79 #define MEMCPY(Dest, Src, Size) RtlCopyMemory((Dest), (Src), (Size))
81 #define INF_STATUS_SUCCESS STATUS_SUCCESS
82 #define INF_STATUS_NO_MEMORY STATUS_NO_MEMORY
83 #define INF_STATUS_INVALID_PARAMETER STATUS_INVALID_PARAMETER
84 #define INF_STATUS_NOT_FOUND STATUS_NOT_FOUND
85 #define INF_STATUS_BUFFER_OVERFLOW STATUS_BUFFER_OVERFLOW
86 #define INF_SUCCESS(x) (0 <= (x))
90 #endif /* INFLIB_HOST */