omadrm/drmengine/agentv2/src/Oma2AgentAttributes.cpp
changeset 31 908beac81e0a
parent 23 493788a4a8a4
child 38 9dfde139acda
--- a/omadrm/drmengine/agentv2/src/Oma2AgentAttributes.cpp	Mon May 03 12:46:34 2010 +0300
+++ b/omadrm/drmengine/agentv2/src/Oma2AgentAttributes.cpp	Fri May 14 16:07:34 2010 +0300
@@ -72,6 +72,20 @@
 const TInt KMaxAlbumTrack = 3;
 const TInt KMaxRecordingYear = 6;
 
+const TInt KAllowAllDefined =  
+    DRM::EDrmAllowAudioAnalog |
+    DRM::EDrmAllowAudioFmTransmitter |
+    DRM::EDrmAllowAudioBluetooth |
+    DRM::EDrmAllowAudioUplink |
+    DRM::EDrmAllowVideoAnalog |
+    DRM::EDrmAllowVideoMacroVision |
+    DRM::EDrmAllowAudioUsb |   
+    DRM::EDrmAllowAudioHdmiHdcpRequired |
+    DRM::EDrmAllowAudioHdmi |
+    DRM::EDrmAllowVideoHDMI  |
+    DRM::EDrmAllowVideoHdmiHdcpRequested |
+    DRM::EDrmAllowVideoHdmiHdcpRequired;
+
 // ============================= LOCAL FUNCTIONS ===============================
 
 // -----------------------------------------------------------------------------
@@ -451,7 +465,14 @@
                     }
                 break;
             case DRM::EDrmAllowedOutputs:
-                value = DRM::EDrmAllowAudioAnalog | DRM::EDrmAllowAudioBluetooth | DRM::EDrmAllowVideoMacroVision | DRM::EDrmAllowAudioFmTransmitter;
+                if( dcf2 )
+                    {
+                    value = DRM::EDrmAllowAudioAnalog | DRM::EDrmAllowAudioBluetooth | DRM::EDrmAllowVideoMacroVision | DRM::EDrmAllowAudioFmTransmitter;
+                    }
+                else
+                    {
+                    value = KAllowAllDefined;
+                    }
                 break;
             default:
                 value = KErrCANotSupported;
@@ -683,7 +704,14 @@
                      }
                 break;
             case DRM::EDrmAllowedOutputs:
-                value = DRM::EDrmAllowAudioAnalog | DRM::EDrmAllowAudioBluetooth | DRM::EDrmAllowVideoMacroVision | DRM::EDrmAllowAudioFmTransmitter;
+                if( dcf2 )
+                    {
+                    value = DRM::EDrmAllowAudioAnalog | DRM::EDrmAllowAudioBluetooth | DRM::EDrmAllowVideoMacroVision | DRM::EDrmAllowAudioFmTransmitter;
+                    }
+                else
+                    {
+                    value = KAllowAllDefined;
+                    }
                 break;
             case ERightsNone:
                 if (aRightsClient == NULL)
@@ -817,6 +845,7 @@
     RDRMRightsClient* aRightsClient)
     {
     TInt err = KErrCANotSupported;
+    TInt ret = KErrNone;
     HBufC* b = NULL;
     COma1Dcf* dcf1 = NULL;
     COma2Dcf* dcf2 = NULL;