diff --git a/include/WinStd/Common.h b/include/WinStd/Common.h index 5b5d9980..daa42fa0 100644 --- a/include/WinStd/Common.h +++ b/include/WinStd/Common.h @@ -89,6 +89,8 @@ inline int vsnprintf(_Out_z_cap_(capacity) wchar_t *str, _In_ size_t capacity, _ template inline int vsprintf(_Out_ std::basic_string<_Elem, _Traits, _Ax> &str, _In_z_ _Printf_format_string_ const _Elem *format, _In_ va_list arg) { + assert(0); // TODO: Test this code. + _Elem buf[WINSTD_STACK_BUFFER_BYTES/sizeof(_Elem)]; // Try with stack buffer first. diff --git a/include/WinStd/Crypt.h b/include/WinStd/Crypt.h index ebf3aa58..d177462c 100644 --- a/include/WinStd/Crypt.h +++ b/include/WinStd/Crypt.h @@ -41,6 +41,8 @@ /// inline DWORD CertGetNameStringA(_In_ PCCERT_CONTEXT pCertContext, _In_ DWORD dwType, _In_ DWORD dwFlags, _In_ void *pvTypePara, _Out_ std::string &sNameString) { + assert(0); // TODO: Test this code. + // Query the final string length first. DWORD dwSize = ::CertGetNameStringA(pCertContext, dwType, dwFlags, pvTypePara, NULL, 0); @@ -59,6 +61,8 @@ inline DWORD CertGetNameStringA(_In_ PCCERT_CONTEXT pCertContext, _In_ DWORD dwT /// inline DWORD CertGetNameStringW(_In_ PCCERT_CONTEXT pCertContext, _In_ DWORD dwType, _In_ DWORD dwFlags, _In_ void *pvTypePara, _Out_ std::wstring &sNameString) { + assert(0); // TODO: Test this code. + // Query the final string length first. DWORD dwSize = ::CertGetNameStringW(pCertContext, dwType, dwFlags, pvTypePara, NULL, 0); @@ -77,6 +81,8 @@ inline DWORD CertGetNameStringW(_In_ PCCERT_CONTEXT pCertContext, _In_ DWORD dwT /// inline BOOL CryptGetHashParam(_In_ HCRYPTHASH hHash, _In_ DWORD dwParam, _Out_ std::vector &aData, _In_ DWORD dwFlags) { + assert(0); // TODO: Test this code. + DWORD dwHashSize; if (CryptGetHashParam(hHash, dwParam, NULL, &dwHashSize, dwFlags)) { @@ -97,6 +103,8 @@ inline BOOL CryptGetHashParam(_In_ HCRYPTHASH hHash, _In_ DWORD dwParam, _Out_ /// inline BOOL CryptExportKey(_In_ HCRYPTKEY hKey, _In_ HCRYPTKEY hExpKey, _In_ DWORD dwBlobType, _In_ DWORD dwFlags, _Out_ std::vector &aData) { + assert(0); // TODO: Test this code. + DWORD dwKeyBLOBSize; if (CryptExportKey(hKey, hExpKey, dwBlobType, dwFlags, NULL, &dwKeyBLOBSize)) { diff --git a/include/WinStd/MSI.h b/include/WinStd/MSI.h index 4f8ec18a..1a1acf12 100644 --- a/include/WinStd/MSI.h +++ b/include/WinStd/MSI.h @@ -41,6 +41,8 @@ /// inline UINT MsiGetPropertyA(_In_ MSIHANDLE hInstall, _In_ LPCSTR szName, _Out_ std::string &sValue) { + assert(0); // TODO: Test this code. + CHAR szStackBuffer[WINSTD_STACK_BUFFER_BYTES/sizeof(CHAR)]; DWORD dwSize = _countof(szStackBuffer); UINT uiResult; @@ -71,6 +73,8 @@ inline UINT MsiGetPropertyA(_In_ MSIHANDLE hInstall, _In_ LPCSTR szName, _Out_ s /// inline UINT MsiGetPropertyW(_In_ MSIHANDLE hInstall, _In_ LPCWSTR szName, _Out_ std::wstring &sValue) { + assert(0); // TODO: Test this code. + WCHAR szStackBuffer[WINSTD_STACK_BUFFER_BYTES/sizeof(WCHAR)]; DWORD dwSize = _countof(szStackBuffer); UINT uiResult; @@ -101,6 +105,8 @@ inline UINT MsiGetPropertyW(_In_ MSIHANDLE hInstall, _In_ LPCWSTR szName, _Out_ /// inline UINT MsiRecordGetStringA(_In_ MSIHANDLE hRecord, _In_ unsigned int iField, _Out_ std::string &sValue) { + assert(0); // TODO: Test this code. + CHAR szStackBuffer[WINSTD_STACK_BUFFER_BYTES/sizeof(CHAR)]; DWORD dwSize = _countof(szStackBuffer); UINT uiResult; @@ -131,6 +137,8 @@ inline UINT MsiRecordGetStringA(_In_ MSIHANDLE hRecord, _In_ unsigned int iField /// inline UINT MsiRecordGetStringW(_In_ MSIHANDLE hRecord, _In_ unsigned int iField, _Out_ std::wstring &sValue) { + assert(0); // TODO: Test this code. + WCHAR szStackBuffer[WINSTD_STACK_BUFFER_BYTES/sizeof(WCHAR)]; DWORD dwSize = _countof(szStackBuffer); UINT uiResult; @@ -161,6 +169,8 @@ inline UINT MsiRecordGetStringW(_In_ MSIHANDLE hRecord, _In_ unsigned int iField /// inline UINT MsiFormatRecordA(MSIHANDLE hInstall, MSIHANDLE hRecord, std::string &sValue) { + assert(0); // TODO: Test this code. + CHAR szStackBuffer[WINSTD_STACK_BUFFER_BYTES/sizeof(CHAR)]; DWORD dwSize = _countof(szStackBuffer); UINT uiResult; @@ -191,6 +201,8 @@ inline UINT MsiFormatRecordA(MSIHANDLE hInstall, MSIHANDLE hRecord, std::string /// inline UINT MsiFormatRecordW(MSIHANDLE hInstall, MSIHANDLE hRecord, std::wstring &sValue) { + assert(0); // TODO: Test this code. + WCHAR szStackBuffer[WINSTD_STACK_BUFFER_BYTES/sizeof(WCHAR)]; DWORD dwSize = _countof(szStackBuffer); UINT uiResult; @@ -221,6 +233,8 @@ inline UINT MsiFormatRecordW(MSIHANDLE hInstall, MSIHANDLE hRecord, std::wstring /// inline UINT MsiRecordReadStream(_In_ MSIHANDLE hRecord, _In_ unsigned int iField, _Out_ std::vector &binData) { + assert(0); // TODO: Test this code. + DWORD dwSize = 0; UINT uiResult; @@ -243,6 +257,8 @@ inline UINT MsiRecordReadStream(_In_ MSIHANDLE hRecord, _In_ unsigned int iField /// inline UINT MsiGetTargetPathA(_In_ MSIHANDLE hInstall, _In_ LPCSTR szFolder, _Out_ std::string &sValue) { + assert(0); // TODO: Test this code. + CHAR szStackBuffer[WINSTD_STACK_BUFFER_BYTES/sizeof(CHAR)]; DWORD dwSize = _countof(szStackBuffer); UINT uiResult; @@ -273,6 +289,8 @@ inline UINT MsiGetTargetPathA(_In_ MSIHANDLE hInstall, _In_ LPCSTR szFolder, _Ou /// inline UINT MsiGetTargetPathW(_In_ MSIHANDLE hInstall, _In_ LPCWSTR szFolder, _Out_ std::wstring &sValue) { + assert(0); // TODO: Test this code. + WCHAR szStackBuffer[WINSTD_STACK_BUFFER_BYTES/sizeof(WCHAR)]; DWORD dwSize = _countof(szStackBuffer); UINT uiResult; diff --git a/include/WinStd/Sec.h b/include/WinStd/Sec.h index f9b9fecf..77a8aec4 100644 --- a/include/WinStd/Sec.h +++ b/include/WinStd/Sec.h @@ -38,6 +38,8 @@ /// BOOLEAN GetUserNameExA(_In_ EXTENDED_NAME_FORMAT NameFormat, _Out_ std::string &sName) { + assert(0); // TODO: Test this code. + CHAR szStackBuffer[WINSTD_STACK_BUFFER_BYTES/sizeof(CHAR)]; ULONG ulSize = _countof(szStackBuffer); @@ -69,6 +71,8 @@ BOOLEAN GetUserNameExA(_In_ EXTENDED_NAME_FORMAT NameFormat, _Out_ std::string & /// BOOLEAN GetUserNameExW(_In_ EXTENDED_NAME_FORMAT NameFormat, _Out_ std::wstring &sName) { + assert(0); // TODO: Test this code. + WCHAR szStackBuffer[WINSTD_STACK_BUFFER_BYTES/sizeof(WCHAR)]; ULONG ulSize = _countof(szStackBuffer); diff --git a/include/WinStd/Shell.h b/include/WinStd/Shell.h index 7c44f289..0787e950 100644 --- a/include/WinStd/Shell.h +++ b/include/WinStd/Shell.h @@ -36,6 +36,8 @@ /// inline BOOL PathCanonicalizeA(__out std::string &sValue, __in LPCSTR pszPath) { + assert(0); // TODO: Test this code. + // Allocate buffer on heap and read into it. CHAR szBuffer[MAX_PATH + 1]; BOOL bResult = ::PathCanonicalizeA(szBuffer, pszPath); @@ -51,6 +53,8 @@ inline BOOL PathCanonicalizeA(__out std::string &sValue, __in LPCSTR pszPath) /// inline BOOL PathCanonicalizeW(__out std::wstring &sValue, __in LPCWSTR pszPath) { + assert(0); // TODO: Test this code. + WCHAR szBuffer[MAX_PATH + 1]; BOOL bResult = ::PathCanonicalizeW(szBuffer, pszPath); sValue.assign(szBuffer, bResult ? MAX_PATH : 0); diff --git a/include/WinStd/WLAN.h b/include/WinStd/WLAN.h index 78502140..4c8a8414 100644 --- a/include/WinStd/WLAN.h +++ b/include/WinStd/WLAN.h @@ -46,6 +46,8 @@ extern DWORD (WINAPI *pfnWlanReasonCodeToString)(__in DWORD dwReasonCode, __in D /// inline DWORD WlanReasonCodeToString(_In_ DWORD dwReasonCode, _Out_ std::wstring &sValue, __reserved PVOID pReserved) { + assert(0); // TODO: Test this code. + DWORD dwSize = 0; if (!::pfnWlanReasonCodeToString) diff --git a/include/WinStd/Win.h b/include/WinStd/Win.h index 66f309f0..4ce50f28 100644 --- a/include/WinStd/Win.h +++ b/include/WinStd/Win.h @@ -41,6 +41,8 @@ /// inline DWORD GetModuleFileNameA(_In_opt_ HMODULE hModule, _Out_ std::string &sValue) { + assert(0); // TODO: Test this code. + CHAR szBuffer[WINSTD_STACK_BUFFER_BYTES/sizeof(CHAR)]; // Try with stack buffer first. @@ -70,6 +72,8 @@ inline DWORD GetModuleFileNameA(_In_opt_ HMODULE hModule, _Out_ std::string &sVa /// inline DWORD GetModuleFileNameW(_In_opt_ HMODULE hModule, _Out_ std::wstring &sValue) { + assert(0); // TODO: Test this code. + WCHAR szBuffer[WINSTD_STACK_BUFFER_BYTES/sizeof(WCHAR)]; // Try with stack buffer first. @@ -99,6 +103,8 @@ inline DWORD GetModuleFileNameW(_In_opt_ HMODULE hModule, _Out_ std::wstring &sV /// inline int GetWindowTextA(_In_ HWND hWnd, _Out_ std::string &sValue) { + assert(0); // TODO: Test this code. + int iResult; // Query the final string length first. @@ -130,6 +136,8 @@ inline int GetWindowTextA(_In_ HWND hWnd, _Out_ std::string &sValue) /// inline int GetWindowTextW(_In_ HWND hWnd, _Out_ std::wstring &sValue) { + assert(0); // TODO: Test this code. + int iResult; // Query the final string length first. @@ -161,6 +169,8 @@ inline int GetWindowTextW(_In_ HWND hWnd, _Out_ std::wstring &sValue) /// inline BOOL GetFileVersionInfoA(_In_ LPCSTR lptstrFilename, __reserved DWORD dwHandle, _Out_ std::vector &aValue) { + assert(0); // TODO: Test this code. + // Get version info size. DWORD dwVerInfoSize = ::GetFileVersionInfoSizeA(lptstrFilename, &dwHandle); if (dwVerInfoSize != 0) { @@ -179,6 +189,8 @@ inline BOOL GetFileVersionInfoA(_In_ LPCSTR lptstrFilename, __reserved DWORD dwH /// inline BOOL GetFileVersionInfoW(_In_ LPCWSTR lptstrFilename, __reserved DWORD dwHandle, _Out_ std::vector &aValue) { + assert(0); // TODO: Test this code. + // Get version info size. DWORD dwVerInfoSize = ::GetFileVersionInfoSizeW(lptstrFilename, &dwHandle); if (dwVerInfoSize != 0) { @@ -197,6 +209,8 @@ inline BOOL GetFileVersionInfoW(_In_ LPCWSTR lptstrFilename, __reserved DWORD dw /// inline DWORD ExpandEnvironmentStringsW(_In_ LPCSTR lpSrc, std::string &sValue) { + assert(0); // TODO: Test this code. + for (DWORD dwSizeOut = (DWORD)strlen(lpSrc) + 0x100;;) { DWORD dwSizeIn = dwSizeOut; auto szBuffer = std::unique_ptr(new CHAR[dwSizeIn + 2]); // Note: ANSI version requires one extra char. @@ -223,6 +237,8 @@ inline DWORD ExpandEnvironmentStringsW(_In_ LPCSTR lpSrc, std::string &sValue) /// inline DWORD ExpandEnvironmentStringsW(_In_ LPCWSTR lpSrc, std::wstring &sValue) { + assert(0); // TODO: Test this code. + for (DWORD dwSizeOut = (DWORD)wcslen(lpSrc) + 0x100;;) { DWORD dwSizeIn = dwSizeOut; auto szBuffer = std::unique_ptr(new WCHAR[dwSizeIn + 1]); @@ -250,6 +266,8 @@ inline DWORD ExpandEnvironmentStringsW(_In_ LPCWSTR lpSrc, std::wstring &sValue) /// inline VOID GuidToString(_In_ LPCGUID lpGuid, _Out_ std::string &str) { + assert(0); // TODO: Test this code. + sprintf(str, "{%08X-%04X-%04X-%02X%02X-%02X%02X%02X%02X%02X%02X}", lpGuid->Data1, lpGuid->Data2, @@ -267,6 +285,8 @@ inline VOID GuidToString(_In_ LPCGUID lpGuid, _Out_ std::string &str) /// inline VOID GuidToString(_In_ LPCGUID lpGuid, _Out_ std::wstring &str) { + assert(0); // TODO: Test this code. + sprintf(str, L"{%08X-%04X-%04X-%02X%02X-%02X%02X%02X%02X%02X%02X}", lpGuid->Data1, lpGuid->Data2, @@ -296,6 +316,8 @@ inline VOID GuidToString(_In_ LPCGUID lpGuid, _Out_ std::wstring &str) /// inline LSTATUS RegQueryStringValue(_In_ HKEY hReg, _In_z_ LPCSTR pszName, _Out_ std::string &sValue) { + assert(0); // TODO: Test this code. + LSTATUS lResult; BYTE aStackBuffer[WINSTD_STACK_BUFFER_BYTES]; DWORD dwSize = sizeof(aStackBuffer), dwType; @@ -360,6 +382,8 @@ inline LSTATUS RegQueryStringValue(_In_ HKEY hReg, _In_z_ LPCSTR pszName, _Out_ /// inline LSTATUS RegQueryStringValue(_In_ HKEY hReg, _In_z_ LPCWSTR pszName, _Out_ std::wstring &sValue) { + assert(0); // TODO: Test this code. + LSTATUS lResult; BYTE aStackBuffer[WINSTD_STACK_BUFFER_BYTES]; DWORD dwSize = sizeof(aStackBuffer), dwType; @@ -411,6 +435,8 @@ inline LSTATUS RegQueryStringValue(_In_ HKEY hReg, _In_z_ LPCWSTR pszName, _Out_ /// inline LSTATUS RegQueryValueExA(_In_ HKEY hKey, _In_opt_ LPCSTR lpValueName, __reserved LPDWORD lpReserved, _Out_opt_ LPDWORD lpType, _Out_ std::vector &aData) { + assert(0); // TODO: Test this code. + LSTATUS lResult; BYTE aStackBuffer[WINSTD_STACK_BUFFER_BYTES]; DWORD dwSize = sizeof(aStackBuffer); @@ -439,6 +465,8 @@ inline LSTATUS RegQueryValueExA(_In_ HKEY hKey, _In_opt_ LPCSTR lpValueName, __r /// inline LSTATUS RegQueryValueExW(_In_ HKEY hKey, _In_opt_ LPCWSTR lpValueName, __reserved LPDWORD lpReserved, _Out_opt_ LPDWORD lpType, _Out_ std::vector &aData) { + assert(0); // TODO: Test this code. + LSTATUS lResult; BYTE aStackBuffer[WINSTD_STACK_BUFFER_BYTES]; DWORD dwSize = sizeof(aStackBuffer); @@ -469,6 +497,8 @@ inline LSTATUS RegQueryValueExW(_In_ HKEY hKey, _In_opt_ LPCWSTR lpValueName, __ /// inline LSTATUS RegLoadMUIStringA(_In_ HKEY hKey, _In_opt_ LPCSTR pszValue, _Out_ std::string &sOut, _In_ DWORD Flags, _In_opt_ LPCSTR pszDirectory) { + assert(0); // TODO: Test this code. + LSTATUS lResult; CHAR szStackBuffer[WINSTD_STACK_BUFFER_BYTES/sizeof(CHAR)]; DWORD dwSize; @@ -497,6 +527,8 @@ inline LSTATUS RegLoadMUIStringA(_In_ HKEY hKey, _In_opt_ LPCSTR pszValue, _Out_ /// inline LSTATUS RegLoadMUIStringW(_In_ HKEY hKey, _In_opt_ LPCWSTR pszValue, _Out_ std::wstring &sOut, _In_ DWORD Flags, _In_opt_ LPCWSTR pszDirectory) { + assert(0); // TODO: Test this code. + LSTATUS lResult; WCHAR szStackBuffer[WINSTD_STACK_BUFFER_BYTES/sizeof(WCHAR)]; DWORD dwSize;