|
|
// Copyright (c) 1997-2002 Microsoft Corporation
//
// Module:
//
// Safe string function wrappers and implementation for Networking/IPsec
// nsustring.h
//
// Abstract:
//
// Wrappers for strsafe.h and safe string functions
//
// Author:
//
// RaymondS 1 February-2002
//
// Environment:
//
// User mode
//
// Revision History:
//
#pragma once
#ifndef __NSUSTRING_H__
#define __NSUSTRING_H_
#include "Nsu.h"
#ifdef __cplusplus
extern "C" { #endif
// (strsafe.h written by Reiner Fink)
#ifdef UNICODE
#define NsuStringCopy NsuStringCopyW
#define NsuStringDup NsuStringDupW
#define NsuStringCat NsuStringCatW
#define NsuStringSprint NsuStringSprintW
#define NsuStringSprintFailSafe NsuStringSprintFailSafeW
#define NsuStringVSprintFailSafe NsuStringVSprintFailSafeW
#define NsuStringLen NsuStringLenW
#define NsuStringFind NsuStringFindW
#else
#define NsuStringCopy NsuStringCopyA
#define NsuStringDup NsuStringDupA
#define NsuStringCat NsuStringCatA
#define NsuStringSprint NsuStringSprintA
#define NsuStringSprintFailSafe NsuStringSprintFailSafeA
#define NsuStringVSprintFailSafe NsuStringVSprintFailSafeA
#define NsuStringLen NsuStringLenA
#define NsuStringFind NsuStringFindA
#endif
DWORD WINAPI NsuStringCopyW( OUT LPWSTR pszDest, IN size_t cchDest, IN LPCWSTR pszSrc );
DWORD WINAPI NsuStringCopyA( OUT LPSTR pszDest, IN size_t cchDest, IN LPCSTR pszSrc );
DWORD WINAPI NsuStringCopyAtoWAlloc( OUT LPWSTR* ppszDest, IN size_t cchLimit, IN LPCSTR pszSrc );
DWORD WINAPI NsuStringCopyWtoAAlloc( OUT LPSTR* ppszDest, IN size_t cbLimit, IN LPCWSTR pszSrc );
DWORD WINAPI NsuStringCopyWtoA( OUT LPSTR pszDest, IN size_t cbDest, IN LPCWSTR pszSrc );
DWORD WINAPI NsuStringCopyAtoW( OUT LPWSTR pszDest, IN size_t cchDest, IN LPCSTR pszSrc ); DWORD WINAPI NsuStringDupW( OUT LPWSTR* ppszDest, IN size_t cchLimit, IN LPCWSTR pszSrc );
DWORD WINAPI NsuStringDupA( OUT LPSTR* ppszDest, IN size_t cchLimit, IN LPCSTR pszSrc );
DWORD WINAPI NsuStringCatW( OUT LPWSTR pszDest, IN size_t cchDest, IN LPCWSTR pszSrc );
DWORD WINAPI NsuStringCatA( OUT LPSTR pszDest, IN size_t cchDest, IN LPCSTR pszSrc );
DWORD WINAPI NsuStringSprintW( OUT LPWSTR pszDest, IN size_t cchDest, IN LPCWSTR pszFormat, ... );
DWORD WINAPI NsuStringSprintA( OUT LPSTR pszDest, IN size_t cchDest, IN LPCSTR pszFormat, ... );
VOID WINAPI NsuStringSprintFailSafeW( OUT LPWSTR pszDest, IN size_t cchDest, IN LPCWSTR pszFormat, ... );
VOID WINAPI NsuStringSprintFailSafeA( OUT LPSTR pszDest, IN size_t cchDest, IN LPCSTR pszFormat, ... );
VOID WINAPI NsuStringVSprintFailSafeW( OUT LPWSTR pszDest, IN size_t cchDest, IN LPCWSTR pszFormat, IN va_list vaArguments );
VOID WINAPI NsuStringVSprintFailSafeA( OUT LPSTR pszDest, IN size_t cchDest, IN LPCSTR pszFormat, IN va_list vaArguments ); DWORD WINAPI NsuStringLenW( IN LPCWSTR pszStr, OUT size_t* pcchStrLen );
DWORD WINAPI NsuStringLenA( IN LPCSTR pszStr, OUT size_t* pcbStrLen );
DWORD WINAPI NsuStringFindW( IN LPCWSTR pszStrToSearch, IN LPCWSTR pszStrToFind, IN BOOL bIsCaseSensitive, OUT LPCWSTR* ppszStartOfMatch );
DWORD WINAPI NsuStringFindA( IN LPCSTR pszStrToSearch, IN LPCSTR pszStrToFind, IN BOOL bIsCaseSensitive, OUT LPCSTR* ppszStartOfMatch );
#ifdef __cplusplus
} #endif
#endif /* #ifdef __NSUSTRING_H__ */
|