jolly has uploaded this change for review. ( 
https://gerrit.osmocom.org/c/onomondo-ipa/+/43050?usp=email )


Change subject: V1.2: Add SGP.32-custom AuthenticateClientRequest
......................................................................

V1.2: Add SGP.32-custom AuthenticateClientRequest

Add new AuthenticateClientRequest, which overrides and expands
AuthenticateClientRequest from SGP.22. There is no impact on IPA
process, because it is not used.

Reference: SGP.32 Section 5.6.1

Related: SYS#8101
Change-Id: I0003994fb82f8bbccb4de19946bbba975c98ef04
---
M asn1/SGP32Definitions.asn
M src/ipa/libasn/CMakeLists.txt
A src/ipa/libasn/SGP32-AuthenticateClientRequest.c
A src/ipa/libasn/SGP32-AuthenticateClientRequest.h
A src/ipa/libasn/SGP32-RemoteProfileProvisioningRequest.c
A src/ipa/libasn/SGP32-RemoteProfileProvisioningRequest.h
6 files changed, 296 insertions(+), 0 deletions(-)



  git pull ssh://gerrit.osmocom.org:29418/onomondo-ipa refs/changes/50/43050/1

diff --git a/asn1/SGP32Definitions.asn b/asn1/SGP32Definitions.asn
index aea5a52..e4e193c 100644
--- a/asn1/SGP32Definitions.asn
+++ b/asn1/SGP32Definitions.asn
@@ -438,6 +438,23 @@
 }
 -- ASN1STOP

