// ---------------------------------------------------------------------------- // TSIPSecDigestVerifyContext::SecurityServerHeaderL // Example // Security-Server: ipsec-ike;q=0.1 // Security-Server: tls;q=0.2 // Result // Security-Server:ipsec-ike;q=0.1,tls;q=0.2 // ---------------------------------------------------------------------------- // HBufC8* TSIPSecDigestVerifyContext::SecurityServerHeaderL() { HBufC8* serverHeader( NULL ); TSglQueIter<CSIPHeaderBase> headers( static_cast< TSIPSecPluginCtxVerify& >( Parent() ). SecurityServerHeaders() ); if ( headers ) { CBufBase* encoded = SipSecUtils::EncodeHeadersL( headers ); CleanupStack::PushL( encoded ); TPtr8 encodedPtr( encoded->Ptr( 0 ) ); serverHeader = encodedPtr.AllocL(); CleanupStack::PopAndDestroy( encoded ); } return serverHeader; }
int main(int argc, char *argv[]) { if (argc != 3){ std::cerr << "Useage:\n" << argv[0] << " image1 image2\n"; return 1; } uchar* outPtr = nullptr; int width = 0, height = 0, channel = 0; { auto decoder = Decoder::DecoderInterface::getDecoder(ImageFormat::PNG); std::ifstream file(argv[1], std::ifstream::binary | std::ifstream::ate); std::size_t fileSize = file.tellg(); file.seekg(std::ifstream::beg); std::vector<uchar> encodedPtr(fileSize, 0); file.read(reinterpret_cast<char*>(encodedPtr.data()), fileSize); std::vector<uchar> outPtr; decoder->decode(encodedPtr, outPtr, width, height, channel); } std::cout << "Image width : " << width << ", height : " << height << ", channel : " << channel << '\n'; { std::ofstream outputFile("Lenna.bin", std::ofstream::binary); outputFile.write(reinterpret_cast<char*>(outPtr), width * height * channel); outputFile.close(); } delete[] outPtr; outPtr = nullptr; return 0; }
void CTestFilter::EncodeBasicAuthL(RString& aUsername, RString& aPW, RHTTPTransaction& aTransaction) { // Standard, plain-text HTTP - Base 64 the name and password TBase64 codec; HBufC8* nameAndPW = HBufC8::NewMaxLC(aUsername.DesC().Length() + aPW.DesC().Length() + 1); _LIT8(KBasicAuthFormatString, "%S:%S"); nameAndPW->Des().Format(KBasicAuthFormatString, &aUsername.DesC(), &aPW.DesC()); // Conservatively allocate a buffer twice as big as the unencoded // buffer for the encoded string. HBufC8* encoded = HBufC8::NewMaxLC(nameAndPW->Des().Length() * 2); TPtr8 encodedPtr(encoded->Des()); codec.Encode(*nameAndPW, encodedPtr); RString encodedString = iStringPool.OpenStringL(*encoded); CleanupStack::PopAndDestroy(2, nameAndPW); CleanupClosePushL(encodedString); RHTTPHeaders requestHeaders(aTransaction.Request().GetHeaderCollection()); requestHeaders.RemoveField(iStringPool.StringF(HTTP::EAuthorization,RHTTPSession::GetTable())); requestHeaders.SetFieldL(iStringPool.StringF(HTTP::EAuthorization,RHTTPSession::GetTable()), THTTPHdrVal(iStringPool.StringF(HTTP::EBasic,RHTTPSession::GetTable()))); requestHeaders.SetFieldL(iStringPool.StringF(HTTP::EAuthorization,RHTTPSession::GetTable()), THTTPHdrVal(encodedString)); aTransaction.PropertySet().SetPropertyL(iStringPool.StringF(HTTP::EAuthorization,RHTTPSession::GetTable()), THTTPHdrVal(encodedString)); CleanupStack::PopAndDestroy(&encodedString); }