jolly has uploaded this change for review.

View Change

V1.2: Add eimValue to CompactOtherSignedNotification

The IPA just forwards the message, so no change in process is required.

Reference: SGP.23 Section 5.14.7

Related: SYS#8101
Change-Id: I0183ef6555d23d762e6c8fa8584453b3a07d4940
---
M asn1/SGP32Definitions.asn
M src/ipa/libasn/CompactOtherSignedNotification.c
M src/ipa/libasn/CompactOtherSignedNotification.h
3 files changed, 22 insertions(+), 7 deletions(-)

git pull ssh://gerrit.osmocom.org:29418/onomondo-ipa refs/changes/71/43071/1
diff --git a/asn1/SGP32Definitions.asn b/asn1/SGP32Definitions.asn
index f67fc4d..d7155c8 100644
--- a/asn1/SGP32Definitions.asn
+++ b/asn1/SGP32Definitions.asn
@@ -836,6 +836,7 @@
simaResponse OCTET STRING OPTIONAL -- MUST be present if the simaResponse value (EUICCResponse) is different from the 9-byte value ‘30 07 A0 05 30 03 80 01 00’ representing success
}
CompactOtherSignedNotification ::= SEQUENCE {
+ eidValue [APPLICATION 26] Octet16 OPTIONAL, -- Tag '5A'
tbsOtherNotification NotificationMetadata,
euiccNotificationSignature [APPLICATION 55] OCTET STRING -- eUICC signature of tbsOtherNotification, Tag '5F37'
}
diff --git a/src/ipa/libasn/CompactOtherSignedNotification.c b/src/ipa/libasn/CompactOtherSignedNotification.c
index 1fa5d4b..9406fd7 100644
--- a/src/ipa/libasn/CompactOtherSignedNotification.c
+++ b/src/ipa/libasn/CompactOtherSignedNotification.c
@@ -8,6 +8,15 @@
#include "CompactOtherSignedNotification.h"

asn_TYPE_member_t asn_MBR_CompactOtherSignedNotification_1[] = {
+ { ATF_POINTER, 1, offsetof(struct CompactOtherSignedNotification, eidValue),
+ (ASN_TAG_CLASS_APPLICATION | (26 << 2)),
+ -1, /* IMPLICIT tag at current level */
+ &asn_DEF_Octet16,
+ 0,
+ { 0, 0, 0 },
+ 0, 0, /* No default value */
+ "eidValue"
+ },
{ ATF_NOFLAGS, 0, offsetof(struct CompactOtherSignedNotification, tbsOtherNotification),
(ASN_TAG_CLASS_CONTEXT | (47 << 2)),
0,
@@ -27,20 +36,23 @@
"euiccNotificationSignature"
},
};
+static const int asn_MAP_CompactOtherSignedNotification_oms_1[] = { 0 };
static const ber_tlv_tag_t asn_DEF_CompactOtherSignedNotification_tags_1[] = {
(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
};
static const asn_TYPE_tag2member_t asn_MAP_CompactOtherSignedNotification_tag2el_1[] = {
- { (ASN_TAG_CLASS_APPLICATION | (55 << 2)), 1, 0, 0 }, /* euiccNotificationSignature */
- { (ASN_TAG_CLASS_CONTEXT | (47 << 2)), 0, 0, 0 } /* tbsOtherNotification */
+ { (ASN_TAG_CLASS_APPLICATION | (26 << 2)), 0, 0, 0 }, /* eidValue */
+ { (ASN_TAG_CLASS_APPLICATION | (55 << 2)), 2, 0, 0 }, /* euiccNotificationSignature */
+ { (ASN_TAG_CLASS_CONTEXT | (47 << 2)), 1, 0, 0 } /* tbsOtherNotification */
};
asn_SEQUENCE_specifics_t asn_SPC_CompactOtherSignedNotification_specs_1 = {
sizeof(struct CompactOtherSignedNotification),
offsetof(struct CompactOtherSignedNotification, _asn_ctx),
asn_MAP_CompactOtherSignedNotification_tag2el_1,
- 2, /* Count of tags in the map */
- 0, 0, 0, /* Optional elements (not needed) */
- 2, /* First extension addition */
+ 3, /* Count of tags in the map */
+ asn_MAP_CompactOtherSignedNotification_oms_1, /* Optional members */
+ 1, 0, /* Root/Additions */
+ 3, /* First extension addition */
};
asn_TYPE_descriptor_t asn_DEF_CompactOtherSignedNotification = {
"CompactOtherSignedNotification",
@@ -54,7 +66,7 @@
/sizeof(asn_DEF_CompactOtherSignedNotification_tags_1[0]), /* 1 */
{ 0, 0, SEQUENCE_constraint },
asn_MBR_CompactOtherSignedNotification_1,
- 2, /* Elements count */
+ 3, /* Elements count */
&asn_SPC_CompactOtherSignedNotification_specs_1 /* Additional specs */
};

diff --git a/src/ipa/libasn/CompactOtherSignedNotification.h b/src/ipa/libasn/CompactOtherSignedNotification.h
index c6067cf..9747ba4 100644
--- a/src/ipa/libasn/CompactOtherSignedNotification.h
+++ b/src/ipa/libasn/CompactOtherSignedNotification.h
@@ -12,6 +12,7 @@
#include <asn_application.h>

/* Including external dependencies */
+#include "Octet16.h"
#include "NotificationMetadata.h"
#include <OCTET_STRING.h>
#include <constr_SEQUENCE.h>
@@ -22,6 +23,7 @@

/* CompactOtherSignedNotification */
typedef struct CompactOtherSignedNotification {
+ Octet16_t *eidValue /* OPTIONAL */;
NotificationMetadata_t tbsOtherNotification;
OCTET_STRING_t euiccNotificationSignature;
/*
@@ -36,7 +38,7 @@
/* Implementation */
extern asn_TYPE_descriptor_t asn_DEF_CompactOtherSignedNotification;
extern asn_SEQUENCE_specifics_t asn_SPC_CompactOtherSignedNotification_specs_1;
-extern asn_TYPE_member_t asn_MBR_CompactOtherSignedNotification_1[2];
+extern asn_TYPE_member_t asn_MBR_CompactOtherSignedNotification_1[3];

#ifdef __cplusplus
}

To view, visit change 43071. To unsubscribe, or for help writing mail filters, visit settings.

Gerrit-MessageType: newchange
Gerrit-Project: onomondo-ipa
Gerrit-Branch: master
Gerrit-Change-Id: I0183ef6555d23d762e6c8fa8584453b3a07d4940
Gerrit-Change-Number: 43071
Gerrit-PatchSet: 1
Gerrit-Owner: jolly <andreas@eversberg.eu>