+-- Because AuthenticateClientRequest has changed in SGP.32, we need to change 
this too.
+SGP32-RemoteProfileProvisioningRequest ::= [2] CHOICE { -- Tag 'A2'
+   initiateAuthenticationRequest [57] InitiateAuthenticationRequest, -- Tag 
'BF39'
+   authenticateClientRequest [59] SGP32-AuthenticateClientRequest, -- Tag 
'BF3B'
+   getBoundProfilePackageRequest [58] GetBoundProfilePackageRequest, -- Tag 
'BF3A'
+   cancelSessionRequestEs9 [65] CancelSessionRequestEs9, -- Tag 'BF41'
+   handleNotification [61] HandleNotification -- tag 'BF3D'
+}
+
+-- Section 5.6.1
+-- ASN1START
+SGP32-AuthenticateClientRequest ::= [59] SEQUENCE { -- Tag 'BF3B'
+  transactionId [0] TransactionId,
+  authenticateServerResponse [56] AuthenticateServerResponse -- This is the 
response from ES10b.AuthenticateServer
+}
+-- ASN1STOP
+
 -- Section 5.9.2
 -- ASN1START
 SGP32-EUICCInfo2 ::= [34] SEQUENCE { -- Tag 'BF22'
diff --git a/src/ipa/libasn/CMakeLists.txt b/src/ipa/libasn/CMakeLists.txt
index cb1999c..5a3dad1 100644
--- a/src/ipa/libasn/CMakeLists.txt
+++ b/src/ipa/libasn/CMakeLists.txt
@@ -822,6 +822,8 @@
 SetNicknameRequest.h
 SetNicknameResponse.c
 SetNicknameResponse.h
+SGP32-AuthenticateClientRequest.c
+SGP32-AuthenticateClientRequest.h
 SGP32-AuthenticateServerResponse.c
 SGP32-AuthenticateServerResponse.h
 SGP32-CancelSessionOk.c
@@ -846,6 +848,8 @@
 SGP32-ProfileInfoListResponse.h
 SGP32-ProfileInstallationResult.c
 SGP32-ProfileInstallationResult.h
+SGP32-RemoteProfileProvisioningRequest.c
+SGP32-RemoteProfileProvisioningRequest.h
 SGP32-RetrieveNotificationsListRequest.c
 SGP32-RetrieveNotificationsListRequest.h
 SGP32-RetrieveNotificationsListResponse.c
diff --git a/src/ipa/libasn/SGP32-AuthenticateClientRequest.c 
b/src/ipa/libasn/SGP32-AuthenticateClientRequest.c
new file mode 100644
index 0000000..d408f76
--- /dev/null
+++ b/src/ipa/libasn/SGP32-AuthenticateClientRequest.c
@@ -0,0 +1,61 @@
+/*
+ * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
+ * From ASN.1 module "SGP32Definitions"
+ *     found in "../../../asn1/SGP32Definitions.asn"
+ *     `asn1c -fcompound-names -no-gen-example`
+ */
+
+#include "SGP32-AuthenticateClientRequest.h"
+
+asn_TYPE_member_t asn_MBR_SGP32_AuthenticateClientRequest_1[] = {
+       { ATF_NOFLAGS, 0, offsetof(struct SGP32_AuthenticateClientRequest, 
transactionId),
+               (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
+               -1,     /* IMPLICIT tag at current level */
+               &asn_DEF_TransactionId,
+               0,
+               { 0, 0, 0 },
+               0, 0, /* No default value */
+               "transactionId"
+               },
+       { ATF_NOFLAGS, 0, offsetof(struct SGP32_AuthenticateClientRequest, 
authenticateServerResponse),
+               (ASN_TAG_CLASS_CONTEXT | (56 << 2)),
+               -1,     /* IMPLICIT tag at current level */
+               &asn_DEF_AuthenticateServerResponse,
+               0,
+               { 0, 0, 0 },
+               0, 0, /* No default value */
+               "authenticateServerResponse"
+               },
+};
+static const ber_tlv_tag_t asn_DEF_SGP32_AuthenticateClientRequest_tags_1[] = {
+       (ASN_TAG_CLASS_CONTEXT | (59 << 2)),
+       (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
+};
+static const asn_TYPE_tag2member_t 
asn_MAP_SGP32_AuthenticateClientRequest_tag2el_1[] = {
+    { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* transactionId */
+    { (ASN_TAG_CLASS_CONTEXT | (56 << 2)), 1, 0, 0 } /* 
authenticateServerResponse */
+};
+asn_SEQUENCE_specifics_t asn_SPC_SGP32_AuthenticateClientRequest_specs_1 = {
+       sizeof(struct SGP32_AuthenticateClientRequest),
+       offsetof(struct SGP32_AuthenticateClientRequest, _asn_ctx),
+       asn_MAP_SGP32_AuthenticateClientRequest_tag2el_1,
+       2,      /* Count of tags in the map */
+       0, 0, 0,        /* Optional elements (not needed) */
+       2,      /* First extension addition */
+};
+asn_TYPE_descriptor_t asn_DEF_SGP32_AuthenticateClientRequest = {
+       "SGP32-AuthenticateClientRequest",
+       "SGP32-AuthenticateClientRequest",
+       &asn_OP_SEQUENCE,
+       asn_DEF_SGP32_AuthenticateClientRequest_tags_1,
+       sizeof(asn_DEF_SGP32_AuthenticateClientRequest_tags_1)
+               /sizeof(asn_DEF_SGP32_AuthenticateClientRequest_tags_1[0]) - 1, 
/* 1 */
+       asn_DEF_SGP32_AuthenticateClientRequest_tags_1, /* Same as above */
+       sizeof(asn_DEF_SGP32_AuthenticateClientRequest_tags_1)
+               /sizeof(asn_DEF_SGP32_AuthenticateClientRequest_tags_1[0]), /* 
2 */
+       { 0, 0, SEQUENCE_constraint },
+       asn_MBR_SGP32_AuthenticateClientRequest_1,
+       2,      /* Elements count */
+       &asn_SPC_SGP32_AuthenticateClientRequest_specs_1        /* Additional 
specs */
+};
+
diff --git a/src/ipa/libasn/SGP32-AuthenticateClientRequest.h 
b/src/ipa/libasn/SGP32-AuthenticateClientRequest.h
new file mode 100644
index 0000000..7dae9a5
--- /dev/null
+++ b/src/ipa/libasn/SGP32-AuthenticateClientRequest.h
@@ -0,0 +1,46 @@
+/*
+ * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
+ * From ASN.1 module "SGP32Definitions"
+ *     found in "../../../asn1/SGP32Definitions.asn"
+ *     `asn1c -fcompound-names -no-gen-example`
+ */
+
+#ifndef        _SGP32_AuthenticateClientRequest_H_
+#define        _SGP32_AuthenticateClientRequest_H_
+
+
+#include <asn_application.h>
+
+/* Including external dependencies */
+#include "TransactionId.h"
+#include "AuthenticateServerResponse.h"
+#include <constr_SEQUENCE.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/* SGP32-AuthenticateClientRequest */
+typedef struct SGP32_AuthenticateClientRequest {
+       TransactionId_t  transactionId;
+       AuthenticateServerResponse_t     authenticateServerResponse;
+       /*
+        * This type is extensible,
+        * possible extensions are below.
+        */
+
+       /* Context for parsing across buffer boundaries */
+       asn_struct_ctx_t _asn_ctx;
+} SGP32_AuthenticateClientRequest_t;
+
+/* Implementation */
+extern asn_TYPE_descriptor_t asn_DEF_SGP32_AuthenticateClientRequest;
+extern asn_SEQUENCE_specifics_t 
asn_SPC_SGP32_AuthenticateClientRequest_specs_1;
+extern asn_TYPE_member_t asn_MBR_SGP32_AuthenticateClientRequest_1[2];
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* _SGP32_AuthenticateClientRequest_H_ */
+#include <asn_internal.h>
diff --git a/src/ipa/libasn/SGP32-RemoteProfileProvisioningRequest.c 
b/src/ipa/libasn/SGP32-RemoteProfileProvisioningRequest.c
new file mode 100644
index 0000000..2da7ceb
--- /dev/null
+++ b/src/ipa/libasn/SGP32-RemoteProfileProvisioningRequest.c
@@ -0,0 +1,103 @@
+/*
+ * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
+ * From ASN.1 module "SGP32Definitions"
+ *     found in "../../../asn1/SGP32Definitions.asn"
+ *     `asn1c -fcompound-names -no-gen-example`
+ */
+
+#include "SGP32-RemoteProfileProvisioningRequest.h"
+
+static asn_oer_constraints_t 
asn_OER_type_SGP32_RemoteProfileProvisioningRequest_constr_1 CC_NOTUSED = {
+       { 0, 0 },
+       -1};
+static asn_per_constraints_t 
asn_PER_type_SGP32_RemoteProfileProvisioningRequest_constr_1 CC_NOTUSED = {
+       { APC_CONSTRAINED | APC_EXTENSIBLE,  3,  3,  0,  4 }    /* (0..4,...) 
*/,
+       { APC_UNCONSTRAINED,    -1, -1,  0,  0 },
+       0, 0    /* No PER value map */
+};
+static asn_TYPE_member_t asn_MBR_SGP32_RemoteProfileProvisioningRequest_1[] = {
+       { ATF_NOFLAGS, 0, offsetof(struct 
SGP32_RemoteProfileProvisioningRequest, choice.initiateAuthenticationRequest),
+               (ASN_TAG_CLASS_CONTEXT | (57 << 2)),
+               -1,     /* IMPLICIT tag at current level */
+               &asn_DEF_InitiateAuthenticationRequest,
+               0,
+               { 0, 0, 0 },
+               0, 0, /* No default value */
+               "initiateAuthenticationRequest"
+               },
+       { ATF_NOFLAGS, 0, offsetof(struct 
SGP32_RemoteProfileProvisioningRequest, choice.authenticateClientRequest),
+               (ASN_TAG_CLASS_CONTEXT | (59 << 2)),
+               -1,     /* IMPLICIT tag at current level */
+               &asn_DEF_SGP32_AuthenticateClientRequest,
+               0,
+               { 0, 0, 0 },
+               0, 0, /* No default value */
+               "authenticateClientRequest"
+               },
+       { ATF_NOFLAGS, 0, offsetof(struct 
SGP32_RemoteProfileProvisioningRequest, choice.getBoundProfilePackageRequest),
+               (ASN_TAG_CLASS_CONTEXT | (58 << 2)),
+               -1,     /* IMPLICIT tag at current level */
+               &asn_DEF_GetBoundProfilePackageRequest,
+               0,
+               { 0, 0, 0 },
+               0, 0, /* No default value */
+               "getBoundProfilePackageRequest"
+               },
+       { ATF_NOFLAGS, 0, offsetof(struct 
SGP32_RemoteProfileProvisioningRequest, choice.cancelSessionRequestEs9),
+               (ASN_TAG_CLASS_CONTEXT | (65 << 2)),
+               -1,     /* IMPLICIT tag at current level */
+               &asn_DEF_CancelSessionRequestEs9,
+               0,
+               { 0, 0, 0 },
+               0, 0, /* No default value */
+               "cancelSessionRequestEs9"
+               },
+       { ATF_NOFLAGS, 0, offsetof(struct 
SGP32_RemoteProfileProvisioningRequest, choice.handleNotification),
+               (ASN_TAG_CLASS_CONTEXT | (61 << 2)),
+               -1,     /* IMPLICIT tag at current level */
+               &asn_DEF_HandleNotification,
+               0,
+               { 0, 0, 0 },
+               0, 0, /* No default value */
+               "handleNotification"
+               },
+};
+static const unsigned 
asn_MAP_SGP32_RemoteProfileProvisioningRequest_to_canonical_1[] = { 0, 2, 1, 4, 
3 };
+static const unsigned 
asn_MAP_SGP32_RemoteProfileProvisioningRequest_from_canonical_1[] = { 0, 2, 1, 
4, 3 };
+static const ber_tlv_tag_t 
asn_DEF_SGP32_RemoteProfileProvisioningRequest_tags_1[] = {
+       (ASN_TAG_CLASS_CONTEXT | (2 << 2))
+};
+static const asn_TYPE_tag2member_t 
asn_MAP_SGP32_RemoteProfileProvisioningRequest_tag2el_1[] = {
+    { (ASN_TAG_CLASS_CONTEXT | (57 << 2)), 0, 0, 0 }, /* 
initiateAuthenticationRequest */
+    { (ASN_TAG_CLASS_CONTEXT | (58 << 2)), 2, 0, 0 }, /* 
getBoundProfilePackageRequest */
+    { (ASN_TAG_CLASS_CONTEXT | (59 << 2)), 1, 0, 0 }, /* 
authenticateClientRequest */
+    { (ASN_TAG_CLASS_CONTEXT | (61 << 2)), 4, 0, 0 }, /* handleNotification */
+    { (ASN_TAG_CLASS_CONTEXT | (65 << 2)), 3, 0, 0 } /* 
cancelSessionRequestEs9 */
+};
+static asn_CHOICE_specifics_t 
asn_SPC_SGP32_RemoteProfileProvisioningRequest_specs_1 = {
+       sizeof(struct SGP32_RemoteProfileProvisioningRequest),
+       offsetof(struct SGP32_RemoteProfileProvisioningRequest, _asn_ctx),
+       offsetof(struct SGP32_RemoteProfileProvisioningRequest, present),
+       sizeof(((struct SGP32_RemoteProfileProvisioningRequest *)0)->present),
+       asn_MAP_SGP32_RemoteProfileProvisioningRequest_tag2el_1,
+       5,      /* Count of tags in the map */
+       asn_MAP_SGP32_RemoteProfileProvisioningRequest_to_canonical_1,
+       asn_MAP_SGP32_RemoteProfileProvisioningRequest_from_canonical_1,
+       5       /* Extensions start */
+};
+asn_TYPE_descriptor_t asn_DEF_SGP32_RemoteProfileProvisioningRequest = {
+       "SGP32-RemoteProfileProvisioningRequest",
+       "SGP32-RemoteProfileProvisioningRequest",
+       &asn_OP_CHOICE,
+       asn_DEF_SGP32_RemoteProfileProvisioningRequest_tags_1,
+       sizeof(asn_DEF_SGP32_RemoteProfileProvisioningRequest_tags_1)
+               
/sizeof(asn_DEF_SGP32_RemoteProfileProvisioningRequest_tags_1[0]), /* 1 */
+       asn_DEF_SGP32_RemoteProfileProvisioningRequest_tags_1,  /* Same as 
above */
+       sizeof(asn_DEF_SGP32_RemoteProfileProvisioningRequest_tags_1)
+               
/sizeof(asn_DEF_SGP32_RemoteProfileProvisioningRequest_tags_1[0]), /* 1 */
+       { &asn_OER_type_SGP32_RemoteProfileProvisioningRequest_constr_1, 
&asn_PER_type_SGP32_RemoteProfileProvisioningRequest_constr_1, 
CHOICE_constraint },
+       asn_MBR_SGP32_RemoteProfileProvisioningRequest_1,
+       5,      /* Elements count */
+       &asn_SPC_SGP32_RemoteProfileProvisioningRequest_specs_1 /* Additional 
specs */
+};
+
diff --git a/src/ipa/libasn/SGP32-RemoteProfileProvisioningRequest.h 
b/src/ipa/libasn/SGP32-RemoteProfileProvisioningRequest.h
new file mode 100644
index 0000000..d207616
--- /dev/null
+++ b/src/ipa/libasn/SGP32-RemoteProfileProvisioningRequest.h
@@ -0,0 +1,65 @@
+/*
+ * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
+ * From ASN.1 module "SGP32Definitions"
+ *     found in "../../../asn1/SGP32Definitions.asn"
+ *     `asn1c -fcompound-names -no-gen-example`
+ */
+
+#ifndef        _SGP32_RemoteProfileProvisioningRequest_H_
+#define        _SGP32_RemoteProfileProvisioningRequest_H_
+
+
+#include <asn_application.h>
+
+/* Including external dependencies */
+#include "InitiateAuthenticationRequest.h"
+#include "SGP32-AuthenticateClientRequest.h"
+#include "GetBoundProfilePackageRequest.h"
+#include "CancelSessionRequestEs9.h"
+#include "HandleNotification.h"
+#include <constr_CHOICE.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/* Dependencies */
+typedef enum SGP32_RemoteProfileProvisioningRequest_PR {
+       SGP32_RemoteProfileProvisioningRequest_PR_NOTHING,      /* No 
components present */
+       SGP32_RemoteProfileProvisioningRequest_PR_initiateAuthenticationRequest,
+       SGP32_RemoteProfileProvisioningRequest_PR_authenticateClientRequest,
+       SGP32_RemoteProfileProvisioningRequest_PR_getBoundProfilePackageRequest,
+       SGP32_RemoteProfileProvisioningRequest_PR_cancelSessionRequestEs9,
+       SGP32_RemoteProfileProvisioningRequest_PR_handleNotification
+       /* Extensions may appear below */
+
+} SGP32_RemoteProfileProvisioningRequest_PR;
+
+/* SGP32-RemoteProfileProvisioningRequest */
+typedef struct SGP32_RemoteProfileProvisioningRequest {
+       SGP32_RemoteProfileProvisioningRequest_PR present;
+       union SGP32_RemoteProfileProvisioningRequest_u {
+               InitiateAuthenticationRequest_t  initiateAuthenticationRequest;
+               SGP32_AuthenticateClientRequest_t        
authenticateClientRequest;
+               GetBoundProfilePackageRequest_t  getBoundProfilePackageRequest;
+               CancelSessionRequestEs9_t        cancelSessionRequestEs9;
+               HandleNotification_t     handleNotification;
+               /*
+                * This type is extensible,
+                * possible extensions are below.
+                */
+       } choice;
+
+       /* Context for parsing across buffer boundaries */
+       asn_struct_ctx_t _asn_ctx;
+} SGP32_RemoteProfileProvisioningRequest_t;
+
+/* Implementation */
+extern asn_TYPE_descriptor_t asn_DEF_SGP32_RemoteProfileProvisioningRequest;
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* _SGP32_RemoteProfileProvisioningRequest_H_ */
+#include <asn_internal.h>

--
To view, visit https://gerrit.osmocom.org/c/onomondo-ipa/+/43050?usp=email
To unsubscribe, or for help writing mail filters, visit 
https://gerrit.osmocom.org/settings?usp=email

Gerrit-MessageType: newchange
Gerrit-Project: onomondo-ipa
Gerrit-Branch: master
Gerrit-Change-Id: I0003994fb82f8bbccb4de19946bbba975c98ef04
Gerrit-Change-Number: 43050
Gerrit-PatchSet: 1
Gerrit-Owner: jolly <[email protected]>

Reply via email to