adaptationlayer/tsy/nokiatsy_dll/inc/cmmcustommesshandler.h
changeset 5 8ccc39f9d787
parent 0 63b37f68c1ce
child 7 fa67e03b87df
equal deleted inserted replaced
4:510c70acdbf6 5:8ccc39f9d787
     9 * Initial Contributors:
     9 * Initial Contributors:
    10 * Nokia Corporation - initial contribution.
    10 * Nokia Corporation - initial contribution.
    11 *
    11 *
    12 * Contributors:
    12 * Contributors:
    13 *
    13 *
    14 * Description: 
    14 * Description:
    15 *
    15 *
    16 */
    16 */
    17 
    17 
    18 
    18 
    19 
    19 
   515 
   515 
   516         /**
   516         /**
   517         * Handles responses to UICC_APDU_RESP
   517         * Handles responses to UICC_APDU_RESP
   518         * @param aStatus Status
   518         * @param aStatus Status
   519         * @param aFileData File data
   519         * @param aFileData File data
   520         * @param aTraId transaction id 
   520         * @param aTraId transaction id
   521         * @return none
   521         * @return none
   522         */
   522         */
   523         void UiccSendAPDUResp(
   523         void UiccSendAPDUResp(
   524             TInt aStatus,
   524             TInt aStatus,
   525             const TDesC8& aFileData,
   525             const TDesC8& aFileData,
   669         * @return KErrNone or error code
   669         * @return KErrNone or error code
   670         */
   670         */
   671         TInt ProcessUiccMsg(
   671         TInt ProcessUiccMsg(
   672             TInt aTraId,
   672             TInt aTraId,
   673             TInt aStatus,
   673             TInt aStatus,
       
   674             TUint8 aDetails,
   674             const TDesC8& aFileData );
   675             const TDesC8& aFileData );
   675 
   676 
   676     protected: // New functions
   677     protected: // New functions
   677         //None
   678         //None
   678 
   679 
   780         TInt GssCsServiceReq(
   781         TInt GssCsServiceReq(
   781             TUint8 aTransId,
   782             TUint8 aTransId,
   782             RMmCustomAPI::TNetworkModeCaps aNetworkModeCaps );
   783             RMmCustomAPI::TNetworkModeCaps aNetworkModeCaps );
   783 
   784 
   784         /**
   785         /**
       
   786         * Request for current RAT
       
   787         * @param TUInt8 aTransId: Transaction Id
       
   788         * @return TInt : result
       
   789         */
       
   790         TInt GssCsServiceReq( TUint8 aTransId );
       
   791 
       
   792         /**
   785         * Breaks received GSS_CS_SERVICE_RESP ISI message
   793         * Breaks received GSS_CS_SERVICE_RESP ISI message
   786         * @param const TIsiReceiveC& aIsiMessage: The received ISI message
   794         * @param const TIsiReceiveC& aIsiMessage: The received ISI message
   787         * @return void : None
   795         * @return void : None
   788         */
   796         */
   789         void GssCsServiceResp( const TIsiReceiveC& aIsiMessage );
   797         void GssCsServiceResp( const TIsiReceiveC& aIsiMessage );
   792         * Breaks received GSS_CS_SERVICE_FAIL_RESP ISI message
   800         * Breaks received GSS_CS_SERVICE_FAIL_RESP ISI message
   793         * @param const TIsiReceiveC& aIsiMessage: The received ISI message
   801         * @param const TIsiReceiveC& aIsiMessage: The received ISI message
   794         * @return void : None
   802         * @return void : None
   795         */
   803         */
   796         void GssCsServiceFailResp( const TIsiReceiveC& aIsiMessage );
   804         void GssCsServiceFailResp( const TIsiReceiveC& aIsiMessage );
   797 
       
   798         /**
       
   799         * MtcRat Query
       
   800         * @param TUInt8 aTransId: Transaction Id
       
   801         * @return TInt : result
       
   802         */
       
   803 #ifdef INTERNAL_TESTING_OLD_IMPLEMENTATION_FOR_UICC_TESTING
       
   804         // Removed for Bridge camp!
       
   805         TInt MtcRatQueryReq( TUint8 aTransId );
       
   806 #endif /* INTERNAL_TESTING_OLD_IMPLEMENTATION_FOR_UICC_TESTING */
       
   807 
       
   808         /**
       
   809         * MtcRat Query Response
       
   810         * @param TIsiReceiveC& aIsiMessage: ISI message
       
   811         * @return void : None
       
   812         */
       
   813 #ifdef INTERNAL_TESTING_OLD_IMPLEMENTATION_FOR_UICC_TESTING
       
   814         // Removed for Bridge camp!
       
   815         void MtcRatQueryResp( const TIsiReceiveC& aIsiMessage );
       
   816 #endif /* INTERNAL_TESTING_OLD_IMPLEMENTATION_FOR_UICC_TESTING */
       
   817 
   805 
   818         /**
   806         /**
   819         * Handles the ReadViagHomeZoneParamsResp response message.
   807         * Handles the ReadViagHomeZoneParamsResp response message.
   820         * @param const TIsiReceiveC& aIsiMessage: a pointer to incoming message
   808         * @param const TIsiReceiveC& aIsiMessage: a pointer to incoming message
   821         * @return void
   809         * @return void
   973         * @param none
   961         * @param none
   974         * @return TInt: KErrNone / KErrNotReady if PMM has not been able to be
   962         * @return TInt: KErrNone / KErrNotReady if PMM has not been able to be
   975         * read.
   963         * read.
   976         */
   964         */
   977         TInt  GetTotalLifeTimerValue();
   965         TInt  GetTotalLifeTimerValue();
   978         
   966 
   979         /**
   967         /**
   980         * Constructs and sends AUTHENTICATE APDU to the UICC
   968         * Constructs and sends AUTHENTICATE APDU to the UICC
   981         * @param aDataPackage: data containing authentication parameters
   969         * @param aDataPackage: data containing authentication parameters
   982         * @return TInt: KErrNone / Error value from phonet
   970         * @return TInt: KErrNone / Error value from phonet
   983         */
   971         */
   984         TInt CMmCustomMessHandler::UiccSendAuthenticateApdu( 
   972         TInt CMmCustomMessHandler::UiccSendAuthenticateApdu(
   985             const CMmDataPackage& aDataPackage );
   973             const CMmDataPackage& aDataPackage );
   986 
   974 
   987 
   975 
   988         /**
   976         /**
   989         * Constructs RUN GSM ALGORITHM APDU. Used when authentication
   977         * Constructs RUN GSM ALGORITHM APDU. Used when authentication
   992         * @param aRand: RAND value inserted to the APDU
   980         * @param aRand: RAND value inserted to the APDU
   993         * @param aTraId: tr id used in UICC request
   981         * @param aTraId: tr id used in UICC request
   994         * @return void: none
   982         * @return void: none
   995         */
   983         */
   996         void UiccCreateRunGsmAlgorithmApdu(
   984         void UiccCreateRunGsmAlgorithmApdu(
   997             TUiccSendApdu& aParams, 
   985             TUiccSendApdu& aParams,
   998             const TDesC8& aRand,
   986             const TDesC8& aRand,
   999             TUiccTrId aTraId );
   987             TUiccTrId aTraId );
  1000 
   988 
  1001         /**
   989         /**
  1002         * Handles response APDU for RUN GSM ALGORITHM APDU
   990         * Handles response APDU for RUN GSM ALGORITHM APDU
  1014         * Constructs GSM context AUTHENTICATE APDU
  1002         * Constructs GSM context AUTHENTICATE APDU
  1015         * @param params: parameter where the apdu is constructed
  1003         * @param params: parameter where the apdu is constructed
  1016         * @param aDataPackage: data containing authentication parameters
  1004         * @param aDataPackage: data containing authentication parameters
  1017         * @return void: none
  1005         * @return void: none
  1018         */
  1006         */
  1019         void UiccCreateGsmSecurityContextApdu( 
  1007         void UiccCreateGsmSecurityContextApdu(
  1020             TUiccSendApdu& params, 
  1008             TUiccSendApdu& params,
  1021             const CMmDataPackage& aDataPackage );
  1009             const CMmDataPackage& aDataPackage );
  1022 
  1010 
  1023         /**
  1011         /**
  1024         * Handles response APDU for GSM security context AUTHENTICATE APDU
  1012         * Handles response APDU for GSM security context AUTHENTICATE APDU
  1025         * @param aTraId: transaction id of received message
  1013         * @param aTraId: transaction id of received message
  1038         * @param aRand: RAND value inserted to the APDU
  1026         * @param aRand: RAND value inserted to the APDU
  1039         * @param aAuth: AUTH value inserted to the APDU
  1027         * @param aAuth: AUTH value inserted to the APDU
  1040         * @param aTraId: tr id used in UICC request
  1028         * @param aTraId: tr id used in UICC request
  1041         * @return void: none
  1029         * @return void: none
  1042         */
  1030         */
  1043         void UiccCreate3GSecurityContextApdu( 
  1031         void UiccCreate3GSecurityContextApdu(
  1044             TUiccSendApdu& aParams, 
  1032             TUiccSendApdu& aParams,
  1045             const TDesC8& aRand, 
  1033             const TDesC8& aRand,
  1046             const TDesC8& aAuth,
  1034             const TDesC8& aAuth,
  1047             TUiccTrId aTraId );
  1035             TUiccTrId aTraId );
  1048 
  1036 
  1049         /**
  1037         /**
  1050         * Handles response APDU for 3G security context AUTHENTICATE APDU
  1038         * Handles response APDU for 3G security context AUTHENTICATE APDU
  1063         * @param aParams: parameter where the apdu is constructed
  1051         * @param aParams: parameter where the apdu is constructed
  1064         * @param aDataPackage: data containing authentication parameters
  1052         * @param aDataPackage: data containing authentication parameters
  1065         * @return void: none
  1053         * @return void: none
  1066         */
  1054         */
  1067         void UiccCreateGBABootstrappingApdu(
  1055         void UiccCreateGBABootstrappingApdu(
  1068             TUiccSendApdu& aParams, 
  1056             TUiccSendApdu& aParams,
  1069             const CMmDataPackage& aDataPackage );
  1057             const CMmDataPackage& aDataPackage );
  1070 
  1058 
  1071         /**
  1059         /**
  1072         * Handles response APDU for GBA security context AUTHENTICATE 
  1060         * Handles response APDU for GBA security context AUTHENTICATE
  1073         * APDU (bootstrapping mode)
  1061         * APDU (bootstrapping mode)
  1074         * @param aTraId: transaction id of received message
  1062         * @param aTraId: transaction id of received message
  1075         * @param aStatus: status of the response
  1063         * @param aStatus: status of the response
  1076         * @param aFileData: response apdu
  1064         * @param aFileData: response apdu
  1077         * @return void: none
  1065         * @return void: none
  1080             TInt aTraId,
  1068             TInt aTraId,
  1081             TInt aStatus,
  1069             TInt aStatus,
  1082             const TDesC8& aFileData );
  1070             const TDesC8& aFileData );
  1083 
  1071 
  1084         /**
  1072         /**
  1085         * Starts GBA bootstrap operation by reading elementary file EFgba. After reading 
  1073         * Starts GBA bootstrap operation by reading elementary file EFgba. After reading
  1086         * is done, B-Tid and keylifetime is updated to EFgba
  1074         * is done, B-Tid and keylifetime is updated to EFgba
  1087         * @param aDataPackage: data containing parameters going to be written
  1075         * @param aDataPackage: data containing parameters going to be written
  1088         *                      to the EFgba
  1076         *                      to the EFgba
  1089         * @return void: none
  1077         * @return void: none
  1090         */
  1078         */
  1107         * @return void: none
  1095         * @return void: none
  1108         */
  1096         */
  1109         void UiccGBABootstrapUpdateResp( TInt aStatus );
  1097         void UiccGBABootstrapUpdateResp( TInt aStatus );
  1110 
  1098 
  1111         /**
  1099         /**
  1112         * Constructs GBA security context AUTHENTICATE APDU 
  1100         * Constructs GBA security context AUTHENTICATE APDU
  1113         * (NAF derivation mode)
  1101         * (NAF derivation mode)
  1114         * @param aParams: parameter where the apdu is constructed
  1102         * @param aParams: parameter where the apdu is constructed
  1115         * @param aDataPackage: data containing authentication parameters
  1103         * @param aDataPackage: data containing authentication parameters
  1116         * @return void: none
  1104         * @return void: none
  1117         */
  1105         */
  1118         void UiccCreateGBABootstrapNafDerivationApdu(
  1106         void UiccCreateGBABootstrapNafDerivationApdu(
  1119             TUiccSendApdu& aParams, 
  1107             TUiccSendApdu& aParams,
  1120             const CMmDataPackage& aDataPackage );
  1108             const CMmDataPackage& aDataPackage );
  1121 
  1109 
  1122         /**
  1110         /**
  1123         * Handles response APDU for GBA security context AUTHENTICATE 
  1111         * Handles response APDU for GBA security context AUTHENTICATE
  1124         * APDU (NAF derivation mode)
  1112         * APDU (NAF derivation mode)
  1125         * @param aTraId: transaction id of received message
  1113         * @param aTraId: transaction id of received message
  1126         * @param aStatus: status of the response
  1114         * @param aStatus: status of the response
  1127         * @param aFileData: response apdu
  1115         * @param aFileData: response apdu
  1128         * @return void: none
  1116         * @return void: none
  1131             TInt aTraId,
  1119             TInt aTraId,
  1132             TInt aStatus,
  1120             TInt aStatus,
  1133             const TDesC8& aFileData );
  1121             const TDesC8& aFileData );
  1134 
  1122 
  1135         /**
  1123         /**
  1136         * Constructs MBMS security context AUTHENTICATE APDU 
  1124         * Constructs MBMS security context AUTHENTICATE APDU
  1137         * (MSK Update Mode)
  1125         * (MSK Update Mode)
  1138         * @param params: parameter where the apdu is constructed
  1126         * @param params: parameter where the apdu is constructed
  1139         * @param aDataPackage: data containing authentication parameters
  1127         * @param aDataPackage: data containing authentication parameters
  1140         * @return void: none
  1128         * @return void: none
  1141         */
  1129         */
  1142         void UiccCreateMbmsMskUpdateApdu(
  1130         void UiccCreateMbmsMskUpdateApdu(
  1143             TUiccSendApdu& params, 
  1131             TUiccSendApdu& params,
  1144             const CMmDataPackage& aDataPackage );
  1132             const CMmDataPackage& aDataPackage );
  1145 
  1133 
  1146         /**
  1134         /**
  1147         * Handles response APDU for MBMS security context AUTHENTICATE 
  1135         * Handles response APDU for MBMS security context AUTHENTICATE
  1148         * APDU (MSK Update Mode)
  1136         * APDU (MSK Update Mode)
  1149         * @param aTraId: transaction id of received message
  1137         * @param aTraId: transaction id of received message
  1150         * @param aStatus: status of the response
  1138         * @param aStatus: status of the response
  1151         * @param aFileData: response apdu
  1139         * @param aFileData: response apdu
  1152         * @return void: none
  1140         * @return void: none
  1154         void UiccMbmsMskUpdateApduResp(
  1142         void UiccMbmsMskUpdateApduResp(
  1155             TInt aStatus,
  1143             TInt aStatus,
  1156             const TDesC8& aFileData );
  1144             const TDesC8& aFileData );
  1157 
  1145 
  1158         /**
  1146         /**
  1159         * Constructs MBMS security context AUTHENTICATE APDU 
  1147         * Constructs MBMS security context AUTHENTICATE APDU
  1160         * (MTK Generation Mode)
  1148         * (MTK Generation Mode)
  1161         * @param params: parameter where the apdu is constructed
  1149         * @param params: parameter where the apdu is constructed
  1162         * @param aDataPackage: data containing authentication parameters
  1150         * @param aDataPackage: data containing authentication parameters
  1163         * @return void: none
  1151         * @return void: none
  1164         */
  1152         */
  1165         void UiccCreateMbmsMtkGenerationApdu(
  1153         void UiccCreateMbmsMtkGenerationApdu(
  1166             TUiccSendApdu& params, 
  1154             TUiccSendApdu& params,
  1167             const CMmDataPackage& aDataPackage );
  1155             const CMmDataPackage& aDataPackage );
  1168 
  1156 
  1169         /**
  1157         /**
  1170         * Handles response APDU for MBMS security context AUTHENTICATE 
  1158         * Handles response APDU for MBMS security context AUTHENTICATE
  1171         * APDU (MTK Generation Mode)
  1159         * APDU (MTK Generation Mode)
  1172         * @param aStatus: status of the response
  1160         * @param aStatus: status of the response
  1173         * @param aFileData: response apdu
  1161         * @param aFileData: response apdu
  1174         * @return void: none
  1162         * @return void: none
  1175         */
  1163         */
  1176         void UiccMbmsMtkGenerationApduResp(
  1164         void UiccMbmsMtkGenerationApduResp(
  1177             TInt aStatus,
  1165             TInt aStatus,
  1178             const TDesC8& aFileData );
  1166             const TDesC8& aFileData );
  1179 
  1167 
  1180         /**
  1168         /**
  1181         * Constructs MBMS security context AUTHENTICATE APDU 
  1169         * Constructs MBMS security context AUTHENTICATE APDU
  1182         * (MSK Deletion Mode)
  1170         * (MSK Deletion Mode)
  1183         * @param params: parameter where the apdu is constructed
  1171         * @param params: parameter where the apdu is constructed
  1184         * @param aDataPackage: data containing authentication parameters
  1172         * @param aDataPackage: data containing authentication parameters
  1185         * @return void: none
  1173         * @return void: none
  1186         */
  1174         */
  1187         void UiccCreateMbmsMskDeletionApdu(
  1175         void UiccCreateMbmsMskDeletionApdu(
  1188             TUiccSendApdu& params, 
  1176             TUiccSendApdu& params,
  1189             const CMmDataPackage& aDataPackage );
  1177             const CMmDataPackage& aDataPackage );
  1190 
  1178 
  1191         /**
  1179         /**
  1192         * Handles response APDU for MBMS security context AUTHENTICATE 
  1180         * Handles response APDU for MBMS security context AUTHENTICATE
  1193         * APDU (MSK Deletion Mode)
  1181         * APDU (MSK Deletion Mode)
  1194         * @param aStatus: status of the response
  1182         * @param aStatus: status of the response
  1195         * @param aFileData: response apdu
  1183         * @param aFileData: response apdu
  1196         * @return void: none
  1184         * @return void: none
  1197         */
  1185         */
  1205         * @return void: none
  1193         * @return void: none
  1206         */
  1194         */
  1207         void CMmCustomMessHandler::UiccCreateFirstBlockOfAuthRespApdu( TUiccTrId aTrId );
  1195         void CMmCustomMessHandler::UiccCreateFirstBlockOfAuthRespApdu( TUiccTrId aTrId );
  1208 
  1196 
  1209         /**
  1197         /**
  1210         * Maps sw1 and sw2 from response authenticate apdu to result 
  1198         * Maps sw1 and sw2 from response authenticate apdu to result
  1211         * @param sw1: status of the response
  1199         * @param sw1: status of the response
  1212         * @param sw2: response apdu
  1200         * @param sw2: response apdu
  1213         * @return TUint8: command result
  1201         * @return TUint8: command result
  1214         */
  1202         */
  1215         TUint8 MapSw1Sw2ToAuthenticateResult( TUint8 sw1, TUint8 sw2 );
  1203         TUint8 MapSw1Sw2ToAuthenticateResult( TUint8 sw1, TUint8 sw2 );
  1216 
  1204 
  1217         /**
  1205         /**
  1218         * Validates received apdu
  1206         * Validates received apdu
  1219         * @param aTraId: Identifies the apdu
  1207         * @param aTraId: Identifies the apdu
  1220         * @param aApdu: APDU to be verified
  1208         * @param aApdu: APDU to be verified
  1221         * @return TUint8: KApduOk if verified successfully, 
  1209         * @return TUint8: KApduOk if verified successfully,
  1222         *                 otherwise KApduNok
  1210         *                 otherwise KApduNok
  1223         */
  1211         */
  1224         TUint8 ValidateReceivedAuthenticateApdu( 
  1212         TUint8 ValidateReceivedAuthenticateApdu(
  1225             TInt aTraId, 
  1213             TInt aTraId,
  1226             const TDesC8& aApdu );
  1214             const TDesC8& aApdu );
  1227 
  1215 
  1228         /**
  1216         /**
  1229         * Validates received gsm security context apdu for authenticate
  1217         * Validates received gsm security context apdu for authenticate
  1230         * @param aApdu: APDU to be verified
  1218         * @param aApdu: APDU to be verified
  1231         * @return TUint8: KApduOk if verified successfully, 
  1219         * @return TUint8: KApduOk if verified successfully,
  1232         *                 otherwise KApduNok
  1220         *                 otherwise KApduNok
  1233         */
  1221         */
  1234         TUint8 ValidateGsmSecurityContextApduResp( const TDesC8& aApdu );
  1222         TUint8 ValidateGsmSecurityContextApduResp( const TDesC8& aApdu );
  1235 
  1223 
  1236         /**
  1224         /**
  1237         * Validates received 3G security context apdu for authenticate
  1225         * Validates received 3G security context apdu for authenticate
  1238         * @param aApdu: APDU to be verified
  1226         * @param aApdu: APDU to be verified
  1239         * @return TUint8: KApduOk if verified successfully, 
  1227         * @return TUint8: KApduOk if verified successfully,
  1240         *                 otherwise KApduNok
  1228         *                 otherwise KApduNok
  1241         */
  1229         */
  1242         TUint8 Validate3GSecurityContextApduResp( const TDesC8& aApdu );
  1230         TUint8 Validate3GSecurityContextApduResp( const TDesC8& aApdu );
  1243 
  1231 
  1244         /**
  1232         /**
  1245         * Validates received GBA security context apdu (GBA bootstrapping mode)
  1233         * Validates received GBA security context apdu (GBA bootstrapping mode)
  1246         * for authenticate
  1234         * for authenticate
  1247         * @param aApdu: APDU to be verified
  1235         * @param aApdu: APDU to be verified
  1248         * @return TUint8: KApduOk if verified successfully, 
  1236         * @return TUint8: KApduOk if verified successfully,
  1249         *                 otherwise KApduNok
  1237         *                 otherwise KApduNok
  1250         */
  1238         */
  1251         TUint8 ValidateGBABootstrappingApduResp( const TDesC8& aApdu );
  1239         TUint8 ValidateGBABootstrappingApduResp( const TDesC8& aApdu );
  1252 
  1240 
  1253         /**
  1241         /**
  1254         * Validates received GBA security context apdu (GBA NAF derivation mode)
  1242         * Validates received GBA security context apdu (GBA NAF derivation mode)
  1255         * for authenticate
  1243         * for authenticate
  1256         * @param aApdu: APDU to be verified
  1244         * @param aApdu: APDU to be verified
  1257         * @return TUint8: KApduOk if verified successfully, 
  1245         * @return TUint8: KApduOk if verified successfully,
  1258         *                 otherwise KApduNok
  1246         *                 otherwise KApduNok
  1259         */
  1247         */
  1260         TUint8 ValidateGBANafDerivationApduResp( const TDesC8& aApdu );
  1248         TUint8 ValidateGBANafDerivationApduResp( const TDesC8& aApdu );
  1261 
  1249 
  1262         /**
  1250         /**
  1263         * Validates received RUN GSM ALGORITHM apdu for authenticate
  1251         * Validates received RUN GSM ALGORITHM apdu for authenticate
  1264         * @param aApdu: APDU to be verified
  1252         * @param aApdu: APDU to be verified
  1265         * @return TUint8: KApduOk if verified successfully, 
  1253         * @return TUint8: KApduOk if verified successfully,
  1266         *                 otherwise KApduNok
  1254         *                 otherwise KApduNok
  1267         */
  1255         */
  1268         TUint8 ValidateRunGsmAlgorithmApduResp( const TDesC8& aApdu );
  1256         TUint8 ValidateRunGsmAlgorithmApduResp( const TDesC8& aApdu );
  1269 
  1257 
  1270         /**
  1258         /**
  1286         * @param aMskUpdate: parameters from MBMS operation data are
  1274         * @param aMskUpdate: parameters from MBMS operation data are
  1287         *                    inserted to aMskUpdate
  1275         *                    inserted to aMskUpdate
  1288         * @param aMbmsData: APDU data
  1276         * @param aMbmsData: APDU data
  1289         * @return void: none
  1277         * @return void: none
  1290         */
  1278         */
  1291         void UiccMskUpdateHandleOMABcastOperationData( 
  1279         void UiccMskUpdateHandleOMABcastOperationData(
  1292             RMmCustomAPI::TSimAuthenticationMgvMskUpdate& aMskUpdate,
  1280             RMmCustomAPI::TSimAuthenticationMgvMskUpdate& aMskUpdate,
  1293             TDesC8& aMbmsData );
  1281             TDesC8& aMbmsData );
  1294 
  1282 
  1295         /**
  1283         /**
  1296         * Handles MBMS operation data from received MTK Generation
  1284         * Handles MBMS operation data from received MTK Generation
  1298         * @param aMskUpdate: parameters from MBMS operation data are
  1286         * @param aMskUpdate: parameters from MBMS operation data are
  1299         *                    inserted to aMskUpdate
  1287         *                    inserted to aMskUpdate
  1300         * @param aMbmsData: APDU data
  1288         * @param aMbmsData: APDU data
  1301         * @return void: none
  1289         * @return void: none
  1302         */
  1290         */
  1303         void UiccMtkGenHandleMbmsOperationData( 
  1291         void UiccMtkGenHandleMbmsOperationData(
  1304             RMmCustomAPI::TSimAuthenticationMgvMtkGeneration& aMtkGen,
  1292             RMmCustomAPI::TSimAuthenticationMgvMtkGeneration& aMtkGen,
  1305             TDesC8& aMbmsData );
  1293             TDesC8& aMbmsData );
  1306 
  1294 
  1307         /**
  1295         /**
  1308         * Handles OMA BCAST operation data from received MTK Generation
  1296         * Handles OMA BCAST operation data from received MTK Generation
  1310         * @param aMtkGen: parameters from MBMS operation data are
  1298         * @param aMtkGen: parameters from MBMS operation data are
  1311         *                    inserted to aMtkGen
  1299         *                    inserted to aMtkGen
  1312         * @param aMbmsData: APDU data
  1300         * @param aMbmsData: APDU data
  1313         * @return void: none
  1301         * @return void: none
  1314         */
  1302         */
  1315         void UiccMtkGenHandleOMABcastOperationData( 
  1303         void UiccMtkGenHandleOMABcastOperationData(
  1316             RMmCustomAPI::TSimAuthenticationMgvMtkGeneration& aMtkGen,
  1304             RMmCustomAPI::TSimAuthenticationMgvMtkGeneration& aMtkGen,
  1317             TDesC8& aMbmsData );
  1305             TDesC8& aMbmsData );
  1318 
  1306 
  1319         /**
  1307         /**
  1320         * Finds tlv objects from BER TLV object
  1308         * Finds tlv objects from BER TLV object
  1321         * @param aTlvTag: tag of teh tlv object to be search
  1309         * @param aTlvTag: tag of teh tlv object to be search
  1322         * @param aBerTlv: BER TLV object where to search
  1310         * @param aBerTlv: BER TLV object where to search
  1323         * @param aTlvObject: tlv object data is copied to this 
  1311         * @param aTlvObject: tlv object data is copied to this
  1324         *                    parameter, if it's found
  1312         *                    parameter, if it's found
  1325         * @return TBool: ETrue if tlv object found, otherwise EFalse
  1313         * @return TBool: ETrue if tlv object found, otherwise EFalse
  1326         */
  1314         */
  1327         TBool FindTlvObject(
  1315         TBool FindTlvObject(
  1328             TUint8 aTlvTag,
  1316             TUint8 aTlvTag,
  1335         * 3GPP TS 33.102 v3.8.0 (Release 1999).
  1323         * 3GPP TS 33.102 v3.8.0 (Release 1999).
  1336         * @param aCk: Result is inserted to this parameter
  1324         * @param aCk: Result is inserted to this parameter
  1337         * @param aKc:     Kc which is used in calculation
  1325         * @param aKc:     Kc which is used in calculation
  1338         * @return void: none
  1326         * @return void: none
  1339         */
  1327         */
  1340         void DeriveCkFromKc( 
  1328         void DeriveCkFromKc(
  1341             TDes8& aCk,
  1329             TDes8& aCk,
  1342             const TDesC8& aKc );
  1330             const TDesC8& aKc );
  1343 
  1331 
  1344         /** derives the UMTS Integrity Key (IK) from the GSM
  1332         /** derives the UMTS Integrity Key (IK) from the GSM
  1345         * Ciphering Key (Kc). This is done by using the c5 algorithm defined in
  1333         * Ciphering Key (Kc). This is done by using the c5 algorithm defined in