int Xcode_nameprepString32( const DWORD * pdwInputString, int iInputSize, DWORD * pdwOutputString, int * piOutputSize, DWORD * pdwProhibitedChar ) { int return_code; DWORD dwTemp[256]; DWORD dwMapped[256]; //int iTempSize = 256; int iMappedSize = 256; memset( dwTemp, 0, sizeof( dwTemp ) ); memset( dwMapped, 0, sizeof( dwMapped ) ); *pdwProhibitedChar = 0; return_code = Xcode_charmapString( (DWORD*)pdwInputString, iInputSize, dwMapped, &iMappedSize ); if ( return_code != XCODE_SUCCESS ) {return return_code;} return_code = Xcode_normalizeString( dwMapped, iMappedSize, pdwOutputString, piOutputSize ); if ( return_code != XCODE_SUCCESS ) {return return_code;} return_code = Xcode_prohibitString( pdwOutputString, *piOutputSize, pdwProhibitedChar ); if ( return_code != XCODE_SUCCESS ) {return return_code;} return_code = Xcode_bidifilterString( pdwOutputString, *piOutputSize ); if ( return_code != XCODE_SUCCESS ) {return return_code;} return XCODE_SUCCESS; }
int Xcode_nameprepString( const UTF16CHAR * puInputString, int iInputSize, DWORD * pdwOutputString, int * piOutputSize, DWORD * pdwProhibitedChar ) { int return_code; DWORD dwTemp[256]; DWORD dwMapped[256]; int iTempSize = 256; int iMappedSize = 256; memset( dwTemp, 0, sizeof( dwTemp ) ); memset( dwMapped, 0, sizeof( dwMapped ) ); *pdwProhibitedChar = 0; /* Input character string is UTF16, each character is 16 bits, type UTF16CHAR */ return_code = Xcode_convertUTF16To32Bit( puInputString, iInputSize, dwTemp, &iTempSize ); if ( return_code != XCODE_SUCCESS ) { return return_code; } return_code = Xcode_charmapString( dwTemp, iTempSize, dwMapped, &iMappedSize ); if ( return_code != XCODE_SUCCESS ) { return return_code; } return_code = Xcode_normalizeString( dwMapped, iMappedSize, pdwOutputString, piOutputSize ); if ( return_code != XCODE_SUCCESS ) { return return_code; } return_code = Xcode_prohibitString( pdwOutputString, *piOutputSize, pdwProhibitedChar ); if ( return_code != XCODE_SUCCESS ) { return return_code; } return_code = Xcode_bidifilterString( pdwOutputString, *piOutputSize ); if ( return_code != XCODE_SUCCESS ) { return return_code; } return XCODE_SUCCESS; }