Update contrib.
1 // Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies).
2 // All rights reserved.
3 // This component and the accompanying materials are made available
4 // under the terms of the License "Eclipse Public License v1.0"
5 // which accompanies this distribution, and is available
6 // at the URL "http://www.eclipse.org/legal/epl-v10.html".
8 // Initial Contributors:
9 // Nokia Corporation - initial contribution.
22 #ifndef PROTECTEDSTREAMDESC_H
23 #define PROTECTEDSTREAMDESC_H
27 // Should be removed if and when direct TInetAddr usage is removed.
34 namespace StreamAccess
39 Represents parameters for the protected stream. Specific subclasses of this interface are used to define parameters relevant to
41 Instances of this interface are created by the clients of the consumer interface before calling CKeyStreamDecoder::NewL
43 class CProtectedStreamDesc : public CBase
47 Instantiates the correct implementation of key stream sink. Should be used for creating the binding between
48 the short-term key stream that delivers the decryption keys for the traffic and the protocol which protects the
49 traffic itself, e.g. IPSec, ISMACryp
51 virtual CKeyStreamSink* CreateKeyStreamSinkLC() const = 0;
52 virtual ~CProtectedStreamDesc() {}
56 Represents a media stream protected by IPSec.
57 @see StreamAccess::CProtectedStreamDesc
59 NONSHARABLE_CLASS(CIpSecProtectedStreamDesc) : public CProtectedStreamDesc
63 Create a description of media stream protected by IPSec.
65 @param aSourceAddr Source connection address.
66 @param aTargetAddr Target connection address.
67 @return New CIpSecProtectedStreamDesc instance
70 IMPORT_C static CIpSecProtectedStreamDesc* NewLC(const TInetAddr& aSourceAddr, const TInetAddr& aTargetAddr);
73 @see CProtectedStreamDesc::CreateKeyStreamSinkLC()
75 IMPORT_C CKeyStreamSink* CreateKeyStreamSinkLC() const;
78 ~CIpSecProtectedStreamDesc();
81 CIpSecProtectedStreamDesc(const TInetAddr& aSourceAddr, const TInetAddr& aTargetAddr);
84 TInetAddr iSourceAddr;
85 TInetAddr iTargetAddr;
88 } // namespace StreamAccess
89 #endif // PROTECTEDSTREAMDESC_H