pkiutilities/ocsp/test/ocspsupport.h
changeset 0 164170e6151a
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/pkiutilities/ocsp/test/ocspsupport.h	Tue Jan 26 15:20:08 2010 +0200
@@ -0,0 +1,92 @@
+/**
+* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description:
+*
+*/
+
+
+
+/**
+ @file
+ @internalTechnology
+*/
+
+#ifndef __OCSPSUPPORT_H__
+#define __OCSPSUPPORT_H__
+
+#include <e32std.h>
+// file duplicated from \\swi\\inc
+namespace Swi
+{
+
+/// The name of the OCSP Support Server
+_LIT(KOcspSupportServerName,"!OCSPSUPPORTSERVER");
+
+/// The name of the OCSP Support Executable
+_LIT(KOcspSupportServerExeName,"OCSPSUPPORT");
+
+/// The name of the OCSP Support Thread
+_LIT(KOcspSupportServerThreadName,"OCSPSUPPORTSERVER-THREAD");
+
+/// The current version of the OCSP Support Server
+const TInt KOcspSupportServerVersionMajor=0;
+const TInt KOcspSupportServerVersionMinor=1;
+const TInt KOcspSupportServerVersionBuild=0;
+
+/**
+ * This class is a handle to the server, which uses HTTP to make the OCSP request
+ */
+class ROcspHandler : public RSessionBase
+	{
+	static const TInt KDefaultBufferSize;
+public:
+	/// Connect to the server	
+	TInt Connect();
+	
+	/// Close the connection tothe server
+	void Close();
+	
+	/// Cancel the OCSP request
+	void CancelRequest();
+	
+	/**
+	 * Get the response data from the OCSP request. This is only valid when SendRequest
+	 * has been called, and completed with no error. Ownership is transferred to client.
+	 *
+	 * @param	aIapOut		The IAP that was used in this request
+	 * @return	The body of the OCSP response
+	 */
+	TPtrC8 GetResponseL(TUint32& aIapOut) const;
+	
+	/**
+	 * Send an OCSP request, using the server.
+	 * @param	aUri		The URI of the server to send the request to.
+	 * @param	aRequest	The request data to send.
+	 * @param	aTimeout	The request timeout value in milliseconds
+	 * @param	aIap		The IAP to use for this OCSP request
+	 * @param	aStatus		Request status. On completion contains an error code.
+	 */
+	void SendRequest(const TDesC8& aUri, const TDesC8& aRequest, const TInt aTimeout, TUint32 aIap, TRequestStatus& aStatus);
+
+private:
+	/// Starts the server which carries out the requests
+	TInt StartServer();
+	
+	
+	mutable HBufC8* iResultData;
+	};
+
+} // namespace Swi
+
+#endif // #ifndef __OCSPSUPPORT_H__