diff options
Diffstat (limited to 'src/VBox/Devices/EFI/Firmware/MdeModulePkg/Universal/RegularExpressionDxe/OnigurumaUefiPort.h')
-rw-r--r-- | src/VBox/Devices/EFI/Firmware/MdeModulePkg/Universal/RegularExpressionDxe/OnigurumaUefiPort.h | 104 |
1 files changed, 104 insertions, 0 deletions
diff --git a/src/VBox/Devices/EFI/Firmware/MdeModulePkg/Universal/RegularExpressionDxe/OnigurumaUefiPort.h b/src/VBox/Devices/EFI/Firmware/MdeModulePkg/Universal/RegularExpressionDxe/OnigurumaUefiPort.h new file mode 100644 index 00000000..8bf2b4b7 --- /dev/null +++ b/src/VBox/Devices/EFI/Firmware/MdeModulePkg/Universal/RegularExpressionDxe/OnigurumaUefiPort.h @@ -0,0 +1,104 @@ +/** @file + + Module to rewrite stdlib references within Oniguruma + + (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP<BR> + Copyright (c) 2020, Intel Corporation. All rights reserved.<BR> + + SPDX-License-Identifier: BSD-2-Clause-Patent +**/ +#ifndef ONIGURUMA_UEFI_PORT_H +#define ONIGURUMA_UEFI_PORT_H + +#include <Library/MemoryAllocationLib.h> +#include <Library/PrintLib.h> +#include <Library/BaseMemoryLib.h> +#include <Library/BaseLib.h> +#include <Library/DebugLib.h> + + +#define ONIG_NO_STANDARD_C_HEADERS +#define ONIG_NO_PRINT +#define P_(args) args + +#define INT_MAX 0x7FFFFFFF +#define LONG_MAX 0x7FFFFFFF +#define UINT_MAX 0xFFFFFFFF +#define ULONG_MAX 0xFFFFFFFF + + +#define SIZEOF_LONG 4 +#define SIZEOF_LONG_LONG 8 +typedef UINTN size_t; +typedef UINT32 uint32_t; +typedef INTN intptr_t; + +#ifndef offsetof +#define offsetof OFFSET_OF +#endif + +#ifdef MDE_CPU_IA32 +#define SIZEOF_VOIDP 4 +#endif + +#ifdef MDE_CPU_X64 +#define SIZEOF_VOIDP 8 +#endif + +#define calloc(n,s) AllocateZeroPool((n)*(s)) + +#define free(p) \ + do { \ + VOID *EvalOnce; \ + \ + EvalOnce = (p); \ + if (EvalOnce != NULL) { \ + FreePool (EvalOnce); \ + } \ + } while (FALSE) + +#define xmemmove(Dest,Src,Length) CopyMem(Dest,Src,Length) +#define xmemcpy(Dest,Src,Length) CopyMem(Dest,Src,Length) +#define xmemset(Buffer,Value,Length) SetMem(Buffer,Length,Value) + +#define va_init_list(a,b) VA_START(a,b) +#define va_list VA_LIST +#define va_arg(a,b) VA_ARG(a,b) +#define va_end(a) VA_END(a) +#define va_start VA_START + +#define FILE VOID +#define stdout NULL +#define fprintf(...) +#define fputs(a,b) +#define vsnprintf (int)AsciiVSPrint +#define _vsnprintf vsnprintf +#define xsnprintf sprintf_s +#define xvsnprintf vsnprintf +#define alloca malloc + +#define setlocale(a,b) +#define LC_ALL 0 + +#define UCHAR_MAX 255 +#define MAX_STRING_SIZE 0x1000 +#define strlen_s(String,MaxSize) AsciiStrnLenS (String, MaxSize) +#define xstrncpy(Dest, Src, MaxSize) strcat_s(Dest,MaxSize,Src) +#define xstrcat(Dest,Src,MaxSize) strcat(Dest,Src,MaxSize) +#define strcat(Dest,Src,MaxSize) strcat_s(Dest,MaxSize,Src) +#define strcat_s(Dest,MaxSize,Src) AsciiStrCatS (Dest, MaxSize, Src) +#define strncpy_s(Dest,MaxSize,Src,Length) AsciiStrnCpyS (Dest, MaxSize, Src, Length) +#define strcmp OnigStrCmp + +int OnigStrCmp (const char* Str1, const char* Str2); + +int EFIAPI sprintf_s (char *str, size_t sizeOfBuffer, char const *fmt, ...); +int strlen(const char* str); +void* malloc(size_t size); +void* realloc(void *ptr, size_t size); +void* memcpy (void *dest, const void *src, unsigned int count); +void* memset (void *dest, char ch, unsigned int count); + +#define exit(n) ASSERT(FALSE); + +#endif // !ONIGURUMA_UEFI_PORT_H |