X-Git-Url: https://git.proxmox.com/?a=blobdiff_plain;f=CryptoPkg%2FLibrary%2FInclude%2FCrtLibSupport.h;fp=CryptoPkg%2FLibrary%2FInclude%2FCrtLibSupport.h;h=d257dca8fa9b03b043f8f026fae5a2a2eff22462;hb=7c342378317039e632d9a1a5d4cf7c21aec8cb7a;hp=17d7f29ba20e006ca0e8dbdab6d66c10481753be;hpb=2b16a4fb91b9b31c0d152588f5ac51080c6c0763;p=mirror_edk2.git diff --git a/CryptoPkg/Library/Include/CrtLibSupport.h b/CryptoPkg/Library/Include/CrtLibSupport.h index 17d7f29ba2..d257dca8fa 100644 --- a/CryptoPkg/Library/Include/CrtLibSupport.h +++ b/CryptoPkg/Library/Include/CrtLibSupport.h @@ -16,8 +16,8 @@ SPDX-License-Identifier: BSD-2-Clause-Patent #include #include -#define OPENSSLDIR "" -#define ENGINESDIR "" +#define OPENSSLDIR "" +#define ENGINESDIR "" #define MAX_STRING_SIZE 0x1000 @@ -39,50 +39,50 @@ SPDX-License-Identifier: BSD-2-Clause-Patent // define our own here. // #ifdef CONFIG_HEADER_BN_H -#error CONFIG_HEADER_BN_H already defined + #error CONFIG_HEADER_BN_H already defined #endif #define CONFIG_HEADER_BN_H -#if !defined(SIXTY_FOUR_BIT) && !defined (THIRTY_TWO_BIT) -#if defined(MDE_CPU_X64) || defined(MDE_CPU_AARCH64) || defined(MDE_CPU_IA64) || defined(MDE_CPU_RISCV64) +#if !defined (SIXTY_FOUR_BIT) && !defined (THIRTY_TWO_BIT) + #if defined (MDE_CPU_X64) || defined (MDE_CPU_AARCH64) || defined (MDE_CPU_IA64) || defined (MDE_CPU_RISCV64) // // With GCC we would normally use SIXTY_FOUR_BIT_LONG, but MSVC needs // SIXTY_FOUR_BIT, because 'long' is 32-bit and only 'long long' is // 64-bit. Since using 'long long' works fine on GCC too, just do that. // #define SIXTY_FOUR_BIT -#elif defined(MDE_CPU_IA32) || defined(MDE_CPU_ARM) || defined(MDE_CPU_EBC) + #elif defined (MDE_CPU_IA32) || defined (MDE_CPU_ARM) || defined (MDE_CPU_EBC) #define THIRTY_TWO_BIT -#else -#error Unknown target architecture -#endif + #else + #error Unknown target architecture + #endif #endif // // Map all va_xxxx elements to VA_xxx defined in MdePkg/Include/Base.h // -#if !defined(__CC_ARM) // if va_list is not already defined +#if !defined (__CC_ARM) // if va_list is not already defined #define va_list VA_LIST #define va_arg VA_ARG #define va_start VA_START #define va_end VA_END #else // __CC_ARM -#define va_start(Marker, Parameter) __va_start(Marker, Parameter) -#define va_arg(Marker, TYPE) __va_arg(Marker, TYPE) -#define va_end(Marker) ((void)0) +#define va_start(Marker, Parameter) __va_start(Marker, Parameter) +#define va_arg(Marker, TYPE) __va_arg(Marker, TYPE) +#define va_end(Marker) ((void)0) #endif // // Definitions for global constants used by CRT library routines // -#define EINVAL 22 /* Invalid argument */ -#define EAFNOSUPPORT 47 /* Address family not supported by protocol family */ -#define INT_MAX 0x7FFFFFFF /* Maximum (signed) int value */ -#define LONG_MAX 0X7FFFFFFFL /* max value for a long */ -#define LONG_MIN (-LONG_MAX-1) /* min value for a long */ -#define ULONG_MAX 0xFFFFFFFF /* Maximum unsigned long value */ -#define CHAR_BIT 8 /* Number of bits in a char */ +#define EINVAL 22 /* Invalid argument */ +#define EAFNOSUPPORT 47 /* Address family not supported by protocol family */ +#define INT_MAX 0x7FFFFFFF /* Maximum (signed) int value */ +#define LONG_MAX 0X7FFFFFFFL /* max value for a long */ +#define LONG_MIN (-LONG_MAX-1) /* min value for a long */ +#define ULONG_MAX 0xFFFFFFFF /* Maximum unsigned long value */ +#define CHAR_BIT 8 /* Number of bits in a char */ // // Address families. @@ -100,124 +100,316 @@ SPDX-License-Identifier: BSD-2-Clause-Patent // // Basic types mapping // -typedef UINTN size_t; -typedef UINTN u_int; -typedef INTN ptrdiff_t; -typedef INTN ssize_t; -typedef INT32 time_t; -typedef UINT8 __uint8_t; -typedef UINT8 sa_family_t; -typedef UINT8 u_char; -typedef UINT32 uid_t; -typedef UINT32 gid_t; -typedef CHAR16 wchar_t; +typedef UINTN size_t; +typedef UINTN u_int; +typedef INTN ptrdiff_t; +typedef INTN ssize_t; +typedef INT32 time_t; +typedef UINT8 __uint8_t; +typedef UINT8 sa_family_t; +typedef UINT8 u_char; +typedef UINT32 uid_t; +typedef UINT32 gid_t; +typedef CHAR16 wchar_t; // // File operations are not required for EFI building, // so FILE is mapped to VOID * to pass build // -typedef VOID *FILE; +typedef VOID *FILE; // // Structures Definitions // struct tm { - int tm_sec; /* seconds after the minute [0-60] */ - int tm_min; /* minutes after the hour [0-59] */ - int tm_hour; /* hours since midnight [0-23] */ - int tm_mday; /* day of the month [1-31] */ - int tm_mon; /* months since January [0-11] */ - int tm_year; /* years since 1900 */ - int tm_wday; /* days since Sunday [0-6] */ - int tm_yday; /* days since January 1 [0-365] */ - int tm_isdst; /* Daylight Savings Time flag */ - long tm_gmtoff; /* offset from CUT in seconds */ - char *tm_zone; /* timezone abbreviation */ + int tm_sec; /* seconds after the minute [0-60] */ + int tm_min; /* minutes after the hour [0-59] */ + int tm_hour; /* hours since midnight [0-23] */ + int tm_mday; /* day of the month [1-31] */ + int tm_mon; /* months since January [0-11] */ + int tm_year; /* years since 1900 */ + int tm_wday; /* days since Sunday [0-6] */ + int tm_yday; /* days since January 1 [0-365] */ + int tm_isdst; /* Daylight Savings Time flag */ + long tm_gmtoff; /* offset from CUT in seconds */ + char *tm_zone; /* timezone abbreviation */ }; struct timeval { - long tv_sec; /* time value, in seconds */ - long tv_usec; /* time value, in microseconds */ + long tv_sec; /* time value, in seconds */ + long tv_usec; /* time value, in microseconds */ }; struct sockaddr { - __uint8_t sa_len; /* total length */ - sa_family_t sa_family; /* address family */ - char sa_data[14]; /* actually longer; address value */ + __uint8_t sa_len; /* total length */ + sa_family_t sa_family; /* address family */ + char sa_data[14]; /* actually longer; address value */ }; // // Global variables // -extern int errno; -extern FILE *stderr; +extern int errno; +extern FILE *stderr; // // Function prototypes of CRT Library routines // -void *malloc (size_t); -void *realloc (void *, size_t); -void free (void *); -void *memset (void *, int, size_t); -int memcmp (const void *, const void *, size_t); -int isdigit (int); -int isspace (int); -int isxdigit (int); -int isalnum (int); -int isupper (int); -int tolower (int); -int strcmp (const char *, const char *); -int strncasecmp (const char *, const char *, size_t); -char *strchr (const char *, int); -char *strrchr (const char *, int); -unsigned long strtoul (const char *, char **, int); -long strtol (const char *, char **, int); -char *strerror (int); -size_t strspn (const char *, const char *); -size_t strcspn (const char *, const char *); -int printf (const char *, ...); -int sscanf (const char *, const char *, ...); -FILE *fopen (const char *, const char *); -size_t fread (void *, size_t, size_t, FILE *); -size_t fwrite (const void *, size_t, size_t, FILE *); -int fclose (FILE *); -int fprintf (FILE *, const char *, ...); -time_t time (time_t *); -struct tm *gmtime (const time_t *); -uid_t getuid (void); -uid_t geteuid (void); -gid_t getgid (void); -gid_t getegid (void); -int issetugid (void); -void qsort (void *, size_t, size_t, int (*)(const void *, const void *)); -char *getenv (const char *); -char *secure_getenv (const char *); -#if defined(__GNUC__) && (__GNUC__ >= 2) -void abort (void) __attribute__((__noreturn__)); +void * +malloc ( + size_t + ); + +void * +realloc ( + void *, + size_t + ); + +void +free ( + void * + ); + +void * +memset ( + void *, + int, + size_t + ); + +int +memcmp ( + const void *, + const void *, + size_t + ); + +int +isdigit ( + int + ); + +int +isspace ( + int + ); + +int +isxdigit ( + int + ); + +int +isalnum ( + int + ); + +int +isupper ( + int + ); + +int +tolower ( + int + ); + +int +strcmp ( + const char *, + const char * + ); + +int +strncasecmp ( + const char *, + const char *, + size_t + ); + +char * +strchr ( + const char *, + int + ); + +char * +strrchr ( + const char *, + int + ); + +unsigned long +strtoul ( + const char *, + char **, + int + ); + +long +strtol ( + const char *, + char **, + int + ); + +char * +strerror ( + int + ); + +size_t +strspn ( + const char *, + const char * + ); + +size_t +strcspn ( + const char *, + const char * + ); + +int +printf ( + const char *, + ... + ); + +int +sscanf ( + const char *, + const char *, + ... + ); + +FILE * +fopen ( + const char *, + const char * + ); + +size_t +fread ( + void *, + size_t, + size_t, + FILE * + ); + +size_t +fwrite ( + const void *, + size_t, + size_t, + FILE * + ); + +int +fclose ( + FILE * + ); + +int +fprintf ( + FILE *, + const char *, + ... + ); + +time_t +time ( + time_t * + ); + +struct tm * +gmtime ( + const time_t * + ); + +uid_t +getuid ( + void + ); + +uid_t +geteuid ( + void + ); + +gid_t +getgid ( + void + ); + +gid_t +getegid ( + void + ); + +int +issetugid ( + void + ); + +void +qsort ( + void *, + size_t, + size_t, + int (*)(const void *, const void *) + ); + +char * +getenv ( + const char * + ); + +char * +secure_getenv ( + const char * + ); + +#if defined (__GNUC__) && (__GNUC__ >= 2) +void +abort ( + void + ) __attribute__ ((__noreturn__)); + #else -void abort (void); +void +abort ( + void + ); + #endif -int inet_pton (int, const char *, void *); +int +inet_pton ( + int, + const char *, + void * + ); // // Macros that directly map functions to BaseLib, BaseMemoryLib, and DebugLib functions // -#define memcpy(dest,source,count) CopyMem(dest,source,(UINTN)(count)) -#define memset(dest,ch,count) SetMem(dest,(UINTN)(count),(UINT8)(ch)) -#define memchr(buf,ch,count) ScanMem8(buf,(UINTN)(count),(UINT8)ch) -#define memcmp(buf1,buf2,count) (int)(CompareMem(buf1,buf2,(UINTN)(count))) -#define memmove(dest,source,count) CopyMem(dest,source,(UINTN)(count)) -#define strlen(str) (size_t)(AsciiStrnLenS(str,MAX_STRING_SIZE)) -#define strcpy(strDest,strSource) AsciiStrCpyS(strDest,MAX_STRING_SIZE,strSource) -#define strncpy(strDest,strSource,count) AsciiStrnCpyS(strDest,MAX_STRING_SIZE,strSource,(UINTN)count) -#define strcat(strDest,strSource) AsciiStrCatS(strDest,MAX_STRING_SIZE,strSource) -#define strncmp(string1,string2,count) (int)(AsciiStrnCmp(string1,string2,(UINTN)(count))) -#define strcasecmp(str1,str2) (int)AsciiStriCmp(str1,str2) -#define sprintf(buf,...) AsciiSPrint(buf,MAX_STRING_SIZE,__VA_ARGS__) -#define localtime(timer) NULL +#define memcpy(dest, source, count) CopyMem(dest,source,(UINTN)(count)) +#define memset(dest, ch, count) SetMem(dest,(UINTN)(count),(UINT8)(ch)) +#define memchr(buf, ch, count) ScanMem8(buf,(UINTN)(count),(UINT8)ch) +#define memcmp(buf1, buf2, count) (int)(CompareMem(buf1,buf2,(UINTN)(count))) +#define memmove(dest, source, count) CopyMem(dest,source,(UINTN)(count)) +#define strlen(str) (size_t)(AsciiStrnLenS(str,MAX_STRING_SIZE)) +#define strcpy(strDest, strSource) AsciiStrCpyS(strDest,MAX_STRING_SIZE,strSource) +#define strncpy(strDest, strSource, count) AsciiStrnCpyS(strDest,MAX_STRING_SIZE,strSource,(UINTN)count) +#define strcat(strDest, strSource) AsciiStrCatS(strDest,MAX_STRING_SIZE,strSource) +#define strncmp(string1, string2, count) (int)(AsciiStrnCmp(string1,string2,(UINTN)(count))) +#define strcasecmp(str1, str2) (int)AsciiStriCmp(str1,str2) +#define sprintf(buf, ...) AsciiSPrint(buf,MAX_STRING_SIZE,__VA_ARGS__) +#define localtime(timer) NULL #define assert(expression) -#define offsetof(type,member) OFFSET_OF(type,member) -#define atoi(nptr) AsciiStrDecimalToUintn(nptr) -#define gettimeofday(tvp,tz) do { (tvp)->tv_sec = time(NULL); (tvp)->tv_usec = 0; } while (0) +#define offsetof(type, member) OFFSET_OF(type,member) +#define atoi(nptr) AsciiStrDecimalToUintn(nptr) +#define gettimeofday(tvp, tz) do { (tvp)->tv_sec = time(NULL); (tvp)->tv_usec = 0; } while (0) #endif