multimediacommsengine/mmcesrv/mmcemediamanager/src/mcesecuredesstream.cpp
branchRCL_3
changeset 18 91f50911ea81
parent 3 513a8b745b2f
child 25 fb1bbf85a302
equal deleted inserted replaced
17:a5ac35ca6d81 18:91f50911ea81
    81 //
    81 //
    82 CMceSecureDesStream::CMceSecureDesStream(	CMceSecureMediaSession& aSecureSession,
    82 CMceSecureDesStream::CMceSecureDesStream(	CMceSecureMediaSession& aSecureSession,
    83 											CMccSecureInterface& aSecureInterface,
    83 											CMccSecureInterface& aSecureInterface,
    84         									CMceComMediaStream& aMediaStream
    84         									CMceComMediaStream& aMediaStream
    85         									):
    85         									):
    86 	
    86 	iWaitingBinding(EFalse),
    87 	iSecureSession(aSecureSession),
    87 	iSecureSession(aSecureSession),
    88 	iSecInf(aSecureInterface),
    88 	iSecInf(aSecureInterface),
    89 	iMediaStream(aMediaStream),
    89 	iMediaStream(aMediaStream),
    90 	iIsSAVP(ETrue),
    90 	iIsSAVP(ETrue),
    91 	iWaitingBinding(EFalse),
       
    92 	iCryptoContextOutId(0),
    91 	iCryptoContextOutId(0),
    93 	iCryptoContextInId(0),
    92 	iCryptoContextInId(0),
    94 	iOldLocalMediaPort(0)
    93 	iOldLocalMediaPort(0)
    95 	{
    94 	{
    96 	
    95 	
   487     	iCryptoOuts->Reset(); 
   486     	iCryptoOuts->Reset(); 
   488     	}
   487     	}
   489     iGnoreSdpMsg = (iCryptoIn.iIfCryptoContextIdSet && 
   488     iGnoreSdpMsg = (iCryptoIn.iIfCryptoContextIdSet && 
   490     				iCryptoOut.iIfCryptoContextIdSet ) &&
   489     				iCryptoOut.iIfCryptoContextIdSet ) &&
   491     				!iGnoreSdpMsg ? EFalse : ETrue;		
   490     				!iGnoreSdpMsg ? EFalse : ETrue;		
   492     if ( iWaitingBinding )
       
   493     	{
       
   494     	iSecureSession.BindStreamCrypto();
       
   495     	}
       
   496     	
   491     	
   497     MCEMM_DEBUG("SetCryptoContext(), Exit")
   492     MCEMM_DEBUG("SetCryptoContext(), Exit")
   498     }
   493     }
   499 
   494 
   500 
   495 
   856         GenerateCryptoSuiteLineL( aResult, iCryptoOut );
   851         GenerateCryptoSuiteLineL( aResult, iCryptoOut );
   857         MSG_IGNORE_RETURN()
   852         MSG_IGNORE_RETURN()
   858       	if ( iSecureSession.iLSReadyToBind )
   853       	if ( iSecureSession.iLSReadyToBind )
   859       		{
   854       		{
   860       		SetCryptoContextL();
   855       		SetCryptoContextL();
       
   856             if ( iWaitingBinding )
       
   857                {
       
   858                iSecureSession.BindStreamCrypto();
       
   859                }
   861       		}
   860       		}
   862         MSG_IGNORE_RETURN()
   861         MSG_IGNORE_RETURN()
   863         }
   862         }
   864 	 else
   863 	 else
   865     	{
   864     	{
  1488 		if ( cryptoOut.iTagLen == aCrypto.iTagLen &&
  1487 		if ( cryptoOut.iTagLen == aCrypto.iTagLen &&
  1489 			 cryptoOut.iEncAlgms == aCrypto.iEncAlgms &&
  1488 			 cryptoOut.iEncAlgms == aCrypto.iEncAlgms &&
  1490 			 cryptoOut.iAuthAlgms == aCrypto.iAuthAlgms &&
  1489 			 cryptoOut.iAuthAlgms == aCrypto.iAuthAlgms &&
  1491 			 cryptoOut.iCryptoSuite.Compare(aCrypto.iCryptoSuite) == 0)
  1490 			 cryptoOut.iCryptoSuite.Compare(aCrypto.iCryptoSuite) == 0)
  1492 			{
  1491 			{
  1493 			//SEtCrypto
  1492             if(!iCryptoOut.iIfCryptoContextIdSet)
  1494 			iCryptoOut.Copy( cryptoOut );
  1493                 {  //SEtCrypto
       
  1494                 iCryptoOut.Copy( cryptoOut );
       
  1495                 }
  1495 			iCryptoIn.iTag = cryptoOut.iTag;
  1496 			iCryptoIn.iTag = cryptoOut.iTag;
  1496 			iCryptoIn.iEncAlgms = cryptoOut.iEncAlgms;
  1497 			iCryptoIn.iEncAlgms = cryptoOut.iEncAlgms;
  1497 			iCryptoIn.iAuthAlgms = cryptoOut.iAuthAlgms;
  1498 			iCryptoIn.iAuthAlgms = cryptoOut.iAuthAlgms;
  1498 			iCryptoIn.iTagLen = cryptoOut.iTagLen;
  1499 			iCryptoIn.iTagLen = cryptoOut.iTagLen;
  1499 			iCryptoIn.iCryptoSuite = cryptoOut.iCryptoSuite ;
  1500 			iCryptoIn.iCryptoSuite = cryptoOut.iCryptoSuite ;
  1681 
  1682 
  1682 	for (TInt i = 0; i < aCopyFrom.iCryptoOuts->Count(); i++)
  1683 	for (TInt i = 0; i < aCopyFrom.iCryptoOuts->Count(); i++)
  1683 		{
  1684 		{
  1684 		iCryptoOuts->AppendL( aCopyFrom.iCryptoOuts->At( i ) );
  1685 		iCryptoOuts->AppendL( aCopyFrom.iCryptoOuts->At( i ) );
  1685 		}
  1686 		}
  1686 		iOldLocalMediaPort = aCopyFrom.iOldLocalMediaPort;
  1687     iOldLocalMediaPort = aCopyFrom.iOldLocalMediaPort;
       
  1688     iWaitingBinding = aCopyFrom.iWaitingBinding;
  1687  	MCEMM_DEBUG( "CMceSecureDesStream::CopyStreamCryptoL Exit" )
  1689  	MCEMM_DEBUG( "CMceSecureDesStream::CopyStreamCryptoL Exit" )
  1688 	}
  1690 	}
  1689 
  1691 
  1690 //-----------------------------------------------------------------------------
  1692 //-----------------------------------------------------------------------------
  1691 // CMceSecureDesStream::Session()
  1693 // CMceSecureDesStream::Session()