adaptationlayer/tsy/simatktsy_dll/src/satcc.cpp
changeset 7 fa67e03b87df
parent 5 8ccc39f9d787
child 8 6295dc2169f3
--- a/adaptationlayer/tsy/simatktsy_dll/src/satcc.cpp	Fri Jan 22 10:04:04 2010 +0200
+++ b/adaptationlayer/tsy/simatktsy_dll/src/satcc.cpp	Wed Feb 17 13:58:55 2010 +0200
@@ -65,6 +65,7 @@
     4;      //CALL_MODEM_SB_CAUSE
 
 const TUint8 KMSBMask = 0x80;
+const TUint8 KSw1Sw2Unknown = 0;
 
 
 // ==================== MEMBER FUNCTIONS ====================================
@@ -417,7 +418,12 @@
             // impossible. Remove the created CcStruct from the CC array and
             // send CC event response.
             TPtrC8 atkData;
-            SendSsResourceControlReq( aCcstruct, KError, atkData );
+            SendSsResourceControlReq( 
+                aCcstruct, 
+                KSw1Sw2Unknown, 
+                KSw1Sw2Unknown, 
+                KError, 
+                atkData );
 
             TInt index( GetArrayIndexById( aCcstruct.iTransId ) );
             if ( index != KErrNotFound )
@@ -588,6 +594,8 @@
                         {
                         SendSsResourceControlReq(
                             ( *iCallControlArray )[ccIndex],
+                            sw1,
+                            sw2,
                             result,
                             apduData );
                         break;
@@ -1452,6 +1460,8 @@
 //
 void CSatCC::SendSsResourceControlReq(
         const TCallControl& aTcc,
+        const TUint8 aSw1,
+        const TUint8 aSw2,
         const TUint8 aResult,
         TPtrC8 aApduData )
     {
@@ -1654,6 +1664,18 @@
             }
         }
 
+    // SS_SB_RESOURCE_CONTROL_INFO [O] with sw1, sw2 and result 
+    TIsiSubBlock resourceCtrlInfo(
+        isiMessage,
+        SS_SB_RESOURCE_CONTROL_INFO,
+        EIsiSubBlockTypeId8Len8 );
+    isiMessage.Append( 3 ); // data size is 3 (sw1 + sw2 + result)
+    isiMessage.Append( aSw1 );
+    isiMessage.Append( aSw2 );
+    isiMessage.Append( ccresult );
+    sbcount++;
+    resourceCtrlInfo.CompleteSubBlock();
+
     TBuf8<1> numOfSubblocks;
     numOfSubblocks.Append( sbcount);
     isiMessage.Insert( 1, numOfSubblocks );