482 lines
12 KiB
Plaintext
482 lines
12 KiB
Plaintext
/* SGP32 Templates in TTCN-3
|
|
*
|
|
* Author: Philipp Maier <pmaier@sysmocom.de> / sysmocom - s.f.m.c. GmbH
|
|
*
|
|
* Released under the terms of GNU General Public License, Version 2 or
|
|
* (at your option) any later version.
|
|
*
|
|
* SPDX-License-Identifier: GPL-2.0-or-later
|
|
*/
|
|
|
|
module SGP32Definitions_Templates {
|
|
|
|
import from SGP32Definitions all;
|
|
import from SGP32Definitions_Types all;
|
|
|
|
import from RSPDefinitions all;
|
|
import from RSPDefinitions_Types all;
|
|
import from RSPDefinitions_Templates all;
|
|
|
|
import from PKIX1Explicit88 all;
|
|
import from PKIX1Explicit88_Templates all;
|
|
import from PKIX1Explicit88_Types all;
|
|
|
|
/* GSMA SGP.32, section 6.3.2.1 */
|
|
template (present) EsipaMessageFromEimToIpa
|
|
tr_initiateAuthenticationResponseEsipa(template (present) octetstring euiccChallenge := ?,
|
|
template (present) universal charstring serverAddress := ?) := {
|
|
initiateAuthenticationResponseEsipa := {
|
|
initiateAuthenticationOkEsipa := {
|
|
transactionId := *,
|
|
serverSigned1 := {
|
|
transactionId := ?,
|
|
euiccChallenge := euiccChallenge,
|
|
serverAddress := serverAddress,
|
|
serverChallenge := ?
|
|
},
|
|
serverSignature1 := ?,
|
|
euiccCiPKIdToBeUsed := ?,
|
|
serverCertificate := ?,
|
|
matchingId := *,
|
|
ctxParams1 := *
|
|
}
|
|
}
|
|
}
|
|
|
|
template (value) EsipaMessageFromEimToIpa
|
|
ts_initiateAuthenticationResponseEsipa(template (value) octetstring euiccChallenge := '00112233445566778899AABBCCDDEEFF'O,
|
|
template (value) universal charstring serverAddress := "smdp.example.com") := {
|
|
initiateAuthenticationResponseEsipa := {
|
|
initiateAuthenticationOkEsipa := {
|
|
transactionId := omit,
|
|
serverSigned1 := {
|
|
transactionId := 'ABCDEF'O,
|
|
euiccChallenge := euiccChallenge,
|
|
serverAddress := "smdp.example.com",
|
|
serverChallenge := '01020304050607080910111213141516'O
|
|
},
|
|
serverSignature1 := '01020304'O,
|
|
euiccCiPKIdToBeUsed := 'F54172BDF98A95D65CBEB88A38A1C11D800A85C3'O, /* NIST */
|
|
serverCertificate := ts_cert_s_sm_dpauth_nist,
|
|
// serverCertificate := ts_cert_s_sm_dpauth_brp,
|
|
// serverCertificate := ts_cert_s_sm_dp2auth_nist,
|
|
// serverCertificate := ts_cert_s_sm_dp2auth_brp,
|
|
matchingId := omit,
|
|
ctxParams1 := omit
|
|
}
|
|
}
|
|
}
|
|
|
|
/* GSMA SGP.32, section 6.3.2.1 */
|
|
template (present) EsipaMessageFromIpaToEim
|
|
tr_initiateAuthenticationRequestEsipa(template (present) octetstring euiccChallenge := ?) := {
|
|
initiateAuthenticationRequestEsipa := {
|
|
euiccChallenge := euiccChallenge,
|
|
smdpAddress := *,
|
|
euiccInfo1 := *
|
|
}
|
|
}
|
|
template (value) EsipaMessageFromIpaToEim
|
|
ts_initiateAuthenticationRequestEsipa(template (value) octetstring euiccChallenge := '00112233445566778899aabbccddeeff'O,
|
|
template (omit) charstring smdpAddress := "smdp.example.com",
|
|
template (omit) EUICCInfo1 euiccInfo1 := ts_EUICCInfo1) := {
|
|
initiateAuthenticationRequestEsipa := {
|
|
euiccChallenge := euiccChallenge,
|
|
smdpAddress := smdpAddress,
|
|
euiccInfo1 := euiccInfo1
|
|
}
|
|
}
|
|
|
|
/* GSMA SGP.32, section 6.3.2.2 */
|
|
template (present) EsipaMessageFromIpaToEim
|
|
tr_authenticateClientRequestEsipa := {
|
|
authenticateClientRequestEsipa := {
|
|
transactionId := ?,
|
|
authenticateServerResponse := {
|
|
authenticateResponseOk := ?
|
|
}
|
|
}
|
|
}
|
|
/* TODO: create coresponding ts_ template */
|
|
|
|
/* GSMA SGP.32, section 6.3.2.2 */
|
|
template (present) EsipaMessageFromEimToIpa
|
|
tr_authenticateClientResponseEsipa_dse(template (present) octetstring transactionId := ?,
|
|
template (present) charstring activationCode := ?) := {
|
|
authenticateClientResponseEsipa := {
|
|
authenticateClientOkDSEsipa := {
|
|
transactionId := transactionId,
|
|
profileDownloadTrigger := {
|
|
profileDownloadData := {
|
|
activationCode := ?
|
|
},
|
|
eimTransactionId := *
|
|
}
|
|
}
|
|
}
|
|
}
|
|
template (value) EsipaMessageFromEimToIpa
|
|
ts_authenticateClientResponseEsipa_dse(template (value) octetstring transactionId := 'ABCDEF'O,
|
|
template (value) charstring activationCode := "1$SMDP.EXAMPLE.COM$$1.3.6.1.4.1.31746") := {
|
|
authenticateClientResponseEsipa := {
|
|
authenticateClientOkDSEsipa := {
|
|
transactionId := transactionId,
|
|
profileDownloadTrigger := {
|
|
profileDownloadData := {
|
|
activationCode := activationCode
|
|
},
|
|
eimTransactionId := omit
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
/* GSMA SGP.32, section 6.3.2.2 */
|
|
template (present) EsipaMessageFromEimToIpa
|
|
tr_authenticateClientResponseEsipa_dpe(template (present) octetstring transactionId := ?) := {
|
|
authenticateClientResponseEsipa := {
|
|
authenticateClientOkDPEsipa := {
|
|
transactionId := transactionId,
|
|
profileMetaData := *,
|
|
smdpSigned2 := {
|
|
transactionId := ?,
|
|
ccRequiredFlag := ?,
|
|
bppEuiccOtpk := *
|
|
},
|
|
smdpSignature2 := ?,
|
|
smdpCertificate := ?,
|
|
hashCc := *
|
|
}
|
|
}
|
|
}
|
|
template (value) EsipaMessageFromEimToIpa
|
|
ts_authenticateClientResponseEsipa_dpe(template (value) octetstring transactionId := 'ABCDEF'O) := {
|
|
authenticateClientResponseEsipa := {
|
|
authenticateClientOkDPEsipa := {
|
|
transactionId := transactionId,
|
|
profileMetaData := omit,
|
|
smdpSigned2 := {
|
|
transactionId := transactionId,
|
|
ccRequiredFlag := false,
|
|
bppEuiccOtpk := omit
|
|
},
|
|
smdpSignature2 := 'AAAAAAAAAAAAAAAAAAAAAAAA'O,
|
|
smdpCertificate := ts_cert_s_sm_dpauth_nist,
|
|
// smdpCertificate := ts_cert_s_sm_dpauth_brp,
|
|
// smdpCertificate := ts_cert_s_sm_dp2auth_nist,
|
|
// smdpCertificate := ts_cert_s_sm_dp2auth_brp,
|
|
hashCc := omit
|
|
}
|
|
}
|
|
}
|
|
|
|
/* GSMA SGP.32, section 6.3.2.6 */
|
|
template (present) EsipaMessageFromIpaToEim
|
|
tr_getEimPackageRequest(template (present) octetstring eidValue := ?) := {
|
|
getEimPackageRequest := {
|
|
eidValue := eidValue,
|
|
notifyStateChange := *,
|
|
rPLMN := *
|
|
}
|
|
}
|
|
template (value) EsipaMessageFromIpaToEim
|
|
ts_getEimPackageRequest(template (value) octetstring eidValue) := {
|
|
getEimPackageRequest := {
|
|
eidValue := eidValue,
|
|
notifyStateChange := omit,
|
|
rPLMN := omit
|
|
}
|
|
}
|
|
|
|
/* GSMA SGP.32, section 6.3.2.6 and 2.11.1.3 */
|
|
template (present) EsipaMessageFromEimToIpa
|
|
tr_getEimPackageResponse_dnlTrigReq(template (present) charstring activationCode := ?) := {
|
|
getEimPackageResponse := {
|
|
profileDownloadTriggerRequest := {
|
|
profileDownloadData := {
|
|
activationCode := activationCode
|
|
},
|
|
eimTransactionId := *
|
|
}
|
|
}
|
|
}
|
|
template (value) EsipaMessageFromEimToIpa
|
|
ts_getEimPackageResponse_dnlTrigReq(template (value) charstring activationCode := "1$SMDP.EXAMPLE.COM$$1.3.6.1.4.1.31746") := {
|
|
getEimPackageResponse := {
|
|
profileDownloadTriggerRequest := {
|
|
profileDownloadData := {
|
|
activationCode := activationCode
|
|
},
|
|
eimTransactionId := omit
|
|
}
|
|
}
|
|
}
|
|
|
|
/* GSMA SGP.32, section 6.3.2.6 and 2.11.1.2 */
|
|
template (present) EsipaMessageFromEimToIpa
|
|
tr_getEimPackageResponse_euiccDataReq := {
|
|
getEimPackageResponse := {
|
|
ipaEuiccDataRequest := {
|
|
tagList := ?,
|
|
euiccCiPKId := *,
|
|
searchCriteria := *
|
|
}
|
|
}
|
|
}
|
|
template (value) EsipaMessageFromEimToIpa
|
|
ts_getEimPackageResponse_euiccDataReq := {
|
|
getEimPackageResponse := {
|
|
ipaEuiccDataRequest := {
|
|
tagList := '80BF20BF228384A5A688A9BF2B'O,
|
|
euiccCiPKId := omit,
|
|
searchCriteria := omit
|
|
}
|
|
}
|
|
}
|
|
|
|
/* GSMA SGP.32, section 6.3.2.6 */
|
|
template (present) EsipaMessageFromEimToIpa
|
|
tr_getEimPackageResponse_eimPkgErrUndef := {
|
|
getEimPackageResponse := {
|
|
eimPackageError := ?
|
|
}
|
|
}
|
|
template (value) EsipaMessageFromEimToIpa
|
|
ts_getEimPackageResponse_eimPkgErrUndef := {
|
|
getEimPackageResponse := {
|
|
eimPackageError := 127
|
|
}
|
|
}
|
|
|
|
/* GSMA SGP.32, section 6.3.2.6 */
|
|
template (value) EsipaMessageFromEimToIpa
|
|
ts_getEimPackageResponse_euiccPkgReq := {
|
|
getEimPackageResponse := {
|
|
euiccPackageRequest := {
|
|
euiccPackageSigned := {
|
|
eimId := "myEim",
|
|
eidValue := '00112233445566778899AABBCCDDEEFF'O,
|
|
counterValue := 123,
|
|
transactionId := omit,
|
|
euiccPackage := {
|
|
psmoList := {
|
|
{
|
|
enable := {
|
|
iccid := '123456789ABCDEFFAAAA'O,
|
|
rollbackFlag := NULL
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
eimSignature := '1234567890'O
|
|
}
|
|
}
|
|
}
|
|
|
|
/* GSMA SGP.32, section 6.3.2.5 */
|
|
template (present) EsipaMessageFromIpaToEim
|
|
tr_cancelSessionRequestEsipa := {
|
|
cancelSessionRequestEsipa := {
|
|
transactionId := ?,
|
|
cancelSessionResponse := {
|
|
cancelSessionResponseOk := tr_cancelSessionResponseOk
|
|
}
|
|
}
|
|
}
|
|
template (value) EsipaMessageFromIpaToEim
|
|
ts_cancelSessionRequestEsipa := {
|
|
cancelSessionRequestEsipa := {
|
|
transactionId := 'AABBCC'O,
|
|
cancelSessionResponse := {
|
|
cancelSessionResponseOk := ts_cancelSessionResponseOk
|
|
}
|
|
}
|
|
}
|
|
|
|
/* GSMA SGP.32, section 6.3.2.5 */
|
|
template (present) EsipaMessageFromEimToIpa
|
|
tr_cancelSessionResponseEsipa := {
|
|
cancelSessionResponseEsipa := {
|
|
cancelSessionOk := {
|
|
/* This function has no output data */
|
|
}
|
|
}
|
|
}
|
|
template (value) EsipaMessageFromEimToIpa
|
|
ts_cancelSessionResponseEsipa := {
|
|
cancelSessionResponseEsipa := {
|
|
cancelSessionOk := {
|
|
/* This function has no output data */
|
|
}
|
|
}
|
|
}
|
|
|
|
/* GSMA SGP.32, section 6.3.2.3 */
|
|
template (present) EsipaMessageFromEimToIpa
|
|
tr_getBoundProfilePackageResponseEsipa := {
|
|
getBoundProfilePackageResponseEsipa := {
|
|
getBoundProfilePackageOkEsipa := {
|
|
transactionId := *,
|
|
boundProfilePackage := tr_boundProfilePackage
|
|
}
|
|
}
|
|
}
|
|
template (value) EsipaMessageFromEimToIpa
|
|
ts_getBoundProfilePackageResponseEsipa := {
|
|
getBoundProfilePackageResponseEsipa := {
|
|
getBoundProfilePackageOkEsipa := {
|
|
transactionId := omit,
|
|
boundProfilePackage := ts_boundProfilePackage
|
|
}
|
|
}
|
|
}
|
|
|
|
/* GSMA SGP.32, section 5.9.1 */
|
|
template (present) EuiccPackageResult
|
|
tr_euiccPackageResult := {
|
|
euiccPackageResultSigned := {
|
|
euiccPackageResultDataSigned := {
|
|
eimId := ?,
|
|
counterValue := ?,
|
|
transactionId := *,
|
|
seqNumber := ?,
|
|
euiccResult := ?
|
|
},
|
|
euiccSignEPR := ?
|
|
}
|
|
}
|
|
template (value) EuiccPackageResult
|
|
ts_euiccPackageResult := {
|
|
euiccPackageResultSigned := {
|
|
euiccPackageResultDataSigned := {
|
|
eimId := "myEim",
|
|
counterValue := 333,
|
|
transactionId := omit,
|
|
seqNumber := 1234,
|
|
euiccResult := {
|
|
{
|
|
enableResult := 0
|
|
}
|
|
}
|
|
},
|
|
euiccSignEPR := 'AABBCCDDEEFF'O
|
|
}
|
|
}
|
|
|
|
/* GSMA SGP.32, section 6.3.2.7 */
|
|
template (present) EsipaMessageFromIpaToEim
|
|
tr_provideEimPackageResult_ePRAndNotif := {
|
|
provideEimPackageResult := {
|
|
ePRAndNotifications := {
|
|
euiccPackageResult := ?,
|
|
notificationList := ?
|
|
}
|
|
}
|
|
}
|
|
template (present) EsipaMessageFromEimToIpa
|
|
tr_provideEimPackageResultResponse_eimAck := {
|
|
provideEimPackageResultResponse := {
|
|
eimAcknowledgements := *
|
|
}
|
|
}
|
|
template (value) EsipaMessageFromEimToIpa
|
|
ts_provideEimPackageResultResponse_eimAck(template (value) EimAcknowledgements eimAcknowledgements := {}) := {
|
|
provideEimPackageResultResponse := {
|
|
eimAcknowledgements := eimAcknowledgements
|
|
}
|
|
}
|
|
|
|
/* GSMA SGP.32, section 2.11.1.2 */
|
|
template (present) GetCertsResponse
|
|
tr_getCertsResponse := {
|
|
certs := {
|
|
eumCertificate := ?,
|
|
euiccCertificate := ?
|
|
}
|
|
}
|
|
template (value) GetCertsResponse
|
|
ts_getCertsResponse := {
|
|
certs := {
|
|
eumCertificate := ts_cert_s_sm_dpauth_nist,
|
|
euiccCertificate := ts_cert_eum_nist
|
|
}
|
|
}
|
|
|
|
/* GSMA SGP.32, section 5.9.18 */
|
|
template (present) GetEimConfigurationDataResponse
|
|
tr_getEimConfigurationDataResponse := {
|
|
eimConfigurationDataList := ?
|
|
}
|
|
template (value) GetEimConfigurationDataResponse
|
|
ts_getEimConfigurationDataResponse(template (value) charstring eimFqdn := "127.0.0.1") := {
|
|
eimConfigurationDataList := {
|
|
{
|
|
eimId := "myEIM",
|
|
eimFqdn := eimFqdn,
|
|
eimIdType := omit,
|
|
counterValue := omit,
|
|
associationToken := 123,
|
|
eimPublicKeyData := omit,
|
|
trustedPublicKeyDataTls := omit,
|
|
eimSupportedProtocol := omit,
|
|
euiccCiPKId := omit
|
|
}
|
|
}
|
|
}
|
|
|
|
/* GSMA SGP.32, section 5.9.4 */
|
|
template (present) AddInitialEimResponse
|
|
tr_addInitialEimResponse := {
|
|
addInitialEimOk := ?
|
|
}
|
|
template (value) AddInitialEimResponse
|
|
ts_addInitialEimResponse := {
|
|
addInitialEimOk := {
|
|
{
|
|
addOk := NULL
|
|
}
|
|
}
|
|
}
|
|
|
|
/* GSMA SGP.32, section 5.9.16 */
|
|
template (present) ProfileRollbackRequest
|
|
tr_profileRollbackRequest := {
|
|
refreshFlag := ?
|
|
}
|
|
template (value) ProfileRollbackRequest
|
|
ts_profileRollbackRequest := {
|
|
refreshFlag := false
|
|
}
|
|
template (present) ProfileRollbackResponse
|
|
tr_profileRollbackResponse := {
|
|
cmdResult := ?,
|
|
eUICCPackageResult := ?
|
|
}
|
|
template (value) ProfileRollbackResponse
|
|
ts_profileRollbackResponse := {
|
|
cmdResult := 0,
|
|
eUICCPackageResult := {
|
|
euiccPackageResultSigned := {
|
|
euiccPackageResultDataSigned := {
|
|
eimId := "myEim",
|
|
counterValue := 333,
|
|
transactionId := omit,
|
|
seqNumber := 1234,
|
|
euiccResult := {
|
|
{
|
|
enableResult := 0
|
|
},
|
|
{
|
|
rollbackResult := 0
|
|
}
|
|
}
|
|
},
|
|
euiccSignEPR := 'AABBCCDDEEFF'O
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
}
|