jolly submitted this change.
3 is the latest approved patch-set.
No files were changed between the latest approved patch-set and the submitted one.
Add missing Pepare Download error handling
If Prepare Download on eUICC fails, an error code ist set. Be sure to
check the error code and trigger session cancellation, if set.
Related: SYS#8101
Change-Id: I6f13a12c494be57d6a6f377567bf38b0235ec4aa
---
M src/ipa/libipa/proc_prfle_dwnld.c
1 file changed, 6 insertions(+), 3 deletions(-)
diff --git a/src/ipa/libipa/proc_prfle_dwnld.c b/src/ipa/libipa/proc_prfle_dwnld.c
index 2c6893e..ac127a7 100644
--- a/src/ipa/libipa/proc_prfle_dwnld.c
+++ b/src/ipa/libipa/proc_prfle_dwnld.c
@@ -46,10 +46,13 @@
prep_dwnld_res = ipa_es10b_prep_dwnld(ctx, &prep_dwnld_req);
if (!prep_dwnld_res)
goto error;
+ if (prep_dwnld_res->prep_dwnld_err)
+ goto error;
- /* The request may still have failed but we do not have to take any action on this since we forward the
- * result as a whole to the eIM. In case of failure it is the responsibility of the eIM to look at error
- * codes and to react accordingly. */
+ /* In case the ES10b PrepareDownload returns a PrepareDownloadResponseError, the procedure is stopped.
+ * In all other cases we will forward the unmodified result to the eIM to continue the procedure normally.
+ * (see also: GSMA SGP.32, section 3.2.3.2, step 16) */
+
get_bnd_prfle_pkg_req.prep_dwnld_res = prep_dwnld_res->res;
get_bnd_prfle_pkg_res = ipa_esipa_get_bnd_prfle_pkg(ctx, &get_bnd_prfle_pkg_req);
if (!get_bnd_prfle_pkg_res)
To view, visit change 43302. To unsubscribe, or for help writing mail filters, visit settings.