1 /* 2 * PROJECT: ReactOS kernel-mode tests 3 * LICENSE: LGPL-2.1+ (https://spdx.org/licenses/LGPL-2.1+) 4 * PURPOSE: Kernel-Mode Test Suite stub functions for any-IRQL vsnprintf 5 * COPYRIGHT: Copyright 2011-2018 Thomas Faber <thomas.faber@reactos.org> 6 */ 7 8 #undef wctomb 9 #include <stdarg.h> 10 #include <stdio.h> 11 #include <wchar.h> 12 13 int __cdecl KmtWcToMb(char *mbchar, wchar_t wchar) 14 { 15 *mbchar = (char)wchar; 16 return 1; 17 } 18 19 int __cdecl streamout(FILE *stream, const char *format, va_list argptr); 20 21 int __cdecl KmtVSNPrintF(char *buffer, size_t count, const char *format, va_list argptr) 22 { 23 int result; 24 FILE stream; 25 26 stream._base = (char *)buffer; 27 stream._ptr = stream._base; 28 stream._charbuf = 0; 29 stream._cnt = (int)count; 30 stream._bufsiz = 0; 31 stream._flag = _IOSTRG | _IOWRT; 32 stream._tmpfname = 0; 33 34 result = streamout(&stream, format, argptr); 35 36 /* Only zero terminate if there is enough space left */ 37 if (stream._cnt) *(char *)stream._ptr = '\0'; 38 39 return result; 40 } 41