jolly has submitted this change. ( https://gerrit.osmocom.org/c/onomondo-ipa/+/43302?usp=email )
(
3 is the latest approved patch-set. No files were changed between the latest approved patch-set and the submitted one. )Change subject: Add missing Pepare Download error handling ......................................................................
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(-)
Approvals: laforge: Looks good to me, but someone else must approve Jenkins Builder: Verified dexter: Looks good to me, approved
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)