diff --git a/include/ntapi/nt_string.h b/include/ntapi/nt_string.h index 10a413b..1a6a451 100644 --- a/include/ntapi/nt_string.h +++ b/include/ntapi/nt_string.h @@ -21,6 +21,17 @@ typedef int __cdecl ntapi_snprintf( const char * format, ...); +typedef int __cdecl ntapi_vsprintf( + char * buffer, + const char * format, + va_list ap); + +typedef int __cdecl ntapi_vsnprintf( + char * buffer, + size_t size, + const char * format, + va_list ap); + typedef size_t __cdecl ntapi_strlen(const char * str); diff --git a/include/ntapi/ntapi.h b/include/ntapi/ntapi.h index 3d3d4de..b596f32 100644 --- a/include/ntapi/ntapi.h +++ b/include/ntapi/ntapi.h @@ -363,6 +363,8 @@ typedef struct _ntapi_vtbl { ntapi_memset * memset; ntapi_sprintf * sprintf; ntapi_snprintf * snprintf; + ntapi_vsprintf * vsprintf; + ntapi_vsnprintf * vsnprintf; /* imported symbols: tail */ /* alternate implementation */ diff --git a/src/internal/ntapi_hash_table.h b/src/internal/ntapi_hash_table.h index 1eacf88..2dad1ad 100644 --- a/src/internal/ntapi_hash_table.h +++ b/src/internal/ntapi_hash_table.h @@ -133,9 +133,11 @@ {0x78327b0d, (173)}, /* ZwSetVolumeInformationFile */ \ {0x78a28538, (80)}, /* ZwAdjustPrivilegesToken */ \ {0x7b9f9b64, (182)}, /* ZwOpenKey */ \ + {0x7c868d67, (252)}, /* _vsnprintf */ \ {0x7ccd8968, (138)}, /* ZwCompleteConnectPort */ \ {0x7dfb3677, (169)}, /* ZwSetEaFile */ \ {0x7e21039a, (87)}, /* ZwCreateTimer */ \ + {0x7e92a7a6, (251)}, /* vsprintf */ \ {0x7ec723c2, (122)}, /* ZwQueryPerformanceCounter */ \ {0x7f99ab33, (145)}, /* ZwReadRequestData */ \ {0x81b18dcd, (21)}, /* ZwQueryVirtualMemory */ \ @@ -262,6 +264,6 @@ {0xf425639c, (104)}, /* ZwOpenMutant */ \ {0xfde47817, (94)}, /* ZwSetEvent */ \ -#define __NT_IMPORTED_SYMBOLS_ARRAY_SIZE 251 +#define __NT_IMPORTED_SYMBOLS_ARRAY_SIZE 253 #endif