Add proper handling for errors returned by odp_packet_copy_from_pkt().

Signed-off-by: Dmitry Eremin-Solenikov <dmitry.ereminsoleni...@linaro.org>
---
 platform/linux-generic/odp_crypto.c | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/platform/linux-generic/odp_crypto.c 
b/platform/linux-generic/odp_crypto.c
index 54b222fd..675b3e25 100644
--- a/platform/linux-generic/odp_crypto.c
+++ b/platform/linux-generic/odp_crypto.c
@@ -886,11 +886,17 @@ odp_crypto_operation(odp_crypto_op_param_t *param,
        }
 
        if (param->pkt != param->out_pkt) {
-               (void)odp_packet_copy_from_pkt(param->out_pkt,
+               int ret;
+
+               ret = odp_packet_copy_from_pkt(param->out_pkt,
                                               0,
                                               param->pkt,
                                               0,
                                               odp_packet_len(param->pkt));
+               if (odp_unlikely(ret < 0)) {
+                       ODP_DBG("Copy failed.\n");
+                       return -1;
+               }
                _odp_packet_copy_md_to_packet(param->pkt, param->out_pkt);
                odp_packet_free(param->pkt);
                param->pkt = ODP_PACKET_INVALID;
-- 
2.11.0

Reply via email to